A Turing Kernelization Dichotomy for Structural Parameterizations of $\mathcal{F}$-Minor-Free Deletion

For a fixed finite family of graphs $\mathcal{F}$, the $\mathcal{F}$-Minor-Free Deletion problem takes as input a graph $G$ and an integer $\ell$ and asks whether there exists a set $X \subseteq V(G)$ of size at most $\ell$ such that $G-X$ is $\mathcal{F}$-minor-free. For $\mathcal{F}=\{K_2\}$ and $\mathcal{F}=\{K_3\}$ this encodes Vertex Cover and Feedback Vertex Set respectively. When parameterized by the feedback vertex number of $G$ these two problems are known to admit a polynomial kernelization. Such a polynomial kernelization also exists for any $\mathcal{F}$ containing a planar graph but no forests. In this paper we show that $\mathcal{F}$-Minor-Free Deletion parameterized by the feedback vertex number is MK[2]-hard for $\mathcal{F} = \{P_3\}$. This rules out the existence of a polynomial kernel assuming $NP \subseteq coNP/poly$, and also gives evidence that the problem does not admit a polynomial Turing kernel. Our hardness result generalizes to any $\mathcal{F}$ not containing a $P_3$-subgraph-free graph, using as parameter the vertex-deletion distance to treewidth $mintw(\mathcal{F})$, where $mintw(\mathcal{F})$ denotes the minimum treewidth of the graphs in $\mathcal{F}$. For the other case, where $\mathcal{F}$ contains a $P_3$-subgraph-free graph, we present a polynomial Turing kernelization. Our results extend to $\mathcal{F}$-Subgraph-Free Deletion.


Introduction
Background and motivation. Kernelization is a framework for the scientific investigation of provably effective preprocessing procedures for NP-hard problems, framed in the language of parameterized complexity. A kernelization for a parameterized problem is a polynomial-time algorithm that transforms any parameterized instance (x, k) into an instance (x ′ , k ′ ) with the same answer, such that |x ′ | and k ′ are both bounded by f (k) for some computable function f . The function f is the size of the kernel. Of particular interest are kernels of polynomial size. Determining which parameterized problems admit kernels of polynomial size has become a rich area of algorithmic research [5,13,23].
A common approach in kernelization [1,12,18] is to take the solution size as the parameter k, with the aim of showing that large inputs that ask for a small solution can be efficiently reduced in size. However, this method does not give any nontrivial guarantees when the solution size is known to be proportional to the total size of the input. For that reason, there is an alternative line of research [7,8,11,16,19,20,21,28] that focuses on parameterizations based on a measure of nontriviality of the instance (cf. [24]). One formal way to capture nontriviality of a graph problem is to measure how many vertex-deletions are needed to reduce the input graph to a graph class in which the problem can be solved in polynomial time. Since many graph problems can be solved in polynomial time on trees and forests, the structural graph parameter feedback vertex number (the minimum number of vertex deletions needed to make the graph acyclic, i.e. a forest) is a relevant measure of nontriviality.
Previous research has shown that for the Vertex Cover problem, there is a polynomial kernel parameterized by the feedback vertex number [19]. This preprocessing algorithm guarantees that inputs which are large with respect to their feedback vertex number, can be efficiently reduced. The Vertex Cover problem is the simplest in a family of so-called minor-free deletion problems. For a fixed finite family of graphs F , an input to F -Minor-Free Deletion consists of a graph G and an integer ℓ. The question is whether there is a set X of at most ℓ vertices in G, such that the graph G − X obtained by removing these vertices does not contain any graph from F as a minor. Motivated by the fact that Vertex Cover and Feedback Vertex Set, arguably the simplest F -Minor-Free Deletion problems, admit polynomial kernels when parameterized by the feedback vertex number, we set out to resolve the following question: Do all F -Minor-Free Deletion problems admit a polynomial kernel when parameterized by the feedback vertex number?
Results. To our initial surprise, we prove that the answer to this question is no. While the parameterization by feedback vertex number admits polynomial kernels for F = {K 2 } [19], for F = {K 3 } [6,18,27], and for any set F containing a planar graph 1 but no forests [12], there are also cases that do not admit polynomial kernels (assuming NP ⊆ coNP/poly). For example, we will show that the case of F consisting of a single graph P 3 that forms a path on three vertices does not admit a polynomial kernel.
Recall that a graph is a forest if and only if its treewidth is one [4]. Hence the feedback vertex number is exactly the minimum number of vertex deletions needed to obtain a graph of treewidth one. Let tw(G) denote the treewidth of graph G, and define min tw(F ) := min H∈F tw(H). Our lower bound also holds for F -Subgraph-Free Deletion, which is the related problem that asks whether there is a vertex set X of size at most k such that G − X contains no graph H ∈ F as a subgraph. We prove the following. Theorem 1. Let F be a finite set of graphs, such that each graph in F has a connected component on at least three vertices. Then F -Minor-Free Deletion and F -Subgraph-Free Deletion do not admit polynomial kernels when parameterized by the vertex-deletion distance to a graph of treewidth min tw(F ), unless NP ⊆ coNP/poly. Theorem 1 implies the claimed lower bound for F = {P 3 }: when F contains an acyclic graph with at least one edge we have min tw(F ) = 1 and therefore the vertex-deletion distance to treewidth min tw(F ) equals the feedback vertex number. The theorem also generalizes earlier results of Cygan et al. [8,Theorem 13], who investigated the problem of losing treewidth by removing vertices.
Theorem 1 is obtained through a polynomial-parameter transformation from the cnf-sat problem parameterized by the number of variables, for which a superpolynomial kernelization lower bound is known [9,14]. This transformation also rules out the existence of polynomial-size Turing kernelizations under a certain hardness assumption. Turing kernelization [10] is a relaxation of the traditional form of kernelization. Intuitively, it investigates whether inputs (x, k) can be solved efficiently using the answers to subproblems of size f (k) which are provided by an oracle, which models an external computation cluster. Formally, a Turing kernelization of size f for a parameterized problem Q is an algorithm that can query an oracle to obtain the answer to any instance of problem Q of size and parameter bounded by f (k) in a single step, and using this power solves any instance (x, k) in time polynomial in |x| + k. The reduction proving Theorem 1 also proves the non-existence of polynomial-size Turing kernelizations, unless all parameterized problems in the complexity class MK [2] defined by Hermelin et al. [17] have polynomial Turing kernels. (cnf-sat with clauses of unbounded length, parameterized by the number of variables, is MK [2]-complete [17, Thm. 1, cf. Thm. 10] and widely believed not to admit polynomial-size Turing kernels.) Motivated by the general form of the lower bound in Theorem 1, we also investigate upper bounds and derive a complexity dichotomy. For any F that does not meet the criterion of Theorem 1, we obtain a polynomial Turing kernel.
Theorem 2. Let F be a finite set of graphs, such that some H ∈ F has no connected component of three or more vertices. Then F -Minor-Free Deletion and F -Subgraph-Free Deletion admit polynomial Turing kernels when parameterized by the vertex-deletion distance to a graph of treewidth min tw(F ).
Note that if some graph H ∈ F has no component of three or more vertices, then H does not contain P 3 as a subgraph and therefore consists of isolated vertices and edges. Hence min tw(F ) = 1 in nontrivial cases, so that the parameter is the feedback vertex number. Our Turing kernelization uses an adaptation of the Tutte-Berge formula to show that the F -minor-free graphs that result after removing a solution, have a small witness structure that can be guessed by a Turing kernelization. After this guessing phase, we can reduce the problem to a Vertex Cover instance parameterized by feedback vertex set, which we can shrink using the existing kernelization [19] and query to the oracle.
Organization. We present preliminaries on graphs and kernelization in Section 2. Section 3 develops the lower bounds on (Turing) kernelization when all graphs in F have a connected component with at least three vertices. In Section 4 we show that in all other cases, a polynomial Turing kernelization exists.

