Lecture Notes: A quadratic kernel for FVS

advertisement
Lecture Notes: A quadratic kernel for FVS
Neeldhara Misra
STATUTORY WARNING
This document is a draft version.
We will use the expansion lemma to get a quadratic kernel for the Feedback Vertex Set problem:
DFVS
Input:
Parameter:
Question:
(G = (V, E), k) where G is a graph and k is a positive integer.
k
Does there exist a set S containing at most k vertices such that G \ S is acyclic?
Consider the following reduction rules.
1. Delete vertices of degree zero or one.
2. Short-circuit vertices of degree two. That is, if u is a vertex of degree two in G with neighbors v and w, then
delete u and add an edge between v and w.
3. If there are more than two edges between any pair of vertices, then delete all but two edges.
It is easy to show the correctness of the rules above. Now assume that G has maximum degree bounded by s, and
let m denote the number of edges in G. Then notice that if G is a YES-instance of FVS, and reduced with respect
to the rules above, then we have the following:
(3/2)n 6 m 6 2k2 + sk + (n − k − 1)
The left-hand side of the inequality follows from the fact that G is reduced and has minimum degree at least three.
The right hand side-inequality follows from the assumption that G is a YES instance: indeed, let S be a FVS of
size at most k, then the number of edges between S and G \ S is at most sk (because of the assumption that the
maximum degree in G is bounded by s), the number of edges induced on G \ S is at most (n − k − 1) (since G \ S
is a forest), and the number of edges induced on S is at most 2k2 (since |S| 6 k).
Thus we have:
n 6 2(2k2 + sk − k − 1) = O(k2 + sk).
Thus, to obtain a quadratic kernel, all we need to do is suggest and prove a reduction rule along the following
lines:
.
.
.
.Page 1 of 4
.
.
. is something we can do to make the graph smaller.
If a vertex v in G has degree more than O(k), then there
In other words, we need some mechanism that reduces the degree of “high”-degree vertices (or eliminates them
altogether). In fact, we will end up showing that vertices whose degree is more than 2k can be dealt with using a
variant of the expansion lemma. This will imply that in a reduced graph, the maximum degree is bounded by 2k,
implying the quadratic kernel.
To reduce high-degree vertices, we will first need, for every vertex v of degree more than 8k, a set Sv which is a
FVS not containing v. Let S be an 2-approximate FVS. Clearly, if |S| > 2k, then we can stop and return a trivial
NO instance. Otherwise, |S| 6 2k. If v ∈
/ S, then let Sv := S. On the other hand, suppose v ∈ S. Then consider
G \ (S \ {v}). In this graph, all cycles pass through v. Every cycle, in other words, corresponds to a path from N(v)
to N(v). Now consider the following lemma:
Lemma 1 (Gallai). Let A be a subset of vertices of a graph G. If the maximum number of vertex disjoint A-paths is
strictly less than (k + 1), there exists a set of vertices X ⊆ V of size at most 2k intersecting every A-path.
So examine the largest collection of vertex disjoint paths between N(v) and N(v). If there are more than k such
paths, then v is forced in any feedback vertex set of size v, as it is contained in more than k cycles that are vertexdisjoint other than v. (This is called the flower rule.) If this is the case, delete v from G and reduce k by one.
If this is not the case, then there is a cut set Cv of size at most 2k that kills all cycles containing v. So we let
Sv = S \ {v} ∪ Cv . Notice that in all cases, we have maintained that |Sv | 6 4k.
Fix a high-degree vertex v and consider G \ Sv (notice that this is a forest). Notice that v can have at most one
edge into each component of (G \ Sv ) \ {v} (why?). Consider the auxiliary bipartite graph H = (A ∪ B, E), where
A has vertices of Sv , and B has one vertex for every component of (G \ Sv ) \ {v} that contains a neighbor of v.
Notice that |A| 6 4k and |B| > 8k, in particular, |B| > 2|A|.
We now appeal to the general version of the 2-expansion lemma:
Lemma 2. Let m be the size of the maximum matching in a bipartite graph G with vertex bipartition A ⊎ B. If there
are no isolated vertices in B, and |B| > 2|A|, then there exist nonempty vertex sets S ⊆ A, T ⊆ B such that there are
two matchings, both of which saturate S, and whose other endpoints are in T , and the two matchings have no common
endpoints in T . Further, no vertex in T has a neighbor outside S.
Also, the sets S, T can be found in time polynomial in the size of G.
Using the 2-expansion lemma, we find the sets S ⊆ A and T ⊆ B. Delete every edge between v and T , and add
double edges between v and all vertices of S. The rationale is the following. All cycles containing vertices in T
pass through v and vertices in S. Therefore, may kill all these cycles by picking either v or all of T (and the double
edges are used to encode this fact).
Formally, let G∗ be the graph obtained by performing the reduction above. If X is a FVS in G, then if X contains
either v or S, then it is also a FVS in G∗ . If X does not contain either v or all of S, then for every vertex u in S that
it does not contain, it must pick at least one vertex from T (to kill the corresponding cycle passing between v and
u). Consider X∗ obtained as follows:
X∗ := X \ (X ∩ T ) ∪ S.
It is not hard to argue that |X∗ | 6 |X| and that X∗ is a FVS in G∗ .
Now, suppose X∗ is a FVS in G∗ . Then X∗ contains either v or all of S. If X∗ is not a FVS of G, then there is a
cycle passing through v, containing a vertex of T , that avoids S. But this can be shown to be impossible based on
the fact that all neighbors of T are in fact contained in S.
.
.
.
.Page 2 of 4
.
.
.
v
by 2-expansion
lemma:
forest
hitting set that excludes v
v
by 2-expansion
lemma:
forest
hitting set that excludes v
.
.
.
.Page 3 of 4
.
.
.
v
by 2-expansion
lemma:
forest
hitting set that excludes v
v
by 2-expansion
lemma:
forest
hitting set that excludes v
.
.
.
.Page 4 of 4
Download