In a covering or transversal problem we are given a universe of elements , a family ( could be given implicitly), and an integer , and the objective is to check whether there exists a subset of of size at most which intersects all the elements of . A number of natural problems on graphs are of this form. For instance, consider the classical Feedback Vertex Set (FVS) problem. Here, given a graph and a positive integer , the objective is to decide whether there exists a vertex subset (a feedback vertex set of ) of size at most which intersects all cycles, that is, for which the graph is a forest. Other examples include Odd Cycle Transversal, Directed Feedback Vertex Set and Vertex Cover (VC). These problems have been particularly well studied in parameterized complexity [6, 4, 19, 21, 24, 22].
Recently, a natural generalization of covering problems has attracted a lot of attention from the point of view of parameterized complexity. In this generalization, apart from , and , we are also given a subset of and the objective is to decide whether there is a subset of of size at most that intersects all those sets in which contain an element in . This leads to the subset variant of classic covering problems; typical examples include Subset Feedback Vertex Set (Subset-FVS), Subset Directed Feedback Vertex Set and Subset Odd Cycle Transversal. These three problems have received considerable attention and they have all been shown to be fixed-parameter tractable () with as the parameter [6, 4, 19].
In this paper we study the Subset-FVS problem when the input is a split graph or, more generally, a chordal graph. The Subset-FVS problem was introduced by Even et al., and generalizes several well-studied problems like FVS, VC, and Multiway Cut . The question whether the Subset-FVS problem is fixed parameter tractable () when parameterized by the solution size was posed independently by Kawarabayashi and the third author in . Cygan et al.  and Kawarabayashi and Kobayashi  independently answered this question positively in . Wahlström  gave the first parameterized algorithm where the dependence on is . Lokshtanov et al.  presented a different algorithm which has linear dependence on the input size. On the flip side, Fomin et al. presented a parameter preserving reduction from VC to Subset-FVS [10, Theorem ], thus ruling out the existence of an algorithm with sub-exponential dependence on under the Exponential-Time Hypothesis. Most recently, Hols and Kratsch  used matroid-based tools to show that Subset-FVS has a randomized polynomial kernelization with vertices.
All the results that we described above hold for arbitrary input graphs. The Subset-FVS problem has also been studied with the input restricted to various families of graphs; in particular, to chordal graphs and split graphs. Recall that222See section 2 for formal definitions. (i) a graph is chordal if it does not contain induced cycles of length four or larger, (ii) a split graph is one whose vertex set can be partitioned into a clique and an independent set, and (iii) every split graph is chordal. The problem remains -Complete even on split graphs . Golovach et al. designed the first exact exponential time algorithm for Subset-FVS on chordal graphs in their pioneering work ; this algorithm runs in time on a chordal graph with vertices. Chitnis et al. improved this bound to .
In this article we study Subset-FVS on chordal and split graphs from the point of view of parameterized complexity. For a given set of vertices , a -cycle is a cycle which contains at least one vertex from . Formally, we study the following problem on chordal graphs:
Subset FVS in Chordal Graphs Parameter: Input: A chordal graph , a set of terminal vertices , and an integer Question: Does there exist a set of at most vertices of such that the subgraph contains no -cycle?
When the input graph in Subset FVS in Chordal Graphs is a split graph then we call it the Subset FVS in Split Graphs problem.
It is a simple observation (see 1) that in order to intersect every -cycle in a chordal graph it is sufficient—and necessary—to intersect all -triangles in the graph. This yields a parameter-preserving reduction from Subset FVS in Split Graphs to 3-Hitting Set (3-HS). This, in turn, implies the existence of a polynomial kernel for Subset FVS in Split Graphs, of size , and an algorithm which solves the problem in time . Note that when we formulate Subset FVS in Split Graphs in terms of -HS in this manner, we lose a lot of structural information about the input graph. It is natural to suspect that this lost information could have been exploited to obtain better algorithms and smaller kernels for the original problem. This was most recently vindicated by the work of Le et al.  who designed kernels with a sub-quadratic number of vertices for several implicit -HS problems on graphs, improving on long-standing quadratic upper bounds in each case. Our work is in the same spirit as that of Le et al.: we obtain improved results for two implicit 3-Hitting Set problems—namely: intersecting all -triangles in chordal (respectively, split) graphs—by a careful analysis of structural properties of the input graph.
Our results and methods: Our main result is a quadratic-size kernel for Subset FVS in Split Graphs, with a linear-sized “clique side”; more precisely:
Theorem 1.1 ()
There is a polynomial-time algorithm which, given an instance of Subset FVS in Split Graphs, returns an instance of Subset FVS in Split Graphs such that (i) is a YES instance if and only if is a YES instance, and (ii) , , and . Moreover, the split graph has a split partition with .
Our kernelization algorithm for Subset FVS in Split Graphs involves non-trivial applications of the Expansion Lemma, a combinatorial tool which was central to the design of the quadratic kernel for Undirected FVS . Given an input graph and a split partition of , where is a clique and is an independent set, we first reduce the input to an instance where the terminal set is exactly the independent set from a split partition of . Then we show that if a (non-terminal) vertex has at least neighbours in then we can either include in a solution, or safely delete an edge incident with ; we use the Expansion Lemma to identify such an irrelevant edge incident to . This leads to an instance where each has at most neighbours in . We now apply the Expansion Lemma to this instance to bound the number of vertices in by ; this gives the bound of on .
We complement this upper bound with a matching lower bound on the bit size of any kernel for this problem:
Theorem 1.2 ()
For any , the Subset FVS in Split Graphs problem parameterized by the solution size does not admit a polynomial kernel of size bits, unless .
Our third result is an improved algorithm for Subset FVS in Chordal Graphs which, in addition, runs in time linear in the size of the input graph:
Theorem 1.3 ()
Subset FVS in Chordal Graphs admits an algorithm with running time . Here are the number of vertices and the edges of the input graph , respectively.
We obtain this improvement by designing a branching strategy based on a careful analysis of the clique-tree structure of the input chordal graph.
Organization of the rest of the paper: We state various definitions and preliminary results in section 2. We prove the quadratic kernel upper bound for Subset FVS in Split Graphs in section 3 and the corresponding lower bound in section 4. We derive the algorithm for Subset FVS in Chordal Graphs in section 5, and conclude in section 6.
All our graphs are finite, undirected, and simple. We mostly conform to the graph-theoretic notation and terminology from the book of Diestel . We describe the few differences from Diestel and some notation and terms of our own, and reproduce some definitions from Diestel for ease of reference. Let be a graph. For a vertex in we use to denote the open neighbourhood of , and to denote its closed neighbourhood . We drop the subscript when there is no ambiguity. The length of a path or cycle is the number of edges in the path (or cycle). An edge is a bridge if it is not contained in any cycle of . An edge in is a chord of a cycle if (i) both the endvertices of are in , and (ii) edge is not in . An induced cycle is a cycle which has no chord. A vertex of degree exactly one in a tree is a leaf of the tree, unless is the designated root vertex (if one exists) of . A matching in is a set of edges no two of which share an endvertex. The endvertices of the edges in are saturated by . is between vertex sets if and each edge in has one end each in and , respectively. A maximum matching of is a matching of the largest size in .
Let and be a vertex subset and an edge subset of , respectively. We use (i) to denote the subgraph of induced by , (ii) to denote the graph , and (ii) to denote the graph . A triangle is a cycle of length three. Set is a feedback vertex set (FVS) of if is a forest. A path (or cycle ) passes through if (or ) contains a vertex from . Let be a specified set of vertices called terminal vertices (or terminals). A -cycle (-triangle) is a cycle (triangle) which passes through . Graph is a -forest if it contains no -cycle. Vertex set is a subset feedback vertex set (subset-FVS) of with respect to terminal set if the graph is a -forest. Note that may contain vertices from , and that need not be a forest. Set is a subset triangle hitting set (subset-THS) of with respect to terminal set if contains no -triangle. More generally, we say that a vertex hits a cycle if contains . Vertex set hits a set of cycles if for each cycle there is a vertex which hits . We elide the phrase “with respect to ” when there is no ambiguity.
is the complete graph on vertices. A subset of vertices of graph is a clique if its vertices are all pairwise adjacent, and is an independent set if they are all pairwise non-adjacent. A clique in is a maximal clique if is not a proper subset of some clique in . A vertex of is a simplicial vertex (or is simplicial) in if is a clique. In this case we say that is a simplicial clique in and that is a simplicial vertex of .
Fact 1 (, Lemma 3)
Vertex is simplicial in graph if and only belongs to precisely one maximal clique of , namely the set .
2.2 Chordal Graphs and Clique Trees
A graph is chordal (or triangulated) if every induced cycle in is a triangle; equivalently, if every cycle of length at least four has a chord. If is a chordal graph then : (i) every induced subgraph of is chordal; (ii) has a simplicial vertex, and if is not a complete graph then has two non-adjacent simplicial vertices. Whether a graph is chordal or not can be found in time , and if is chordal then a simplicial vertex of can be found within the same time bound .
The number of maximal cliques in a chordal graph is at most and they can all be enumerated in time ([15, Theorem 4.17]). Let be the set of maximal cliques of a chordal graph . A clique tree333We refer readers to monograph of J. Blair and B. Peyton for an introduction to clique trees . of is a graph with the following properties:
The vertex set of is the set .
is a tree.
(Clique Intersection Property) Let be any two maximal cliques of , and let . If is a maximal clique of which lies on the path from to on , then it is the case that .
A connected graph is chordal if and only if it has a clique tree [2, Theorem 3.1].
A clique tree of a chordal graph can be computed in time [13, Theorem 12].
Let be a connected chordal graph and a clique tree of . For each vertex of , the set of all nodes of which contain form a connected subgraph (a subtree) of [2, Theorem 3.2].
We also need
Let be a connected graph with at least two vertices and let be a clique tree of . If is a leaf node of then is a simplicial clique in .
Let be a leaf node of and let be the unique neighbour of in . Since is a maximal clique we have that . Pick a vertex . Since is a clique we have that .
If there is a vertex then let be a maximal clique which contains the set . Then is distinct from and . Now (i) , (ii) , and (iii) is a maximal clique which lies on the path from to in . This contradicts the Clique Intersection Property of . Hence we get that as well. Thus is a simplicial clique in .
2.3 Split Graphs
A graph is a split graph if its vertex set can be partitioned into a clique and an independent set in . Such a partition is called a split partition of . We use to denote the split partitions of the graphs. We refer to vertex sets and as the clique side and independent side, respectively, of graph . We say that an edge in is highlighted if there is a vertex in such that the vertices induce a triangle in . Every split graph is a chordal graph as well . Given a graph as its adjacency list we can (i) check if is a split graph, and if it is, (ii) find a partition into a clique and independent set , both in time .
If a chordal graph contains a cycle then it contains an induced cycle, and every induced cycle in is—by definition—a triangle. Conversely, if contains a triangle then it trivially contains a cycle. Thus a chordal graph contains a cycle if and only if it contains a triangle. This carries over to subset feedback vertex sets in chordal (and therefore split) graphs in a natural way.
Let be a chordal graph and let be a specified set of terminal vertices. A vertex subset is a subset-FVS of with respect to if and only if the graph contains no -triangles.
If is a subset-FVS of with respect to then—by definition—the graph contains no -triangles. For the reverse direction, let be a subset-THS of with respect to , and let . Since is an induced subgraph of we get that is chordal. Assume for the sake of contradiction that there is a -cycle in . Let be a -cycle in of the smallest length . Then and we get that has a chord. Now this chord is part of two cycles such that (i) each of has length strictly smaller than , and (ii) the union of the vertex sets of and is the vertex set of . Thus at least one of , say , is a -cycle of length strictly smaller than , a contradiction.
We use to denote an instance of Subset FVS in Chordal Graphs or Subset FVS in Split Graphs where is the input graph, is the specified set of terminals, and is the parameter.
An instance of Subset FVS in Chordal Graphs (or of Subset FVS in Split Graphs) is a YES instance if and only if there is a vertex subset of size at most such that is a -THS of .
If is a chordal graph and is a bridge in then the graph is also chordal. If is a split graph with at least three vertices on the clique side and is an edge with exactly one end in the clique side of then the graph is also split. If is a bridge in such a split graph then the graph is also split.
Let be a chordal graph. If an edge is a chord of some cycle then lies in a cycle whose vertex set is a strict subset of the vertex set of . So we get, since is a bridge in , that is not a chord of any cycle in .
Suppose is not chordal. Then it contains an induced cycle of length four or more. Since edge is not present in graph it is not present in cycle either. Thus cycle is present in graph . Since is not a chord of cycle we get that is an induced cycle of length at least four in , which contradicts the chordality of .
Now let be a split graph with at least three vertices on its clique side, and let be a split partition of . Since every edge in is part of a cycle, any bridge of has one end in each of . The sets and remain a clique and an independent set, respectively, once we delete any such edge . Hence is a split graph.
Since chordal graphs and split graphs are (respectively) closed under taking induced subgraphs  we get
Let be a graph obtained from a graph by repeatedly deleting vertices and/or bridges of the remaining graph at each stage.
If is a chordal graph then so is .
If is a split graph and at least three of the clique vertices of remain in then is a split graph.
Let be an instance of Subset FVS in Chordal Graphs. A subset of vertices of is a solution of this instance if is a -FVS (equivalently, a -THS) of .
2.4 Parameterized Algorithms and Kernelization
We give a quick overview of the main concepts from parameterized complexity relevant to our work; we refer interested readers to  for a detailed exposition on the subject. An instance of a parameterized problem is of the form where is an instance of a (classical) decision problem—whose answer is one of YES/NO—and is the parameter; is defined to be a YES (respectively, NO) instance if is a YES (respectively, NO) instance. A parameterized problem is said to be fixed parameter tractable () if there exists an algorithm , a computable function , and a constant such that, given any instance of the parameterized problem, the algorithm correctly decides whether is an YES instance or not in time . The algorithm is an algorithm; if holds then is a linear algorithm. Instances and of a parameterized problem are equivalent if is a YES instance if and only if is a YES instance. A kernel for a parameterized problem is an algorithm that, given an instance of the problem, works in time and returns an equivalent instance of the same problem. We require that is upper bounded by some computable function of . If there exists a computable function such that size of an output obtained by algorithm for is at most , we say that problem admits a kernel of size .
Let be a triangle on the vertex set . Then and are constant-size trivial YES and NO instances, respectively, of both Subset FVS in Split Graphs and Subset FVS in Chordal Graphs. Our algorithms make use of reduction rules which transform one instance of a problem to another instance of the same problem. We use to represent the instance given as input to each reduction rule, and to represent the (modified) instance output by the rule. We say that a reduction rule is safe if for every input instance the rule outputs an equivalent instance . We update to get the input instance for further processing. We say that an instance is reduced with respect to a reduction rule RR if none of the conditions of rule RR apply to . Equivalently: instance is reduced with respect to reduction rule RR if, when given the instance as input, rule RR produces as output an instance which is identical to . We say that a reduction rule RR applies to an instance if is not reduced with respect to RR.
2.5 Expansion Lemmas
Let be a positive integer and a bipartite graph with vertex bipartition . A set of edges is called a -expansion of into if (i) every vertex of is incident with exactly edges of , and (ii) the number of vertices in which are incident with at least one edge in is exactly . We say that saturates the endvertices of its edges. Note that the set may contain vertices which are not saturated by . We need the following generalizations of Hall’s Matching Theorem known as expansion lemmas:
Lemma 3 ( Lemma 2.18)
Let be a positive integer and be a bipartite graph with vertex bipartition such that and there are no isolated vertices in . Then there exist nonempty vertex sets and such that (i) has a -expansion into , and (ii) no vertex in has a neighbour outside . Furthermore two such sets and can be found in time polynomial in the size of .
Lemma 4 ()
Let be a positive integer and be a bipartite graph with vertex bipartition such that , where is the size of a maximum matching in , and there are no isolated vertices in . Then there exist nonempty vertex sets and such that (i) has a -expansion into , and (ii) no vertex in has a neighbour outside . Furthermore two such sets and can be found in time polynomial in the size of .
We need sets of 4 with an additional property:
Let be sets of the kind guaranteed to exist by 4, and let be a -expansion from into . If then there must exist a vertex which is not saturated by . We can find such a vertex by, for instance, deleting each vertex in turn and testing if the resulting graph has -expansion from into . Thus it is enough to show that we can find, in polynomial time, such a pair for which holds. We give a proof by algorithm. We start by setting . It holds vacuously that (i) there is a -expansion from into , and (ii) no vertex in has a neighbour outside , and trivially that .
Find sets and as guaranteed to exist by 4. Let be a -expansion from into . If then return . Otherwise, if there is a vertex which has no neighbour in then return .
At this point we have and . From above we get that there is -expansion, say , from into . Since we get that is a -expansion from into . Set . Then (i) there is a -expansion from into , (ii) no vertex in has a neighbour outside , and (iii) .
Let . Consider the subgraph and its vertex bipartition . Since and the vertices in are saturated by a -expansion from into we get that the subgraph contains a matching of size . Since the subgraph of contains none of the vertices saturated by this matching we get that the size of a maximum matching in satisfies .
Since every vertex in has at least one neighbour in (otherwise we would have returned in step (1)) we get that there are no isolated vertices in the set in graph . Since and we have that . Thus graph and its vertex bipartition satisfy the premises of 4. Set and go to step (1).
Correctness. Note that before step (1) is executed it is always the case that (i) there is a -expansion from into , (ii) no vertex in has a neighbour outside , and (iii) . So we get that if the algorithm terminates (which it does only at step (1)) it returns a correct pair of vertex subsets.
The graph from the premise of 4 has a vertex bipartition with , and the sets in steps (2) and (3) satisfy and . So the sets of step (3) satisfy . Thus the graph computed in step (3) has strictly fewer vertices than the graph passed in to the previous step (1). Since we update before looping back to step (1), we get that the algorithm terminates in polnomially many steps.
3 Kernel Bounds for Subset FVS in Split Graphs
In this section we show that Subset FVS in Split Graphs has a quadratic-size kernel with a linear number of vertices on the clique side.
Our algorithm works as follows. We first reduce the input to an instance where the terminal set is exactly the independent set from a split partition of . Then we show that if a (non-terminal) vertex has at least neighbours in then we can include in a solution or safely delete one edge incident with ; this leads to an instance where each has at most neighbours in . We apply the expansion lemma (4) to this instance to bound the number of vertices in by ; this gives the bound of on the number of vertices in .
We now describe the reduction rules. Recall that we use and to represent the input and output instances of a reduction rule, respectively. We always apply the first rule—in the order in which they are described below—which applies to an instance. Thus we apply a rule to an instance only if the instance is reduced with respect to all previously specified reduction rules.
Recall that a split graph may have more than one split partition. To keep our presentation short we need to be able to refer to one split partition which “survives” throughout the application of these rules. Towards this we fix an arbitrary split partition of the original input graph. Whenever we say “the split partition of graph
” we mean the ordered pair. The only ways in which our reduction rules modify the graph are: (i) delete a vertex, or (ii) delete an edge of the form . So remains a split partition of the “current” graph at each stage during the algorithm.
Our first reduction rule deals with some easy instances.
Reduction Rule 1
Recall that is the split partition of graph . Apply the first condition which matches :
If then output and stop.
If , or if and there is a -triangle in , then output and stop.
If there is no -triangle in then output and stop.
If then output and stop.
If and there is an edge in which is not highlighted then output and stop.
If is reduced with respect to 1 then the clique side of has size at least three.
The second and third parts of the rule ensure that . The fourth part now implies .
1 is safe.
We analyze each part separately.
If then there are no -cycles in . So is (vacuously) a YES instance, as is .
If then—since there does not exist a vertex subset of negative size— is a NO instance. If the second part of this condition holds then is clearly a NO instance. Thus in both cases is a NO instance, as is .
This condition applies to only if the previous one does not apply. Thus and so is a YES instance, as is .
Let be an arbitrary -sized set of vertices on the clique side. Deleting from gives a graph with at most one vertex on the clique side. Since there are no edges among vertices on the independent side in we get that has no triangles; is a solution of of size at most . Thus is a YES instance, as is .
Let . Then . Since vertices have no common neighbour on the independent side of , we get that contains no triangles. Thus is a YES instance, as is .
Each remaining rule deletes a vertex or an edge from the graph. We use the next two observations in our proofs of safeness.
Let be a YES instance of Subset FVS in Split Graphs which is reduced with respect to 1.
Let be a graph obtained from by deleting a vertex , and let . Then is a YES instance. If has a solution of size at most with then is a YES instance.
Let be a graph obtained from by deleting an edge which has exactly one of its endvertices in the clique side of . Then is a YES instance.
First we consider the case . From 2 we get that graph is a split graph. Since we get that both and are instances of Subset FVS in Split Graphs.
Suppose is a YES instance, and let be a solution of of size at most . Then the graph is a split graph with no -triangles. We consider two cases:
If then . Hence is a -THS of the split graph , of size at most . Thus is a YES instance, and so is .
If then the graph is obtained by deleting vertex from . Thus is a split graph. Since deleting a vertex cannot create a new -triangle, we get that has no -triangles. Thus is an -THS of of size at most , and is a YES instance.
Now we consider the case where edge has one end, say , in the clique side of and the other end in the independent side . From 2 we get , and then from 2 we get that is a split graph. Once again, since we get that both and are instances of Subset FVS in Split Graphs.
Suppose is a YES instance, and let be a solution of of size at most . Then graph has no -cycle. Since deleting an edge cannot introduce a new cycle, we get that the graph has no -cycle either. Thus is a solution of of size at most , and is a YES instance.
Let be a YES instance of Subset FVS in Split Graphs and let be a -THS of of size at most . Let be a split graph which can be constructed from graph by adding a vertex and zero or more edges each incident with the new vertex . Then both and are YES instances of Subset FVS in Split Graphs, and the set is a solution of size at most for both these instances.
Since is a split graph both and are instances of Subset FVS in Split Graphs. Since is a -FVS of of size at most we have that graph has no -triangle. Let . Then and . Thus graph has no -triangle. Since we get that has no triangle which contains vertex . Thus has no -triangle either. Hence both and are YES instances of Subset FVS in Split Graphs and the set is a solution of size at most for both these instances.
Reduction Rule 2
If there is a vertex of degree zero in then delete from to get graph . Set . The reduced instance is .
Since adding or deleting vertices of degree zero does not create or destroy cycles of any kind, we have
2 is safe.
Reduction Rule 3
If there is a non-terminal vertex in which is not adjacent to a terminal vertex, then delete from to get graph . Set . The reduced instance is .
3 is safe.
Let be an instance given as input to 3 and let be the corresponding instance output by the rule. Then where vertex is as defined by the rule, and . From 3 we get that if is a YES instance then so is .
Now suppose is a YES instance, and let be a solution of of size at most . We claim that is a solution of as well. Suppose not; then graph has a -cycle. Since and does not contain any -cycle we get that every -cycle in must contain vertex .
Let be a shortest -cycle of , and let be a terminal vertex in . Since—by assumption—vertices and are not adjacent we get that contains at least four vertices. Since is a cycle of length at least four in the chordal graph we get that has a chord. This chord is part of two cycles such that (i) each of has length strictly smaller than , and (ii) the union of the vertex sets of and is the vertex set of . At least one of the two cycles contains the terminal ; assume that is in . If vertex is also in then is a -cycle of which is shorter than ; this contradicts our assumption about . If is not in then is a -cycle—and hence -cycle—in , which contradicts our assumption that is a solution of .
Thus is a solution of of size at most , and is a YES instance.
Reduction Rule 4
If there is a bridge in then delete edge (not its endvertices) to get graph . Set . The reduced instance is .
4 is safe.
Let be an instance given as input to 4 and let be the corresponding instance output by the rule. Then where is a bridge in , .
From 3 we get that if is a YES instance then so is .
Now suppose is a YES instance, and let be a solution of of size at most . Observe that since (i) is a bridge in , and (ii) deleting vertices does not introduce new cycles, edge , if it exists in graph , is a bridge in as well. So cannot be in any cycle in . Hence if graph has a -cycle then does not contain edge , which implies that is present in the graph as well. But this contradicts our assumption that is a solution of . Thus there cannot be a -cycle in . So is a solution of of size at most , and is a YES instance.
Each vertex in has degree at least two.
Every vertex in is part of some -triangle.
If is a YES instance then every terminal vertex on the clique side of is present in every solution of of size at most .
We prove each claim in turn. Let be the split partition of .
From 2 we get . Consider a vertex . Since is reduced with respect to 3 we get that is adjacent to at least one terminal vertex . If then is part of a -triangle which contains . If then let be another neighbour of in . Such a neighbour exists because has degree at least two and every neighbour of is in . Since is an edge in we get that is a -triangle which contains vertex .
Now suppose is a vertex in . Then has at least two neighbours for which is an edge. If is a terminal then it belongs to the -triangle . If is not a terminal then—since is reduced with respect to 3—we get that is adjacent to at least one terminal vertex, which has to be in . Set to be such a terminal neighbour of . Then belongs to the -triangle .
Suppose not. Let be a solution of of size at most , and let be a terminal vertex on the clique side of which is not in . If there are two other vertices on the clique side which are also not in then is a -triangle in , a contradiction. So we have that . Now since is reduced with respect to 1 we have—part (4) of the rule—that , from which we get . Thus . Substituting these in the identity we get which implies and .
Thus we get that is of the form for some vertex . Now from part (5) of 1 we get that vertices and have a common neighbour, say , in set . So the -triangle is present in graph , a contradiction. Hence must be in .
It is thus safe to pick a terminal vertex from the clique side into the solution.
Reduction Rule 5
If there is a terminal vertex on the clique side then delete to get graph . Set . The reduced instance is .
5 is safe.
If is a YES instance then we get from 4 that is a YES instance as well.
Since is reduced with respect to 5 we have that no vertex on the clique side of is a terminal. Thus . Suppose there is a non-terminal vertex . From part (2) of 9 we get that must be adjacent to some terminal vertex. This cannot happen because every neighbour of is in and none of them is a terminal. So every vertex in is a terminal. Thus , and hence .
Every vertex in is a non-terminal, and every non-terminal is adjacent to some terminal vertex. So every vertex in must have a neighbour in .
Our kernelization algorithm can be thought of having two main parts: (i) bounding the number of vertices on the clique side by , and (ii) bounding the number of independent set vertices in the neighbourhood of each clique-side vertex by . We now describe the second part. We need some more notation. For a vertex on the clique side of graph we use (i) for the set of neighbours of on the independent side , and (ii) to denote the set of all other clique vertices—than —which are adjacent to some vertex in ; that is, . Informally, is the second neighbourhood of “going via ”. We use to denote the bipartite graph obtained from by deleting every edge with both its endvertices in . Equivalently: Let be the (bipartite) graph obtained by deleting, from , every edge which has both its ends on the clique side of . Then . We call the bipartite graph corresponding to vertex .
Bounding the Independent-side Neighbourhood of a Vertex on the Clique Side
The first reduction rule of this part applies when there is a vertex which is part of more than -triangles and these -triangles are pairwise vertex-disjoint apart from the one common vertex . In this case any solution of size at most must contain , so we delete and reduce .
Let be a vertex on the clique side of graph such that the bipartite graph contains a matching of size at least . Then every -FVS of of size at most contains .
Suppose not; let be a -FVS of of size at most such that