Preliminaries
All graphs we consider in this paper are simple, finite and undirected. We denote the vertex set and edge set of a graph G by V (G) and E(G) respectively. For a vertex set S ⊆ V (G) let G[S] be the subgraph of G induced by S, and let G − S denote the subgraph of G induced by V (G) \ S. For a vertex v we use G − v as shorthand for G − {v}. For a non-negative integer n we use n · G to denote the graph consisting of n disjoint copies of G. Let N G (S) and N G (v) denote the open neighborhood in G of a vertex set S and a vertex v respectively. Let deg G (v) denote the degree of v in G. The subscript may be omitted when G is clear from the context. We use fvs(G) to denote the feedback vertex number of G.
A graph H is a minor of graph G, denoted by H G, if H can be obtained from G by a series of edge contractions, edge deletions, and vertex deletions.
Specifically in the case of a minor-model ϕ and graph G, we use ϕ(G) to denote v∈V (G) ϕ(v). We say a graph H is a component-wise minor of a graph G, denoted as H G, when every connected component of H is a minor of G. For type ∈ {minor, subgraph} and a finite family of graphs F , we define: F -type-Free Deletion Input: A graph G and an integer ℓ. Parameter: vertex-deletion distance to a graph of treewidth min tw(F ). Question: Is there a set X ⊆ V (G) of at most ℓ vertices such that G − X does not contain any H ∈ F as a type?
A vertex v ∈ V (G) is a cut vertex when its removal from G increases the number of connected components. A graph is called biconnected when it is connected and contains no cut vertex. A biconnected component of a graph G is a maximal biconnected subgraph of G. For any integer α, a graph G is called αrobust when |V (G)| ≥ α and no vertex v ∈ V (G) exists such that G − v contains a connected component with less than α − 1 vertices. Proposition 1. Any graph G has a unique maximal α-robust subgraph. Any α-robust subgraph of G is a subgraph of the maximal α-robust subgraph of G.
For any graph G and integer α, let α -prune(G) denote the unique maximal α-robust subgraph of G, which may be empty. We define a leaf-block of a graph G as a biconnected component of G that contains at most one cut vertex of G. The size of a leaf-block H is |V (H)|. The size of the smallest leaf-block of a graph G is denoted as λ(G). Observe that G is α-robust if and only if λ(G) ≥ α.
Due to space restrictions, some proofs are omitted and given in the appendix.

Lower bound
In this section we consider the case where all graphs in F contain a connected component of at least three vertices and give a polynomial-parameter transformation from cnf-sat parameterized by the number of variables. In this construction we make use of the way biconnected components of graphs G and H restrict the options for an H-model to exist in G. We proceed to construct a clause gadget to be used in the polynomialparameter transformation from cnf-sat. Lemma 1. For any connected graph H with at least three vertices there exists a polynomial-time algorithm that, given an integer n ≥ 1, outputs a graph G and a vertex set S ⊆ V (G) of size n such that all of the following are true: Proof. Consider a subgraph L of H such that L is a smallest leaf-block of H. Let R be the graph obtained from H by removing all vertices of L that are not a cut vertex in H. Note that when H is biconnected, L = H and R is an empty graph. We distinguish three distinct vertices a, b, c in H. Vertices c and b are both part of L, where c is the cut vertex (if there is one) and b is any other vertex in L. Finally vertex a is any vertex in H that is not c or b. See Fig. 1(a).
In the construction of G we will combine copies of H such that a, b, and c form cut vertices in G and are part of two different H-subgraphs. Vertices b and c are chosen such that removing either one from a copy of H in G means no vertex from the L-subgraph of this copy of H can be used in a minimal H-model in G.
In the remainder of this proof we use f K→K ′ : V (K) → V (K ′ ) for isomorphic graphs K and K ′ to denote a fixed isomorphism. Take two copies of H, call them H 1 and H 2 . Let R 1 and L 1 denote the subgraphs of H 1 related to R and L, respectively, by the isomorphism between H and H 1 . Similarly let R 2 and L 2 denote the subgraphs of H 2 . Take a copy of L which we call L 3 . Let M be the graph obtained from the disjoint union of H 1 , We show the situation where a is contained in R. Note that a can always be chosen such that it is contained in R when H is not biconnected. Note that the graphs in Fig. 1(b) and 1(c) are isomorphic but drawn differently.
H 2 , and L 3 by identifying the pair f H→H1 (c) and f H→H2 (b) into a single vertex s, and identifying the pair f H→H2 (c) and f L→L3 (c) into a single vertex t. We label f H→H1 (a), f H→H1 (b), and f L→L3 (b) as u, w, and v respectively. This construction is motivated by the fact that the graphs M − {v, s}, M − {u, t}, and M − {w, t} are all H-minor-free, which we will exploit in the formal correctness argument later. We will connect copies of M to each other via the vertices u, v, and w so that, although two vertices need to be removed in every copy of M , one such vertex can always be in two copies of M at the same time.
Now take 2n − 1 copies of M , call them M 1 , . . . , M 2n−1 . For readability we denote f M→Mi as f i for all 1 ≤ i ≤ 2n − 1. For all 1 ≤ i < n we identify f i (w) and f n+i (v), and we identify f n+i (w) and f i+1 (u). Let this graph be G, and let S be the set of vertices f i (v) for all 1 ≤ i ≤ n. Let H 1,i , H 2,i , R 1,i , R 2,i , L 1,i , L 2,i , and L 3,i denote the subgraphs in M i that correspond to the subgraphs H 1 , H 2 , R 1 , R 2 , L 1 , L 2 , and L 3 in M . See Fig. 1(b) and 1(c).
This concludes the description of graph G and set S. It is easily seen that these can be constructed in polynomial time. It remains to verify that all conditions of the lemma statement are met.
(1) Since we connected copies of L and R in a treelike fashion along cut vertices, we did not introduce any new biconnected components. Since the treewidth of a graph is equal to the maximum treewidth over all its biconnected components we know that tw(G) ≤ max{tw(R), tw(L)} = tw(H).
(2) For each 1 ≤ i ≤ n we can distinguish two H-subgraphs in M i , namely H 1,i and L 3,i ∪ R 2,i . This gives us 2n H-subgraphs in G. Note that since all M 1 , . . . , M n are vertex-disjoint, these 2n H-subgraphs are also vertex-disjoint in G. For each n < i ≤ 2n − 1 we distinguish one H-subgraph, namely H 2,i . Note that since H 2,i is vertex-disjoint from all M 1 , . . . , M i−1 , M i+1 , . . . , M 2n−1 we have a total of 2n + n − 1 = 3n − 1 vertex-disjoint H-subgraphs in G. This packing is shown in Fig. 3(a) in the appendix. (3) Alternatively, for each 1 ≤ i ≤ n we can distinguish one H-subgraph in M i , namely H 2,i . For each n < i ≤ 2n − 1 we distinguish two H-subgraphs in M i , namely H 1,i and L 3,i ∪ R 2,i . Again these H-subgraphs are vertex-disjoint, and since they also do not contain any vertices of S, they form a packing of n + 2(n − 1) = 3n − 2 vertex-disjoint H-subgraphs in G − S. See Fig. 3

(b).
(4) Let f j (v) ∈ S be an arbitrary vertex in S, implying 1 ≤ j ≤ n, and take Observe that |X| = 3n−1 and f j (v) ∈ X, so condition 4a of the lemma statement holds. Next, we give a proof sketch for Conditions 4b, 4c, and 4d for the case that a ∈ V (R). A complete proof can be found in the appendix.
To show condition 4b, by Proposition 3 it suffices to show that λ(H) -prune(G− X) is H-minor-free, since H = λ(H) -prune(H). Figure 2 shows a super graph of λ(H) -prune(G − X) in gray. It is easily verified from the figure that every connected component of λ(H) -prune(G − X) contains insufficient vertices to contain H as a minor. It can also be seen that every connected component in λ(H) -prune(G − X) is a subgraph of H, proving condition 4c. Similarly, condition 4d can also directly be seen to hold from the figure.
⊓ ⊔ Using the clause gadget described in Lemma 1 we give a polynomial-parameter transformation for the case where F contains a single, connected graph H. Lemma 2. For any connected graph H with at least three vertices there exists a polynomial-time algorithm that, given a CNF-formula Φ with k variables, outputs a graph G and an integer ℓ such that all of the following are true: Proof. Let x 1 , . . . , x k denote the variables of Φ, let C 1 , . . . , C m denote the sets of literals in each clause of Φ, and let n denote the total number of occurrences of literals in Φ, i.e. n = 1≤j≤m |C j |. Let H 1 , . . . , H k be copies of H. In each copy H i we arbitrarily label one vertex v xi and another v ¬xi . Let G var be the graph obtained from the disjoint union of H 1 , . . . , H k . For each clause C j of Φ we create a graph called W j and vertex set S j ⊆ V (W j ) by invoking Lemma 1 with H and |C j |. Let G be the graph obtained from the disjoint union of W 1 , . . . , W m and G var where we identify the vertices in S j with the appropriate v xi or v ¬xi as follows: For each clause C j let s 1 , . . . , s |Cj| be the vertices in S j in some arbitrary order, and let c 1 , . . . , c |Cj | be the literals in C j , then we identify s i and v ci for This concludes the description of G, ℓ, and S. It is easy to see they can be constructed in polynomial time. Formal arguments for conditions 1, 2, and 3 are given in the appendix. Their proofs rely on the fact that only ℓ − k = 3n − 2m vertex-deletions are available outside G var , and all are required since The construction from Lemma 2 can directly be used to give a polynomialparameter transformation from cnf-sat parameterized by the number of variables. Observe that if G−X is F -minor-free, then G−X is also F -subgraph-free. Similarly, if G − X contains an H-subgraph for all X ⊆ V (G) with |X| ≤ ℓ, then G − X also contains an H-minor. Therefore, for any type ∈ {minor, subgraph} and F consisting of one connected graph on at least three vertices, Lemma 2 gives a polynomial-parameter transformation from cnf-sat parameterized by the number of variables to F -type-Free Deletion parameterized by deletion distance to min tw(F ).
When F contains multiple graphs, each containing a connected component of at least three vertices, it is possible to select a connected component H of one of the graphs in F such that the construction described in Lemma 2 forms the main ingredient for a polynomial-parameter transformation. Selection of H and the remainder of the construction are described in the appendix.
We conclude that a polynomial-parameter transformation exists for all type ∈ {minor, subgraph} and F containing only graphs with a connected component on at least three vertices. Together with the fact that cnf-sat is MK[2]-hard and does not admit a polynomial kernel unless NP ⊆ coNP/poly (cf. [17, Lemma 9]), this proves the following generalization of Theorem 1.

A polynomial Turing kernelization
In this section we consider the case where F contains a graph with no connected component of more than two vertices; or in short F contains a P 3 -subgraph-free graph. This graph consists of isolated vertices and disjoint edges. Let isol(G) denote the set of isolated vertices in a graph G, i.e. isol(G) = {v ∈ V (G) | deg(v) = 0}. We first show that the removal of all isolated vertices from all graphs in F only changes the answer to F -Minor-Free Deletion and F -Subgraph-Free Deletion when the input is of constant size.
Lemma 3. For type ∈ {minor, subgraph} and any family of graphs F containing a P 3 -subgraph-free graph, let After the removal of isolated vertices in F to obtain F ′ , we know that F ′ contains a graph consisting entirely of disjoint edges, i.e. this graph is isomorphic to c·P 2 for some integer c ≥ 0. If c = 0 then F -type-free graphs have constant size and the problem is polynomial-time solvable. We proceed assuming c ≥ 1. Let the matching number of a graph G, denoted as ν(G), be the size of a maximum matching in G. We make the following observation.
We give a characterization of graphs with bounded matching number, based on an adaptation of the Tutte-Berge formula [3]. We use odd(G) to denote the number of connected components in G that consist of an odd number of vertices.
Observe that for any partition U, R, S satisfying the first three conditions, has at least three vertices. To satisfy the fourth condition therefore requires |U | + 1 2 ( 2 3 |R|) ≤ m, which will be a constant in our application.
Let us showcase how Lemma 4 can be used to attack F -Minor-Free Deletion when F consists of a single graph c · P 2 , so that the problem is to find a set X ⊆ G of size at most ℓ such that G − X has matching number less than c. Proof. If an instance (G, ℓ) admits a solution X, then Lemma 4 guarantees that V (G − X) can be partitioned into U, R, S satisfying the four conditions for m = c − 1. We try all relevant options for the sets U and R in the partition, of which there are only polynomially many since |U | + 1 3 |R| ≤ m ∈ O(1). For given sets U, R ⊆ V (G), we can decide whether there is a solution X of size at most ℓ for which U, R, and S := V (G) \ (U ∪ R ∪ X) form the partition witnessing that G − X has matching number at most m, as follows. If some component of G[R] has even size, or less than three vertices, we reject outright.
) > m, we reject. Now, if U and R were guessed correctly, then Lemma 4 guarantees that the only neighbors of R in the graph G − X belong to U . Hence we infer that all vertices of X ′ := N G (R) \ U must belong to the solution X. Note that since S is an independent set in G− X, the solution X forms a vertex cover of On the other hand, for every vertex cover X ′′ of G ′ , the graph G−(X ′ ∪X ′′ ) will have matching number at most m, as witnessed by the partition. Hence the problem of finding a minimum solution X whose corresponding graph G − X has U and R as two of the classes in its witness partition, reduces to finding a minimum vertex cover of the graph G ′ . In terms of the decision problem, this means G has a solution of size at most ℓ with U and R as witness partite sets, if and only if G ′ has a vertex cover of size at most ℓ − |X ′ |. Since fvs(G ′ ) ≤ fvs(G), we can apply the known [19] kernel for Vertex Cover parameterized by the feedback vertex number to reduce (G ′ , ℓ − |X ′ |) to an equivalent instance with O(fvs(G) 3 ) vertices, which is queried to the oracle. If the oracle answers positively to any query, then (G, ℓ) has answer yes; otherwise the answer is no.
⊓ ⊔ We remark that by using the polynomial-time reduction guaranteed by NPcompleteness, the queries to the oracle can be posed as instances of the original F -Minor-Free Deletion problem, rather than Vertex Cover. In the appendix we present our general (non-adaptive) Turing kernelization for the minor-free and subgraph-free deletion problems for all families F containing a P 3 -subgraph-free graph, combining three ingredients. Lemma 3 allows us to focus on families whose graphs have no isolated vertices. The guessing strategy of Theorem 4 is the second ingredient. The final ingredient is required to deal with the fact that a solution subgraph G − X that is c · P 2 -minor-free for some c · P 2 ∈ F , may still have one of the other graphs in F as a forbidden minor. To cope with this issue, we show that if G − X has no matching of size c, but does contain a minor model of some graph in F , then there is such a minor model of constant size. By employing a more expensive (but still polynomially bounded) guessing step, this allows us to complete the Turing kernelization and prove the following theorem.
Theorem 2. Let F be a finite set of graphs, such that some H ∈ F has no connected component of three or more vertices. Then F -Minor-Free Deletion and F -Subgraph-Free Deletion admit polynomial Turing kernels when parameterized by the vertex-deletion distance to a graph of treewidth min tw(F ).

Conclusion
Earlier work [6,18,19,27] has shown that several F -Minor-Free Deletion problems admit polynomial kernelizations when parameterized by the feedback vertex number. In this paper we showed that when F contains a forest and each graph in F has a connected component of at least three vertices, the F -Minor-Free Deletion problem does not admit such a polynomial kernel unless NP ⊆ coNP/poly. This lower bound generalizes to any F where each graph has a connected component of at least three vertices, when we consider the vertex-deletion distance to treewidth min tw(F ) as parameter.
For all other choices of F we showed that a polynomial Turing kernelization exists for F -Minor-Free Deletion parameterized by the feedback vertex number. The size of the Vertex Cover queries generated by the Turing kernelization does not depend on F : the Turing kernelization can be shown to be uniformly polynomial (cf. [15]). However, it remains unknown whether the running time can be made uniformly polynomial, and whether the Turing kernelization can be improved to a traditional kernelization.
Our results leave open the possibility that all F -Minor-Free Deletion problems admit a polynomial kernel when parameterized by the vertex-deletion distance to a linear forest, i.e. a collection of paths. Resolving this question may be an interesting direction for future work.

A Additional preliminaries
A polynomial-parameter transformation from parameterized problem P to parameterized problem Q is a polynomial-time algorithm that, given an instance (x, k) of P, outputs an instance (x ′ , k ′ ) of Q such that all of the following are true:  Before we prove Proposition 2, we prove the following claim:  To prove Proposition 3, we first make the following observation and prove Proposition 5.
Observation 4. For any graph H, which may be an empty graph on vertex set ∅, and integers α ≥ β we have α -prune(β -prune(H)) = α -prune(H). Proof. The construction of G and S is given in the main text, as well as a proof of condition 1, 2, 3, and 4a. The ommited figures for the proof of conditions 2 and 3 are given in Fig. 3(a) and 3(b) respectively. We complete the proof by formally arguing conditions 4b, 4c, and 4d. (4b) We first identify a family Q of vertex sets such that any H-model in G spans at least one vertex set in Q. Let Q be defined as follows: (see Fig. 4) Proof. Let ϕ be an arbitrary H-model in G. We know from Proposition 2 that G[ϕ(L)] contains a biconnected subgraph on at least |L| vertices. Let B be such a biconnected subgraph in G. Subgraph B must be fully contained in a biconnected component of G. Such a biconnected component must contain least |B| ≥ |L| vertices. We do a case distinction over all biconnected components in G with size at least |L|, and prove that if B is contained in them, then ϕ(H) ⊇ Q for some Q ∈ Q.  -L 2,i for any 1 ≤ i ≤ 2n − 1: We know |L 2,i | = |L| so B = L, hence
-There can be biconnected components of size at least |L| in R 2,i for any 1 ≤ i ≤ 2n − 1. Suppose f i (t) ∈ ϕ(H), then ϕ must be an H-model in the graph R 2,i −f i (t). Clearly this is not possible since |V ( , so H G ′ . By Proposition 5 we know that |L| -prune(H) |L| -prune(G ′ ), so H |L| -prune(G ′ ) = R 2,i . This is a contradiction since R 2,i cannot contain H as a minor.
-There can be biconnected components of size at least |L| in R 1,i for any , so H G ′ . By Proposition 5 we know that |L| -prune(H) |L| -prune(G ′ ), so H |L| -prune(G ′ ) = R 1,i . This is a contradiction since R 1,i cannot contain H as a minor.
-There can be biconnected components of size at least |L| in R 1,i for any This concludes the proof of Claim 1.
Note that X contains at least one vertex from each set in Q, hence it follows from Claim 1 that G − X is H-minor-free.
(4c) Consider the graph G ′ := λ(H) -prune(G − X). Every connected component in G ′ must contain a biconnected component with at least λ(H) = |L| vertices. Consider all biconnected components in G − X containing at least |L| vertices, these can only be contained in the following subgraphs of G: R 2,i for any 1 ≤ i ≤ 2n − 1, H 1,i for any 1 ≤ i ≤ n, and R 1,i for any n + 1 ≤ i ≤ 2n − 1. Note that any path from a vertex of one of these subgraphs to a vertex of another contains at least one vertex in X, hence any connected component in G contains vertices of at most one of these subgraphs. Since all other biconnected components in G − X have size less than |L| we know that each connected com-ponent in |L| -prune(G − X) is a subgraph of R 1,i , R 2,i or H 1,i for some i, hence |L| -prune(G − X) H.
(4d) Finally we show that all connected components in G − X that contain a vertex of S have size less than |L|. Since we have f j (v) ∈ X, there is no connected component in G − X containing f j (v). For all i = j we have f i (t) ∈ X so the connected components in G − X containing a vertex from S are L 3,i − f i (t) for all 1 ≤ i < j or j < i ≤ n. These all have size |L| − 1 and contain exactly one vertex of S. ⊓ ⊔

B.4 Proof of Lemma 2
We prove a stronger version of Lemma 2.
Lemma 5. For any connected graph H with at least 3 vertices there exists a polynomial-time algorithm that, given a CNF-formula Φ with k variables, outputs a graph G and integer ℓ such that all of the following are true: Proof. The construction of G, S and ℓ is described in the main text in the proof of Lemma 2.
(1) Clearly |S| = 2k and since every connected components in G − S is a subgraph of H 1 , . . . , H k or W 1 , . . . , W m , we can easily see that tw(G − S) ≤ tw(H).
(2) For all 1 ≤ j ≤ m we know from Lemma 1 that W j −S contains a packing of 3|C j |−2 H-subgraphs. Since W j −S and W i −S are vertex-disjoint for j = i we can combine these packings to obtain a packing in G − S of 1≤j≤m 3|C j | − 2 = 3n − 2m vertex-disjoint H-subgraphs. Note that this packing does not contain vertices from H 1 , . . . , H k , so we can add these to the packing and obtain a packing of k + 3n − 2m = ℓ vertex disjoint H-subgraphs in G.
(3) We now show that if Φ is not satisfiable, then there does not exist a set X ⊆ V (G) of size at most ℓ such that G − X is H-subgraph-free. Suppose there exists such a set X. Since there is a packing of ℓ vertex-disjoint H-subgraphs in G, we know that X contains exactly one vertex from each H-subgraph in the packing. Since v xi and v ¬xi belong to the same subgraph, they cannot both be contained in X. Consider the variable assignment where x i is assigned true if v xi ∈ X or false otherwise. Since we assumed Φ is not satisfiable, there is at least one clause in Φ that evaluates to false with this variable assignment. Let C j denote such a clause. Since C j evaluates to false, all of its literals must be false, so for all variables x i that are not negated in C j we have x i = false and therefore v xi ∈ X. For all negated variables x i in C j we know x i = true meaning v xi ∈ X, so v ¬xi ∈ X. This means that (4) Finally we show that if Φ is satisfiable then there exists a set X ⊆ V (G) of size at most ℓ such that G − X is H-minor-free, λ(H) -prune(G − X) H, and tw(G − X) ≤ tw(H). Since Φ is satisfiable there exists a variable assignment such that each clause contains at least one literal that is true. Consider the set X ′ consisting of all vertices v xi when x i is true and v ¬xi when x i is false. Since every clause contains one literal that is true, we know for each 1 ≤ j ≤ m that W j contains at least one vertex from X ′ . So for each 1 ≤ j ≤ m we have X ′ ∩ S j = ∅. Take and arbitrary vertex v j ∈ X ′ ∩ S j and let X j ⊆ V (W j ) be the vertex set containing v j obtained from condition 4 of Lemma 1. Let X = By condition 4b we have that W j − X j is H-minor-free for all 1 ≤ j ≤ m, so clearly W j −X is also H-minor-free. Consider an arbitrary connected component (by condition 4c), and tw(G ′ ) ≤ tw(W j ) ≤ tw(H). If G ′ is not a connected component of W j −X for any 1 ≤ j ≤ m, then it contains a connected component of H i −X as a subgraph, for some 1 ≤ i ≤ k. When G ′ does not contain any vertices of S we know that G ′ must be a subgraph of H i , so G ′ is H-minor-free, λ(H) -prune(G ′ ) G ′ H, and tw(G ′ ) ≤ tw(H i ) = tw(H).
Suppose on the other hand G ′ does contain a vertex v ∈ S. No connected component of W j −X j contains more than one vertex from S and each connected component of G var contains exactly two vertices of S, one of which is in X.
So v is the only vertex in G ′ that is contained in S. Moreover, since S is the only overlap between the graphs G var and W j for all 1 ≤ j ≤ m, we have that v is a cut vertex in G ′ , such that for some 1 ≤ i ≤ k, each biconnected component of G ′ is a subgraph of H i − X or W j − X for any 1 ≤ j ≤ m. So each of these biconnected components of G ′ has treewidth at most tw(H), hence tw(G ′ ) ≤ tw(H). Also, each biconnected component in G ′ that is a subgraph of W j − X = W j − X j for some 1 ≤ j ≤ m contains a vertex from S and therefore has size at most λ(H) − 1 by condition 4d on the choice of X j . So we have that λ(H) -prune(G ′ ) is a subgraph of H i , hence λ(H) -prune(G ′ ) G ′ H. Additionally since H i contains at least one vertex that is not contained in G ′ we have H λ(H) -prune(G ′ ). Because H = λ(H) -prune(H) we can conclude by Proposition 3 that G ′ is H-minor-free. Since H is connected, and all connected components of G − X are H-minor-free, G − X must also be H-minor-free. We also know for all connected components G ′ of G − X that λ(H) -prune(G ′ ) H, The main text describes how a polynomial-parameter transformation that proves Theorem 1 can be obtained from the following lemma.
Lemma 6. For a set F of graphs, all with a connected component of at least 3 vertices, and a CNF-formula Φ with k variables, we can create in polynomial time a graph G and integer ℓ such that all of the following are true: Proof. Let x 1 , . . . , x k denote the variables of Φ, let C 1 , . . . , C m denote the sets of literals in each clause of Φ and let n denote the total number of literals in Φ, i.e. n = 1≤i≤m |C i |.
Note that as a consequence of Observation 3, there is a graph F ∈ F that is -minimal with tw(F ) = min tw(F ). Let F ↓ ⊆ F denote the set of all -minimal graphs in F that have treewidth min tw(F ). Let H ↑ denote a -maximal component of a graph in F ↓ such that no other -maximal component of a graph in F ↓ has a leaf-block smaller than λ(H ↑ ). Let H ∈ F denote the graph that contains H ↑ as -maximal component, so H is -minimal in F and tw(H) = min tw(F ). Let c ≥ 1 denote the number of connected components in H isomorphic to H ↑ and let Y denote the set of vertices contained in these connected components, so G[Y ] = c · H ↑ .
Note that H ↑ contains at least 3 vertices since otherwise H ↑ would be a minor of at least one connected component of H containing at least 3 vertices, which contradicts H ↑ being a -maximal component of H. We use Lemma 5 to construct a graph G ′ and integer ℓ ′ satisfying conditions 1-4. Let S ′ ⊆ V (G ′ ) be the vertex set obtained from condition 1.
Proof. Property (1) follows directly from the construction and Property (2) follows directly from Property (1). To show Property (3), we show that G 2 is H ↑ -minor-free. Suppose for contradiction that G 2 contains H ↑ as minor then, since H ↑ is connected, there is a connected component H ′ of G 2 that contains H ↑ as minor. H ′ is also a connected component of H. Since H ↑ is a -maximal component of H and H ↑ H ′ we know H ′ H ↑ , and it follows from Observation 2 that H ′ is isomorphic to H ↑ . This is a contradiction since G 2 contains only connected components of H that are not isomorphic to H ↑ .
Having shown that G 2 is H ↑ -minor-free, Property (4) is easily shown by contradiction. Suppose G 2 is not F -minor-free, then there exists a graph B ∈ F such that B G 2 . It follows from G 2 H that B H and since H is -minimal in F we have that H B G 2 , but then H ↑ G 2 . This is a contradiction since G 2 is H ↑ -minor-free.
(2) Suppose Φ is not satisfiable, and take an arbitrary X ⊆ V (G) of size at most ℓ. We prove G − X is not F -subgraph-free by showing that G − X contains an H-subgraph. First note that G 2 − X contains at least one copy of H − Y = H − c · H ↑ , so it remains to show that G 1 − X contains c vertexdisjoint H ↑ -subgraphs. Recall that G 1 is the disjoint union of 2c − 1 copies of G ′ . Consider the subgraphĜ 1 of G 1 consisting of the G ′ -subgraphs in G 1 that contain at most ℓ ′ vertices of X. Since Φ is not satisfiable, G ′ leaves at least one H ↑ -subgraph when ℓ ′ or fewer vertices are removed, so each G ′ -subgraph inĜ 1 leaves at least one H ↑ -subgraph in G 1 − X. WhenĜ 1 contains at least c vertex-disjoint G ′ -subgraphs, we know that there are at least c vertex-disjoint H ↑ -subgraphs in G 1 −X, concluding the proof. Suppose instead thatĜ 1 contains less than c vertex-disjoint G ′ -subgraphs. Let x be the number of G ′ -subgraphs in G 1 − V (Ĝ 1 ). Since G 1 contains 2c − 1 vertex-disjoint G ′ -subgraphs we have x ≥ c. Each of the G ′ -subgraphs in G 1 − V (Ĝ 1 ) contain at least ℓ ′ + 1 vertices of X, soĜ 1 contains at most ℓ − x(ℓ ′ + 1) vertices of X. We also knowĜ 1 contains ℓ ′ ((2c − 1) − x) vertex-disjoint H ↑ -subgraphs since G ′ contains ℓ ′ vertex-disjoint H ↑ -subgraphs and there are (2c − 1) − x vertex-disjoint G ′ -subgraphs inĜ 1 . We conclude that the number of vertex-disjoint H ↑ -subgraphs inĜ 1 − X, and therefore also in G 1 − X, is at least This concludes the proof of condition 2.
(3) When Φ is satisfiable we know that there exists a set X ′ ⊆ V (G ′ ) of size at most ℓ ′ such that G ′ − X ′ is H ↑ -minor-free and λ(H ↑ ) -prune(G ′ − X ′ ) H ↑ . So then there exists a set X ⊆ V (G 1 ) of size at most (2c − 1) · ℓ ′ = ℓ such that G 1 − X is H ↑ -minor-free and λ(H ↑ ) -prune(G 1 − X) H ↑ . Since G 2 is also H ↑minor-free we know that G−X is H ↑ -minor-free and therefore also H-minor-free. We now show that G − X is also F -minor-free.
First observe the following: We now deduce H (by Equation 1 and 2) Suppose G − X is not F -minor-free, then for some H ′ ∈ F we have H ′ G − X. There must exist a graph B ∈ F such that B is -minimal in F and B G − X since if H ′ is -minimal in F then H ′ forms such a graph B, and if on the other hand H ′ is not -minimal in F then there exists a graph H ′′ ∈ F such that H ′′ H ′ and H ′′ is -minimal in F , meaning H ′′ forms such a graph B.
Since B G − X we know by Observation 3 that tw(B) ≤ tw(G − X). Recall that tw(G − X) ≤ min tw(F ) so then B ∈ F ↓ . Because of how we chose H ↑ , we know for all -maximal components Since H is -minimal in F , it follows that H B. By definition of we have H ↑ B G − X. Since H ↑ is connected we conclude H ↑ G − X. This is a contradiction since G − X is H ↑ -minor-free.
⊓ ⊔ C Omitted proofs for Section 4 C.1 Proof of Lemma 3 Lemma 3. For type ∈ {minor, subgraph} and any family of graphs F containing a P 3 -subgraph-free graph, let Proof. We first prove the lemma for type = subgraph. Suppose G is F -subgraphfree but not F ′ -subgraph-free. Now G contains an H ′ -subgraph for some graph Next, we show the lemma holds for type = minor. If some graph G is Fminor-free but not F ′ -minor-free then for some graph H ∈ F we have H ′ G but not H G where H ′ = H − isol(H). Let ϕ be a minimal H ′ -model in G. The graph G has less than |V (isol(H))| vertices that are not in any branch set of ϕ, since otherwise an H-model could be constructed in G by taking the branch sets of ϕ and adding |V (isol(H))| branch sets consisting of a single vertex.
The number of vertices in G that are contained in a branch set of ϕ can also be limited. For an arbitrary vertex v ∈ V (H ′ ) consider a spanning tree T of G[ϕ(v)]. If ϕ(v) contains multiple vertices then for each leaf p of T , there must be a vertex u ∈ N H ′ (v) and q ∈ N G (p) ∩ ϕ(u), such that p is the only vertex from ϕ(v) that is adjacent to ϕ(u); otherwise, removing leaf p from the branch set φ(v) would yield a smaller H ′ -model in G. Hence there can only be max{1, deg H ′ (v)} leaves in T .
To give a bound on the size of each branch set consider a smallest graph D ∈ F ′ that is P 3 -subgraph-free. Take ℓ = |V (D)| and note that D P ℓ . Since we know that G is F ′ -minor-free, G must also be P ℓ -subgraph-free, therefore T is also P ℓ -subgraph-free. Consider an arbitrary vertex r in T . Since T is a tree, there is exactly one path from r to each leaf of T and every vertex of T lies on at least one path from r to a leaf of T . Since there are no more than max{1, deg H ′ (v)} leaves in T there are at most max{1, deg H ′ (v)} such paths, and all these paths contain less than ℓ vertices since T is P ℓ -subgraph-free, hence in total T contains less than deg H ′ (v) · ℓ vertices. We can now give a bound on the total number of vertices in G as follows:  Before we present the proof of Theorem 2, we need one additional lemma. It is motivated by the following consideration. For F containing a P 3 -subgraph-free graph H and no isolated vertices, any F -minor-free graph has matching number less than |E(H)|. Using Lemma 4 the problem of ensuring that a graph has no matching of size m reduces to a number of vertex cover instances by guessing vertex sets U and R, and removing these vertices from the graph together with the neighbors of R and solving vertex cover on the remainder. However, if a graph G has matching number less than |E(H)| it can still contain one of the other graphs in F as minor. Note that the vertex cover number of G is at most 2ν(G) < 2|E(H)|. We proceed to show that if a graph G with a small vertex cover contains an F -minor, then there exists a small subgraph of G that also contains an F -minor. In the following lemmas vc(G) will denote the vertex cover number and ∆(G) will denote the maximum degree of G. Lemma 7. For any type ∈ {minor, subgraph}, let F be a family of graphs, let G be a graph with vertex cover C, and let S = V (G − C). If G contains an F -type, then there exists S ′ ⊆ S such that G[C ∪ S ′ ] contains an F -typeand |S ′ | ≤ max H∈F |V (H)| + |C| · (∆(H) + 1).
Proof. Suppose type = minor, then by Proposition 6 we know that if G contains H ∈ F as a minor, then there is a subgraph G * of G containing an H-minor such that |V (G * )| ≤ |V (H)| + vc(G * ) · (∆(H) + 1). Take On the other hand, when type = subgraph then G contains an H-subgraph for some H ∈ F , and trivially there exists a set X ⊆ V (G) of |V (H)| vertices such that G[X] contains an H-subgraph. Take S ′ = X − C and clearly G[C ∪ S ′ ] contains an H-minor.

⊓ ⊔
Armed with Lemma 7 we now present the proof of the general Turing kernelization.
Theorem 2. Let F be a finite set of graphs, such that some H ∈ F has no connected component of three or more vertices. Then F -Minor-Free Deletion and F -Subgraph-Free Deletion admit polynomial Turing kernels when parameterized by the vertex-deletion distance to a graph of treewidth min tw(F ).
Proof. Fix some type ∈ {minor, subgraph}. First, consider input instances (G, ℓ) for which |V (G)| − ℓ ≤ max F ∈F (|V (F )| + 2|V (F )| 3 ). For these instances there exists a vertex set X of size at most ℓ such that G − X is F -type-free if and only if there exists a vertex set Y of size at most |V (G)| − ℓ ≤ max F ∈F (|V (F )| + 2|V (F )| 3 ) such that G[Y ] is F -type-free. Since there are only polynomially many such vertex sets Y , and for each Y we can check in polynomial time whether G[Y ] contains an F -type [25], we can apply brute force to solve the instance in polynomial time.
So from now on we only consider instances (G, ℓ) for which |V (G)| − ℓ > max F ∈F (|V (F )| + 2|V (F )| 3 ). This means that for any vertex set X of size at most ℓ, the graph G−X contains more than max F ∈F (|V (F )|+2|V (F )| 3 ) vertices. Take F ′ = {F − isol(F ) | F ∈ F } and we obtain from Lemma 3 that if G − X is F -type-free, it is also F ′ -type-free, and clearly if G − X contains an F -type it is also contains an F ′ -type. Hence the F -type-Free Deletion instance (G, ℓ) is equivalent to the F ′ -type-Free Deletion instance (G, ℓ). Note that if F ′ contains an empty graph, the instance is trivially false since every graph contains the empty graph as a subgraph. In the rest of the algorithm we assume each graph in F ′ contains at least one edge.
Since every graph in F contains an edge and at least one graph in F has no component of three vertices or more, we have min tw(F ) = 1. Therefore the parameter, the deletion distance to treewidth min tw(F ), is equal to fvs(G).
We will use the F -type-Free Deletion oracle to solve Vertex Cover instances on induced subgraphs G 0 of G, for which fvs(G 0 ) ≤ fvs(G). This is done by a subroutine called VCoracle. A call to VCoracle(G 0 , ℓ 0 ) decides whether G 0 has a vertex cover of size at most ℓ 0 , by the following process.
Algorithm 1: Solving F ′ -type-Free Deletion instances using VCoracle with F ′ containing a P 3 -subgraph-free graph and no empty graphs or graphs with isolated vertices.
input : A graph G and an integer ℓ output: true if there exists a set X of size at most ℓ such that G − X is F ′ -type-free, or false otherwise.
have an odd size of at least 3 6 and |U | + 1 If not, then the guess was incorrect. If so, then for each type of which fewer than α vertices were guessed to remain behind in G − X, the algorithm collects the remaining vertices of that type in a set Q ′ to be added to the solution X, and a Vertex Cover instance is formulated on the remaining vertices of Q. For types of which α vertices remained behind, no vertices have to be added to Q ′ or the solution X in this step, because using Lemma 7 it can be guaranteed that having more vertices of that type will not lead to an F ′ -type. The algorithm returns true if the formulated instance of Vertex Cover has a solution that yields a set of size at most ℓ when combined with the vertices of N G (R) \ U and Q ′ .
Correctness. When the algorithm returns true, then consider the values of U , R, Q, f , and Q ′ at the time that true is returned. There exists a vertex cover ) \ X is an independent set, even in G. The sets U, R, S, X form a partition of V (G).  Figure 5(a) shows a partition of G given that Algorithm 1 returns true, while Fig. 5(b) shows a partition of G given that G − X is F-type-free. Note that in both cases there can be no edges between R and Q.
See Fig. 5(a) for a visual representation of these sets. We will show that X is a solution to F ′ -type-Free Deletion on G.
Consider an arbitrary vertex v ∈ S. Note that since N G (R) ⊆ U ∪ X we have By definition of X we know Q ′ ⊆ X so v ∈ Q ′ . Then by definition of Q ′ on line 15 we observe the following: Assume for a contradiction that G − X = G[U ∪ R ∪ S] contains an F ′ -type. Since G[S] is independent, U ∪ R is a vertex cover in G − X, and by Lemma 7 there exists a set S ′ ⊆ S with |S ′ | ≤ max  Proof. Observe that S contains no neighbors of R, and since G[S] is independent, we know for all v ∈ S that N G (v) ⊆ U ∪ X and therefore N G−X (v) = N G (v) ∩ U . From Observation 5 it follows for all v ∈ S ′ that v ∈ f (2 U ) or |f (N G (v)∩U )| ≥ α. In the latter case v is a false twin of any vertex u ∈ f (N G (v)∩U ) in G−X since by definition of f we have N G (u)∩U = N G (v)∩U for all vertices u ∈ f (N G (v)∩U ). We have |S ′ | ≤ |f (N G (v)∩U )| for all v ∈ S ′ , so there exists a bijection that maps all vertices v ∈ S ′ to a vertex in u ∈ f (2 U ) that is a false twin of v in G − X. Any two false twins in G − X are interchangeable in G − X, hence G[U ∪ R ∪ S ′ ] is isomorphic to a subgraph of G[U ∪ R ∪ f (2 U )].
Since f is chosen such that G[U ∪R∪f (2 U )] is F ′ -type-free on line 11, Claim 3 leads to a contradiction with the fact that G[U ∪ R ∪ S ′ ] contains an F ′ -type. We conclude that if the algorithm returns true a set X of size ℓ exists such that G − X is F ′ -type-free.
Next, we consider the reverse direction. We show that the algorithm returns true when there exists a set X of size at most ℓ such that G − X is F ′ -type-free. Let m = |E(M )| − 1 where M is the smallest P 3 -subgraph-free graph in F ′ , i.e. M is isomorphic to (m + 1) · P 2 since no graph in F ′ contains isolated vertices. The graph G − X is F ′ -type-free so it is also (m + 1) · P 2 -subgraph-free, and by Observation 1 we know ν(G − X) ≤ m. Therefore by Lemma 4 there exists a partition U ′ , R ′ , S of V (G − X) such that all of the following are true: We define a function f ′ : 2 U → 2 S that maps any Y ⊆ U to an arbitrary subset of g(Y ) of size min{|g(Y )|, α}. We make the following observations: -Since N G (S) ⊆ U ∪ X we have N G (R) ∩ S = ∅ so S = S \ N G (R) = V (G)\ (U ∪R ∪X ∪N G (R)) ⊆ V (G)\ (U ∪R ∪N G (R)) = Q, so f ′ : 2 U → 2 Q .
Hence f ′ satisfies all conditions stated in line 9 of the algorithm, so there is an iteration of the algorithm where f = f ′ . Let Q ′ be the set as defined on line 15 in this iteration. We now show that there exists a vertex cover of size at most Since G[S] is independent, X is a vertex cover in G[X ∪ S] = G − (U ∪ R). Then clearly X \ (N G (R) \ U ) is a vertex cover in G − (U ∪ R ∪ (N G (R) \ U )) and since N G (R) \ U ⊆ X we have |X \ (N G (R) \ U )| ≤ ℓ − |N G (R) \ U |. Similarly consider the set A = (N G (R) \ U ) ∪ Q ′ . Clearly X \ A is a vertex cover in G − (U ∪ R ∪ A) and |X \ A| ≤ ℓ − |A| if A ⊆ X. We will show that A ⊆ X. We know N G (R) \ U ⊆ X so it remains to be shown that Q ′ ⊆ X. Consider an arbitrary v ∈ Q ′ and suppose v ∈ X. Since Q ′ ⊆ Q we obtain from the definition of Q that v ∈ U and v ∈ R, so then v ∈ S. We also note from the definition of Q ′ that |f (N G (v)∩U )| < α. Since f = f ′ we have |f ′ (N G (v)∩U )| < α, and from the definition of f ′ we know that if |f ′ (Y )| < α for some Y ⊆ U , then f ′ (Y ) = g(Y ). By definition of g we have v ∈ g(N G (v) ∩ U ), so then v ∈ f (N G (v) ∩ U ) ⊆ f (2 U ). This is a contradiction since v ∈ f (2 U ) by definition of Q ′ . Now we have shown that X \ A is a vertex cover of size at most ℓ − |A| = ℓ − |(N G (R) \ U ) ∪ Q ′ | in G − (U ∪ R ∪ A) = G[Q] − Q ′ , hence the VCoracle should report that a vertex cover exists on line 8.
Running time and query size. Since F is fixed m and α are constants, the sets U and R are of constant size so there are only polynomially many possibilities for U and R. The function f maps subsets of U to sets of a maximum size of α, so there are only polynomially many possible functions over which to iterate. For each possibility we run VCoracle which takes polynomial time.
The VCoracle subroutine is invoked on induced subgraphs of G which therefore have a feedback vertex number of at most fvs(G). Hence after computing the vertex cover kernel we invoke the oracle for vertex cover instances with O(fvs(G) 3 ) vertices.