Abstract
The goal of this paper is to open up a new research direction aimed at understanding the power of preprocessing in speeding up algorithms that solve NP-hard problems exactly. We explore this direction for the classic Feedback Vertex Set problem on undirected graphs, leading to a new type of graph structure called antler decomposition, which identifies vertices that belong to an optimal solution. It is an analogue of the celebrated crown decomposition which has been used for Vertex Cover. We develop the graph structure theory around such decompositions and develop fixed-parameter tractable algorithms to find them, parameterized by the number of vertices for which they witness presence in an optimal solution. This reduces the search space of fixed-parameter tractable algorithms parameterized by the solution size that solve Feedback Vertex Set.
This project has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (grant agreement No. 803421, ReduceSearch).
You have full access to this open access chapter, Download conference paper PDF
Similar content being viewed by others
Keywords
1 Introduction
The goal of this paper is to open up a new research direction aimed at understanding the power of preprocessing in speeding up algorithms that solve NP-hard problems exactly [25, 30]. In a nutshell, this new direction can be summarized as: how can an algorithm identify part of an optimal solution in an efficient preprocessing phase? We explore this direction for the classic [36] Feedback Vertex Set problem on undirected graphs, leading to a new graph structure called antler which reveals vertices belonging to an optimal feedback vertex set.
We start by motivating the need for a new direction in the theoretical analysis of preprocessing. The use of preprocessing, often via the repeated application of reduction rules, has long been known [3, 4, 41] to speed up the solution of algorithmic tasks in practice. The introduction of the framework of parameterized complexity [20] in the 1990s made it possible to also analyze the power of preprocessing theoretically, through the notion of kernelization. It applies to parameterized decision problems \(\varPi \subseteq \varSigma ^* \times \mathbb {N}\), in which every instance \(x \in \varSigma ^*\) has an associated integer parameter k which captures one dimension of its complexity. For Feedback Vertex Set, typical choices for the parameter include the size of the desired solution or structural measures of the complexity of the input graph. A kernelization for a parameterized problem \(\varPi \) is then a polynomial-time algorithm that reduces any instance with parameter value k to an equivalent instance, of the same problem, whose total size is bounded by f(k) for some computable function f of the parameter alone. The function f is the size of the kernelization.
A substantial theoretical framework has been built around the definition of kernelization [16, 21, 26, 28, 30]. It includes deep techniques for obtaining kernelization algorithms [11, 27, 37, 40], as well as tools for ruling out the existence of small kernelizations [12, 18, 22, 29, 31] under complexity-theoretic hypotheses. This body of work gives a good theoretical understanding of polynomial-time data compression for NP-hard problems.
However, we argue that these results on kernelization do not explain the often exponential speed-ups (e.g. [3], [5, Table 6]) caused by applying effective preprocessing steps to non-trivial algorithms. Why not? A kernelization algorithm guarantees that the input size is reduced to a function of the parameter k; but the running time of modern parameterized algorithms for NP-hard problems is not exponential in the total input size. Instead, fixed-parameter tractable (FPT) algorithms have a running time that scales polynomially with the input size, and which only depends exponentially on a problem parameter such as the solution size or treewidth. Hence an exponential speed-up of such algorithms cannot be explained by merely a decrease in input size, but only by a decrease in the parameter!
We therefore propose the following novel research direction: to investigate how preprocessing algorithms can decrease the parameter value (and hence search space) of FPT algorithms, in a theoretically sound way. It is nontrivial to phrase meaningful formal questions in this direction. To illustrate this difficulty, note that strengthening the definition of kernelization to “a preprocessing algorithm that is guaranteed to always output an equivalent instance of the same problem with a strictly smaller parameter” is useless. Under minor technical assumptions, such an algorithm would allow the problem to be solved in polynomial time by repeatedly reducing the parameter, and solving the problem using an FPT or XP algorithm once the parameter value becomes constant. Hence NP-hard problems do not admit such parameter-decreasing algorithms. To formalize a meaningful line of inquiry, we take our inspiration from the Vertex Cover problem, the fruit fly of parameterized algorithms.
A rich body of theoretical and applied algorithmic research has been devoted to the exact solution of the Vertex Cover problem [5, 23, 32, 33]. A standard 2-way branching algorithm can test whether a graph G has a vertex cover of size k in time \(\mathcal {O} (2^k (n+m))\), which can be improved by more sophisticated techniques [14]. The running time of the algorithm scales linearly with the input size, and exponentially with the size k of the desired solution. This running time suggests that to speed up the algorithm by a factor 1000, one either has to decrease the input size by a factor 1000, or decrease k by \(\log _2 (1000) \approx 10\).
It turns out that state-of-the-art preprocessing strategies for Vertex Cover indeed often succeed in decreasing the size of the solution that the follow-up algorithm has to find, by means of crown-reduction [2, 15, 24], or the intimately related Nemhauser-Trotter reduction based on the linear-programming relaxation [39]. Recall that a vertex cover in a graph G is a set \(S \subseteq V(G)\) such that each edge has at least one endpoint in S. Observe that if \(H \subseteq V(G)\) is a set of vertices with the property that there exists a minimum vertex cover of G containing all of H, then G has a vertex cover of size k if and only if \(G - H\) has a vertex cover of size \(k - |H|\). Therefore, if a preprocessing algorithm can identify a set of vertices H which are guaranteed to belong to an optimal solution, then it can effectively reduce the parameter of the problem by restricting to a search for a solution of size \(k - |H|\) in \(G-S\).
A crown decomposition (cf. [1, 15, 24], [16, §2.3], [28, §4]) of a graph G serves exactly this purpose. It consists of two disjoint vertex sets \((\textsf{head},\textsf{crown})\), such that \(\textsf{crown} \) is a non-empty independent set whose neighborhood is contained in \(\textsf{head} \), and such that the graph \(G[\textsf{head} \cup \textsf{crown} ]\) has a matching M of size \(|\textsf{head} |\). As \(\textsf{crown} \) is an independent set, the matching M assigns to each vertex of \(\textsf{head} \) a private neighbor in \(\textsf{crown} \). It certifies that any vertex cover in G contains at least \(|\textsf{head} |\) vertices from \(\textsf{head} \cup \textsf{crown} \), and as \(\textsf{crown} \) is an independent set with \(N_G(\textsf{crown}) \subseteq \textsf{head} \), a simple exchange argument shows there is indeed an optimal vertex cover in G containing all of \(\textsf{head} \) and none of \(\textsf{crown} \). Since there is a polynomial-time algorithm to find a crown decomposition if one exists [2, Thm. 11–12], this yields the following preprocessing guarantee for Vertex Cover: if the input instance (G, k) has a crown decomposition \((\textsf{head},\textsf{crown})\), then a polynomial-time algorithm can reduce the problem to an equivalent one with parameter at most \(k - |\textsf{head} |\), thereby giving a formal guarantee on reduction in the parameter based on the structure of the input.Footnote 1
As the first step of our proposed research program into parameter reduction (and thereby, search space reduction) by a preprocessing phase, we present a graph decomposition for Feedback Vertex Set which can identify vertices S that belong to an optimal solution; and which therefore facilitate a reduction from finding a solution of size k in graph G, to finding a solution of size \(k - |S|\) in \(G - S\). While there has been a significant amount of work on kernelization for Feedback Vertex Set [10, 13, 34, 35, 42], the corresponding preprocessing algorithms do not succeed in finding vertices that belong to an optimal solution, other than those for which there is a self-loop or those which form the center a flower (consisting of \(k+1\) otherwise vertex-disjoint cycles [10, 13, 42], or a technical relaxation of this notion [34]). In particular, apart from the trivial self-loop rule, earlier preprocessing algorithms can only conclude a vertex v belongs to all optimal solutions (of a size k which must be given in advance) if they find a suitable packing of cycles witnessing that solutions without v must have size larger than k. In contrast, our argumentation will be based on local exchange arguments, which can be applied independently of the global solution size k.
We therefore introduce a new graph decomposition for preprocessing Feedback Vertex Set. To motivate it, we distill the essential features of a crown decomposition. Effectively, a crown decomposition of G certifies that G has a minimum vertex cover containing all of \(\textsf{head} \), because (i) any vertex cover has to pick at least \(|\textsf{head} |\) vertices from \(\textsf{head} \cup \textsf{crown} \), as the matching M certifies that \(\textsc {vc}(G[\textsf{head} \cup \textsf{crown} ]) \ge |\textsf{head} |\), while (ii) any minimum vertex cover \(S'\) in \(G - (\textsf{head} \cup \textsf{crown})\) yields a minimum vertex cover \(S' \cup \textsf{head} \) in G, since \(N_G(\textsf{crown}) \subseteq \textsf{head} \) and \(\textsf{crown} \) is an independent set. To obtain similar guarantees for Feedback Vertex Set, we need a decomposition to supply disjoint vertex sets \((\textsf{head}, \textsf{antler})\) such that (i) any minimum feedback vertex set contains at least \(|\textsf{head} |\) vertices from \(\textsf{head} \cup \textsf{antler} \), and (ii) any minimum feedback vertex set \(S'\) in \(G - (\textsf{head} \cup \textsf{antler})\) yields a minimum feedback vertex set \(S' \cup \textsf{head} \) in G. To achieve (i), it suffices for \(G[\textsf{head} \cup \textsf{antler} ]\) to contain a set of \(|\textsf{head} |\) vertex-disjoint cycles; to achieve (ii), it suffices for \(G[\textsf{antler} ]\) to be acyclic, with each tree T of the forest \(G[\textsf{antler} ]\) connected to the remainder \(V(G) \setminus (\textsf{head} \cup \textsf{antler})\) by at most one edge (implying that all cycles through \(\textsf{antler} \) intersect \(\textsf{head} \)). We call such a decomposition a 1-antler. Here antler refers to the shape of the forest \(G[\textsf{antler} ]\), which no longer consists of isolated spikes of a crown (see Fig. 1 in the full version [19]). The prefix 1 indicates it is the simplest type of antler; we present a generalization later. An antler is non-empty if \(\textsf{head} \cup \textsf{antler} \ne \emptyset \), and the width of the antler is defined to be \(|\textsf{head} |\).
Unfortunately, assuming \(\textsf{P}\) \(\ne \) \(\textsf{NP}\) there is no polynomial-time algorithm that always outputs a non-empty 1-antler if one exists. We prove this in the full version [19]. However, for the purpose of making a preprocessing algorithm that reduces the search space, we can allow FPT time in a parameter such as \(|\textsf{head} |\) to find a decomposition. Each fixed choice of \(|\textsf{head} |\) would then correspond to a reduction rule which identifies a small (\(|\textsf{head} |\)-sized) part of an optimal feedback vertex set, for which there is a simple certificate for it being part of an optimal solution. Such a reduction rule can then be iterated in the preprocessing phase, thereby potentially decreasing the target solution size (and search space) by an arbitrarily large amount. Hence we consider the parameterized complexity of testing whether a graph admits a non-empty 1-antler with \(|\textsf{head} | \le k\), parameterized by k. On the one hand, we show this problem to be W[1]-hard in the full version [19]. This hardness turns out to be a technicality based on the forced bound on \(|\textsf{head} |\), though. We provide the following FPT algorithm which yields a search-space reducing preprocessing step.
Theorem 1
There is an algorithm that runs in \(2^{\mathcal {O} (k^5)} \cdot n^{\mathcal {O} (1)}\) time that, given an undirected multigraph G on n vertices and integer k, either correctly determines that G does not admit a non-empty 1-antler of width at most k, or outputs a set S of at least k vertices such that there exists an optimal feedback vertex set in G containing all vertices of S.
Hence if the input graph admits a non-empty 1-antler of width at most k, the algorithm is guaranteed to find at least k vertices that belong to an optimal feedback vertex set, thereby reducing the search space.
Based on this positive result, we go further and generalize our approach beyond 1-antlers. For a 1-antler \((\textsf{head}, \textsf{antler})\) in G, the set of \(|\textsf{head} |\) vertex-disjoint cycles in \(G[\textsf{head} \cup \textsf{antler} ]\) forms a very simple certificate that any feedback vertex set of G contains at least \(|\textsf{head} |\) vertices from \(\textsf{head} \cup \textsf{antler} \). We can generalize our approach to identify part of an optimal solution, by allowing more complex certificates of optimality. The following interpretation of a 1-antler is the basis of the generalization: for a 1-antler \((\textsf{head}, \textsf{antler})\) in G, there is a subgraph \(G'\) of \(G[\textsf{head} \cup \textsf{antler} ]\) (formed by the \(|\textsf{head} |\) vertex-disjoint cycles) such that \(V(G') \supseteq \textsf{head} \) and \(\textsf{head} \) is an optimal feedback vertex set of \(G'\); and furthermore this subgraph \(G'\) is simple because all its connected components, being cycles, have a feedback vertex set of size 1. For an arbitrary integer z, we therefore define a z-antler in an undirected multigraph graph G as a pair of disjoint vertex sets \((\textsf{head}, \textsf{antler})\) such that (i) any minimum feedback vertex set in G contains at least \(|\textsf{head} |\) vertices from \(\textsf{head} \cup \textsf{antler} \), as witnessed by the fact that \(G[\textsf{head} \cup \textsf{antler} ]\) has a subgraph \(G'\) for which \(\textsf{head} \) is an optimal feedback vertex set and with each component of \(G'\) having a feedback vertex set of size at most z; and (ii) the graph \(G[\textsf{antler} ]\) is acyclic, with each tree T of the forest \(G[\textsf{antler} ]\) connected to the remainder \(V(G) \setminus (\textsf{head} \cup \textsf{antler})\) by at most one edge. (So condition (ii) is not changed compared to a 1-antler.) Our main result is the following.
Theorem 2
There is an algorithm that runs in \(2^{\mathcal {O} (k^5 z^2)} \cdot n^{\mathcal {O} (z)}\) time that, given an undirected multigraph G on n vertices and integers \(k \ge z \ge 0\), either correctly determines that G does not admit a non-empty z-antler of width at most k, or outputs a set S of at least k vertices such that there exists an optimal feedback vertex set in G containing all vertices of S.
In fact, we prove a slightly stronger statement. If a graph G can be reduced to a graph \(G'\) by iteratively removing z-antlers, each of width at most k, and the sum of the widths of this sequence of antlers is t, then we can find in time \(f(k,z) \cdot n^{\mathcal {O} (z)}\) a subset of at least t vertices of G that belong to an optimal feedback vertex set. This implies that if a complete solution to Feedback Vertex Set can be assembled by iteratively combining \(\mathcal {O} (1)\)-antlers of width at most k, then the entire solution can be found in time \(f'(k) \cdot n^{\mathcal {O} (1)}\). Hence our work uncovers a new parameterization in terms of the complexity of the solution structure, rather than its size, in which Feedback Vertex Set is fixed-parameter tractable.
Our algorithmic results are based on a combination of graph reduction and color coding. We use reduction steps inspired by the kernelization algorithms [10, 42] for Feedback Vertex Set to bound the size of \(\textsf{antler} \) in the size of \(\textsf{head} \). After such reduction steps, we use color coding [6] to help identify antler structures. A significant amount of effort goes into proving that the reduction steps preserve antler structures and the optimal solution size.
2 Preliminaries
Due to space restrictions, proofs of statements marked \(\bigstar \) have been deferred to the appendix. For any family of sets \(X_1,\ldots ,X_\ell \) indexed by \(\{1,\ldots ,\ell \}\) we define for all \(1 \le i \le \ell \) the following \(X_{<i} := \bigcup _{1 \le j < i} X_j\), \(X_{>i} := \bigcup _{i < j \le \ell } X_j\), \(X_{\le i} := X_i \cup X_{<i}\) and \(X_{\ge i} := X_i \cup X_{>i}\). For a function \(f :A \rightarrow B\), let \(f^{-1} :B \rightarrow 2^A\) denote the preimage function of f, that is \(f^{-1}(a) = \{b \in B \mid f(b) = a\}\).
All graphs considered in this paper are undirected multigraphs, which may have loops. Based on the incidence representation of multigraphs we represent a multigraph G by a vertex set V(G), an edge set E(G), and a function \(\iota :E(G) \rightarrow 2^{V(G)}\) where \(\iota (e)\) is the set of one or two vertices incident to e for all \(e \in E(G)\). In the context of an algorithm with input graph G we use \(n = |V(G)|\) and \(m = |E(G)|\). We assume we can retrieve and update number of edges between two vertices in constant time, hence we can ensure in \(\mathcal {O} (n^2)\) time that there are at most two edges between any to vertices, meaning \(m \in \mathcal {O} (n^2)\). For a vertex set \(X \subseteq V(G)\) let G[X] denote the subgraph of G induced by X. For a set of vertices and edges \(Y \subseteq V(G) \cup E(G)\) let \(G-Y\) denote the graph obtained from \(G[V(G)\setminus Y]\) by removing all edges in Y. For a singleton set \(\{v\}\) we write \(G - v\) instead of \(G - \{v\}\). For two graphs G and H the graph \(G \,\cap \, H\) is the graph on vertex set \(V(G) \,\cap \, V(H)\) and edge set \(E(G) \,\cap \, E(H)\). For \(v \in V(G)\) the open neighborhood of v in G is \(N_G(v) := \{u \in V(G) \mid \exists e \in E(G) :\{u,v\} = \iota (e)\}\). For \(X \subseteq V(G)\) let \(N_G(X) := \bigcup _{v \in X} N_G(v) \setminus X\). The degree \(\deg _G(v)\) of a vertex v in G is the number of edge-endpoints incident to v, where a self-loop contributes two endpoints. For two disjoint vertex sets \(X,Y \subseteq V(G)\) the number of edges in G with one endpoint in X and another in Y is denoted by e(X, Y). To simplify the presentation, in expressions involving \(N_G(..)\) and e(.., ..) we may use a subgraph H as argument instead of the set V(H) that is formally needed.
3 Feedback Vertex Cuts and Antlers
In this section we present properties of antlers and related structures. A Feedback Vertex Set (FVS) in a graph G is a vertex set \(X \subseteq V(G)\) such that \(G-S\) is acyclic. The feedback vertex number of a graph G, denoted by \(\textsc {fvs}(G)\), is the minimum size of a FVS in G. A Feedback Vertex Cut (FVC) in a graph G is a pair of disjoint vertex sets (C, F) such that \(C,F \subseteq V(G)\), G[F] is a forest, and for each tree T in G[F] we have \(e(T,G-(C\cup F)) \le 1\). The width of a FVC (C, F) is |C|, and (C, F) is empty if \(|C \cup F| = 0\). The set C intersects any cycle that contains a vertex from F, explaining the name Feedback Vertex Cut.
Observation 1
If (C, F) is a FVC in G then any cycle in G containing a vertex from F also contains a vertex from C. The set C is a FVS in \(G[C \cup F]\), hence .
Observation 2
If (C, F) is a FVC in G then for any \(X \subseteq V(G)\) we have that \((C\setminus X, F \setminus X)\) is a FVC in \(G-X\). Additionally, for any \(Y \subseteq E(G)\) we have that (C, F) is a FVC in \(G-Y\).
We now present one of the main concepts for this work. An antler in a graph G is a FVC (C, F) in G such that . Then by Observation 1 the set C is a minimum FVS in \(G[C \cup F]\) and no cycle in \(G-C\) contains a vertex from F. We observe:
Observation 3
If (C, F) is an antler in G, then .
For a graph G and vertex set \(C \subseteq V(G)\), a C-certificate is a subgraph H of G such that C is a minimum FVS in H. We say a C-certificate has order z if for each component \(H'\) of H we have . For an integer \(z\ge 0\), a z-antler in G is an antler (C, F) in G such that \(G[C \cup F]\) contains a C-certificate of order z. Note that a 0-antler has width 0.
Observation 4
If (C, F) is a z-antler in G for some \(z\ge 0\), then for any \(X \subseteq C\), we have that \((C\setminus X,F)\) is a z-antler in \(G - X\).
While antlers may intersect in non-trivial ways, the following proposition relates the sizes of the cross-intersections.
Proposition 1
(\(\bigstar \)). If \((C_1,F_1)\) and \((C_2,F_2)\) are antlers in G, then \(|C_1 \,\cap \, F_2| = |C_2 \,\cap \, F_1|\).
Lemma 1 shows that what remains of a z-antler \((C_1,F_1)\) when removing a different antler \((C_2,F_2)\), again forms a smaller z-antler. We will rely on this lemma repeatedly to ensure that after having found and removed an incomplete fragment of a width-k z-antler, the remainder of that antler persists as a z-antler to be found later.
Lemma 1
(\(\bigstar \)). For any integer \(z\ge 0\), if a graph G has a z-antler \((C_1,F_1)\) and another antler \((C_2,F_2)\), then \((C_1 \setminus (C_2 \cup F_2), F_1 \setminus (C_2 \cup F_2))\) is a z-antler in \(G-(C_2 \cup F_2)\).
Lemma 2 shows that we can consider consecutive removal of two z-antlers as the removal of a single z-antler.
Lemma 2
(\(\bigstar \)). For any integer \(z\ge 0\), if a graph G has a z-antler \((C_1,F_1)\) and \(G-(C_1 \cup F_1)\) has a z-antler \((C_2,F_2)\) then \((C_1 \cup C_2, F_1 \cup F_2)\) is a z-antler in G.
The last structural property of antlers, given in Lemma 3, derives a bound on the number of trees of a forest G[F] needed to witness that C is an optimal FVS of \(G[C \cup F]\).
Lemma 3
(\(\bigstar \)). Let (C, F) be a z-antler in a graph G for some \(z \ge 0\). There exists an \(F' \subseteq F\) such that \((C,F')\) is a z-antler in G and \(G[F']\) has at most \(\frac{|C|}{2}(z^2+2z-1)\) trees.
4 Finding Feedback Vertex Cuts
As described in Sect. 1, our algorithm to identify vertices in antlers uses color coding. To allow a relatively small family of colorings to identify an entire antler structure (C, F) with \(|C| \le k\), we need to bound |F| in terms of k as well. We therefore use several graph reduction steps. In this section, we show that if there is a width-k antler whose forest F is significantly larger than k, then we can identify a reducible structure in the graph. To identify a reducible structure we will also use color coding. In Sect. 5 we show how to reduce such a structure while preserving antlers and optimal feedback vertex sets.
Define the function \(f_r :\mathbb {N} \rightarrow \mathbb {N}\) as \(f_r(x) = 2x^3+3x^2-x\). We say a FVC (C, F) is reducible if \(|F| > f_r(|C|)\), and (C, F) is a single-tree FVC if G[F] is connected.
Definition 1
A FVC (C, F) is simple if \(|F| \le 2f_r(|C|)\) and one of the following holds: (a) G[F] is connected, or (b) all trees in G[F] have a common neighbor v and there exists a single-tree FVC \((C,F_2)\) with \(v \in F_2 \setminus F\) and \(F \subseteq F_2\).
In the full version [19] we show that if a graph G contains a single-tree reducible FVC (C, F), then G contains a simple reducible FVC \((C,F')\). In turn, such a simple reducible FVC can be found using color coding. A vertex coloring of G is a function \(\chi :V(G) \rightarrow \{\mathsf {\dot{C}},\mathsf {\dot{F}} \}\). We say a simple FVC (C, F) is properly colored by a coloring \(\chi \) if \(F \subseteq \chi ^{-1}(\mathsf {\dot{F}})\) and \(C \cup N_G(F) \subseteq \chi ^{-1}(\mathsf {\dot{C}})\).
Lemma 4
(\(\bigstar \)). Given a graph G and coloring \(\chi \) of G that properly colors a simple reducible FVC (C, F), a reducible FVC \((C',F')\) can be found in \(\mathcal {O} (n^3)\) time.
It can be shown that whether a FVC of width k is properly colored is determined by at most \(1+k+2f_r(k) = \mathcal {O} (k^3)\) relevant vertices. By creating an \((n,\mathcal {O} (k^3))\)-universal set for V(G) using [16, Theorem 5.20], we can obtain in \(2^{\mathcal {O} (k^3)} \cdot n \log n\) time a set of \(2^{\mathcal {O} (k^3)} \cdot \log n\) colorings that contains a coloring for each possible assignment of colors for these relevant vertices. By applying Lemma 4 for each coloring we obtain the following lemma:
Lemma 5
(\(\bigstar \)). There exists an algorithm that, given a graph G and an integer k, outputs a (possibly empty) FVC (C, F) in G. If G contains a reducible single-tree FVC of width at most k then (C, F) is reducible. The algorithm runs in time \(2^{\mathcal {O} (k^3)} \cdot n^3 \log n\).
5 Reducing Feedback Vertex Cuts
We apply reduction operations inspired by [10, 42] on the subgraph \(G[C \cup F]\) for a FVC (C, F) in G. We give 5 reduction operations and show at least one is applicable if \(|F| > f_r(|C|)\). The operations reduce the number of vertices \(v \in F\) with \(\deg _G(v) < 3\) or reduce e(C, F). The following lemma shows that this is sufficient to reduce the size of F.
Lemma 6
(\(\bigstar \)). Let G be a multigraph with minimum degree at least 3 and let (C, F) be a FVC in G. We have \(|F| \le e(C,F)\).
Next, we give the reduction operations. These operations apply to a graph G and yield a new graph \(G'\) and vertex set \(S \subseteq V(G)\setminus V(G')\). An operation with output \(G'\) and S is FVS-safe if for any minimum feedback vertex set \(S'\) of \(G'\), the set \(S \cup S'\) is a minimum feedback vertex set of G. An operation is antler-safe if for all \(z\ge 0\) and any z-antler (C, F) in G, there exists a z-antler \((C',F')\) in \(G'\) with \(C' \cup F' = (C \cup F) \,\cap \, V(G')\) and \(|C'| = |C| - |(C \cup F) \,\cap \, S|\).
Operation 1
If \(u,v \in V(G)\) are connected by more than two edges, remove all but two of these edges to obtain \(G'\) and take \(S := \emptyset \).
Operation 2
If \(v \in V(G)\) has degree exactly 2 and no self-loop, obtain \(G'\) by removing v from G and adding an edge e with \(\iota (e) = N_G(v)\). Take \(S := \emptyset \).
Operations 1 and 2 are well established and FVS-safe. Additionally Operation 1 can easily be seen to be antler-safe. To see that Operation 2 is antler-safe, consider a z-antler (C, F) in G for some \(z\ge 0\). If \(v \not \in C\) it is easily verified that \((C,F\setminus \{v\})\) is a z-antler in \(G'\). If \(v \in C\) pick a vertex \(u \in N_G(v) \,\cap \, F\) and observe that \((\{u\} \cup C \setminus \{v\}, F \setminus \{u\})\) is a z-antler in \(G'\).
Operation 3
If (C, F) is an antler in G, then \(G' := G - (C \cup F)\) and \(S := C\).
Operation 4
If (C, F) is a FVC in G and for some \(v \in C\) the graph \(G[F \cup \{v\}]\) contains a v-flower of order \(|C|+1\), then \(G' := G - v\) and \(S := \{v\}\).
Operation 5
If (C, F) is a FVC in G, \(v \in C\), and \(X \subseteq F\) such that \(G[F \cup \{v\}] - X\) is acyclic, and if T is a tree in \(G[F]-X\) containing a vertex \(w \in N_G(v)\) such that for each \(u \in N_G(T)\setminus \{v\}\) there are more than |C| other trees \(T' \ne T\) in \(G[F]-X\) for which \(\{u,v\} \subseteq N_G(T')\), then take \(S := \emptyset \) and obtain \(G'\) by removing the unique edge between v and w, and adding double-edges between v and u for all \(u \in N_G(V(T))\setminus \{v\}\).
In the full version [19] we prove that the last three operations are both FVS-safe and antler-safe. Finally we show that when we are given a reducible FVC (C, F) in G, then we can find and apply an operation in \(\mathcal {O} (n^2)\) time. With a more careful analysis better running time bounds can be shown, but this does not affect the final running time of the main algorithm.
Lemma 7
(\(\bigstar \)). Given a graph G and a reducible FVC (C, F) in G, we can find and apply an operation in \(\mathcal {O} (n^2)\) time.
6 Finding and Removing Antlers
We will find antlers using color coding, using coloring functions of the form \(\chi :V(G) \cup E(G) \rightarrow \{\mathsf {\dot{F}},\mathsf {\dot{C}},\mathsf {\dot{R}} \}\). For all \(c \in \{\mathsf {\dot{F}}, \mathsf {\dot{C}}, \mathsf {\dot{R}} \}\) let \(\chi ^{-1}_V(c) = \chi ^{-1}(c) \,\cap \, V(G)\). For any integer \(z\ge 0\), a z-antler (C, F) in a graph G is z-properly colored by a coloring \(\chi \) if all of the following hold: (i) \(F \subseteq \chi ^{-1}_V(\mathsf {\dot{F}})\), (ii) \(C \subseteq \chi ^{-1}_V(\mathsf {\dot{C}})\), (iii) \(N_G(F)\setminus C \subseteq \chi ^{-1}_V(\mathsf {\dot{R}})\), and (iv) \(G[C \cup F] - \chi ^{-1}(\mathsf {\dot{R}})\) is a C-certificate of order z. Recall that \(\chi ^{-1}(\mathsf {\dot{R}})\) can contain edges as well as vertices so for any subgraph H of G the graph \(H - \chi ^{-1}(\mathsf {\dot{R}})\) is obtained from H by removing both vertices and edges. It can be seen that if (C, F) is a z-antler, then there exists a coloring that z-properly colors it. Consider for example a coloring where a vertex v is colored \(\mathsf {\dot{C}}\) (resp. \(\mathsf {\dot{F}}\)) if \(v \in C\) (resp. \(v \in F\)), all other vertices are colored \(\mathsf {\dot{R}}\), and for some C-certificate H of order z in \(G[C \cup F]\) all edges in H have color \(\mathsf {\dot{F}}\) and all other edges have color \(\mathsf {\dot{R}}\).
Lemma 8
(\(\bigstar \)). A \(n^{\mathcal {O} (z)}\) time algorithm exists taking as input an integer \(z\ge 0\), a graph G, and a coloring \(\chi \) and producing as output a z-antler (C, F) in G, such that for any z-antler \((\hat{C},\hat{F})\) that is z-properly colored by \(\chi \) we have \(\hat{C} \subseteq C\) and \(\hat{F} \subseteq F\).
If a graph G contains a reducible single-tree FVC of width at most k then we can find and apply an operation by Lemma 5 and 7. If G does not contain such a FVC, but G does contain a non-empty z-antler (C, F) of width at most k, then using Lemma 3 we can prove that whether (C, F) is z-properly colored is determined by the color of at most \(26 k^5 z^2\) relevant vertices and edges. Using two \((n+m,26 k^5 z^2)\)-universal sets, we can create a set of colorings that is guaranteed to contain a coloring that z-properly colors (C, F). Using Lemma 8 we find a non-empty z-antler and apply Operation 3. We obtain the following:
Lemma 9
(\(\bigstar \)). Given a graph G and integers \(k \ge z \ge 0\). If G contains a non-empty z-antler of width at most k we can find and apply an operation in \(2^{\mathcal {O} (k^5 z^2)} \cdot n^{\mathcal {O} (z)}\) time.
Note that applying an operation reduces the number of vertices or increases the number of double-edges. Hence by repeatedly using Lemma 9 to apply an operation we obtain, after at most \(\mathcal {O} (n^2)\) iterations, a graph in which no operation applies. By Lemma 9 this graph does not contain a non-empty z-antler of width at most k. Further analysis shows that this method reduces the solution size at least as much as iteratively removing z-antlers of width at most k. This is described in Theorem 3. By taking \(t=1\) we obtain Theorem 2.
Theorem 3
(\(\bigstar \)). Given as input a graph G and integers \(k\ge z \ge 0\) we can find in \(2^{\mathcal {O} (k^5 z^2)} \cdot n^{\mathcal {O} (z)}\) time a vertex set \(S \subseteq V(G)\) such that
-
1.
there is a minimum FVS in G containing all vertices of S, and
-
2.
if \(C_1, F_1, \ldots , C_t, F_t\) is a sequence of disjoint vertex sets with for all \(1 \le i \le t\) the pair \((C_{i}, F_{i})\) is a z-antler of width at most k in \(G - (C_{<i} \cup F_{<i})\), then \(|S| \ge |C_{\le t}|\).
As a corollary to this theorem, we obtain a new type of parameterized-tractability result for Feedback Vertex Set. For an integer z, let the z-antler complexity of fvs on G be the minimum number k for which there exists a (potentially long) sequence \(C_1, F_1, \ldots , C_t, F_t\) of disjoint vertex sets such that for all \(1 \le i \le t\), the pair \((C_{i}, F_{i})\) is a z-antler of width at most k in \(G - (C_{<i} \cup F_{<i})\), and such that \(G - (C_{\le t} \cup F_{\le t})\) is acyclic (implying that \(C_{\le t}\) is a feedback vertex set in G). If no such sequence exists, the z-antler complexity of G is \(+\infty \).
Intuitively, Corollary 1 states that optimal solutions can be found efficiently when they are composed out of small pieces, each of which has a low-complexity certificate for belonging to some optimal solution.
Corollary 1
(\(\bigstar \)). There is an algorithm that, given a graph G, returns an optimal feedback vertex set in time \(f(k^*) \cdot n^{\mathcal {O} (z^*)}\), where \((k^*,z^*)\) is any pair of integers such that the \(z^*\)-antler complexity of G is at most \(k^*\).
To conclude, we reflect on the running time of Corollary 1 compared to running times of the form obtained by FPT algorithms for the parameterization by solution size. If we exhaustively apply Lemma 7 with the FVC \((C,V(G)\setminus C)\), where C is obtained from a 2-approximation algorithm [9], then this gives an antler-safe kernelization: it reduces the graph as long as the graph is larger than \(f_r(|C|)\). This opening step reduces the instance size to without increasing the antler complexity. As observed before, after applying \(\mathcal {O} (n^2)\) operations we obtain a graph in which no operations can be applied. This leads to a running time of \(\mathcal {O} (n^4)\) of the kernelization. Running Theorem 3 to solve the reduced instance yields a total running time of . This is asymptotically faster than when and , which captures the intuitive idea sketched above that our algorithmic approach has an advantage when there is an optimal solution that is large but composed of small pieces for which there are low-complexity certificates.
7 Conclusion
We have taken the first steps of a research program to investigate how and when a preprocessing phase can guarantee to identify parts of an optimal solution to an NP-hard problem, thereby reducing the search space of the follow-up algorithm. Aside from the technical results concerning antler structures for Feedback Vertex Set and their algorithmic properties, we consider the conceptual message of this research program an important contribution of our theoretical work on understanding the power of preprocessing and the structure of solutions to NP-hard problems.
This line of investigation opens up a host of opportunities for future research. For combinatorial problems such as Vertex Planarization, Odd Cycle Transversal, and Directed Feedback Vertex Set, which kinds of substructures in inputs allow parts of an optimal solution to be identified by an efficient preprocessing phase? Is it possible to give preprocessing guarantees not in terms of the size of an optimal solution, but in terms of measures of the stability [7, 8, 17] of optimal solutions under small perturbations? Some questions also remain open concerning the concrete technical results in the paper. Can the running time of Theorem 2 be improved to \(f(k) \cdot n^{\mathcal {O} (1)}\)? We conjecture that it cannot, but have not been able to prove this.
Change history
08 December 2023
A correction has been published.
Notes
- 1.
The effect of the crown reduction rule can also be theoretically explained by the fact that interleaving basic 2-way branching with exhaustive crown reduction yields an algorithm whose running time is only exponential in the gap between the size of a minimum vertex cover and the cost of an optimal solution to its linear-programming relaxation [38]. However, this type of result cannot be generalized to Feedback Vertex Set since it is already NP-complete to determine whether there is a feedback vertex set whose size matches the cost of the linear-programming relaxation (see the full version [19]).
References
Abu-Khzam, F.N., Collins, R.L., Fellows, M.R., Langston, M.A., Suters, W.H., Symons, C.T.: Kernelization algorithms for the vertex cover problem: theory and experiments. In: Proceedings of 6th ALENEX/ANALC, pp. 62–69 (2004)
Abu-Khzam, F.N., Fellows, M.R., Langston, M.A., Suters, W.H.: Crown structures for vertex cover kernelization. Theory Comput. Syst. 41(3), 411–430 (2007). https://doi.org/10.1007/s00224-007-1328-0
Achterberg, T., Bixby, R.E., Gu, Z., Rothberg, E., Weninger, D.: Presolve reductions in mixed integer programming. Technical report 16-44, ZIB, Takustr.7, 14195 Berlin (2016). http://nbn-resolving.de/urn:nbn:de:0297-zib-60370
Achterberg, T., Wunderling, R.: Mixed integer programming: analyzing 12 years of progress. In: Jünger, M., Reinelt, G. (eds.) Facets of Combinatorial Optimization, pp. 449–481. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38189-8_18
Akiba, T., Iwata, Y.: Branch-and-reduce exponential/FPT algorithms in practice: a case study of vertex cover. Theor. Comput. Sci. 609, 211–225 (2016). https://doi.org/10.1016/j.tcs.2015.09.023
Alon, N., Yuster, R., Zwick, U.: Color-coding. J. ACM 42(4), 844–856 (1995)
Angelidakis, H., Awasthi, P., Blum, A., Chatziafratis, V., Dan, C.: Bilu-Linial stability, certified algorithms and the independent set problem. In: Bender, M.A., Svensson, O., Herman, G. (eds.) Proceedings of 27th ESA. LIPIcs, vol. 144, pp. 7:1–7:16. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2019). https://doi.org/10.4230/LIPIcs.ESA.2019.7
Awasthi, P., Blum, A., Sheffet, O.: Center-based clustering under perturbation stability. Inf. Process. Lett. 112(1–2), 49–54 (2012). https://doi.org/10.1016/j.ipl.2011.10.006
Bafna, V., Berman, P., Fujito, T.: A 2-approximation algorithm for the undirected feedback vertex set problem. SIAM J. Discrete Math. 12(3), 289–297 (1999). https://doi.org/10.1137/S0895480196305124
Bodlaender, H.L., van Dijk, T.C.: A cubic kernel for feedback vertex set and loop cutset. Theory Comput. Syst. 46(3), 566–597 (2010). https://doi.org/10.1007/s00224-009-9234-2
Bodlaender, H.L., Fomin, F.V., Lokshtanov, D., Penninkx, E., Saurabh, S., Thilikos, D.M.: (meta) Kernelization. J. ACM 63(5), 44:1–44:69 (2016). https://doi.org/10.1145/2973749
Bodlaender, H.L., Jansen, B.M.P., Kratsch, S.: Kernelization lower bounds by cross-composition. SIAM J. Discrete Math. 28(1), 277–305 (2014). https://doi.org/10.1137/120880240
Burrage, K., Estivill-Castro, V., Fellows, M.R., Langston, M.A., Mac, S., Rosamond, F.A.: The undirected feedback vertex set problem has a poly(\(k\)) kernel. In: Bodlaender, H.L., Langston, M.A. (eds.) IWPEC 2006. LNCS, vol. 4169, pp. 192–202. Springer, Heidelberg (2006). https://doi.org/10.1007/11847250_18
Chen, J., Kanj, I.A., Xia, G.: Improved upper bounds for vertex cover. Theor. Comput. Sci. 411(40–42), 3736–3756 (2010). https://doi.org/10.1016/j.tcs.2010.06.026
Chor, B., Fellows, M., Juedes, D.W.: Linear kernels in linear time, or how to save \(k\) colors in \(O\)\((n^2)\) steps. In: Hromkovič, J., Nagl, M., Westfechtel, B. (eds.) WG 2004. LNCS, vol. 3353, pp. 257–269 (2004). https://doi.org/10.1007/978-3-540-30559-0_22
Cygan, M., et al.: Parameterized Algorithms. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-21275-3
Daniely, A., Linial, N., Saks, M.E.: Clustering is difficult only when it does not matter. CoRR abs/1205.4891 (2012). http://arxiv.org/abs/1205.4891
Dell, H., van Melkebeek, D.: Satisfiability allows no nontrivial sparsification unless the polynomial-time hierarchy collapses. J. ACM 61(4), 23:1–23:27 (2014). https://doi.org/10.1145/2629620
Donkers, H., Jansen, B.M.P.: Preprocessing to reduce the search space: antler structures for feedback vertex set. CoRR abs/2106.11675 (2021). https://arxiv.org/abs/2106.11675
Downey, R., Fellows, M.R.: Parameterized Complexity. Monographs in Computer Science. Springer, New York (1999). https://doi.org/10.1007/978-1-4612-0515-9
Downey, R.G., Fellows, M.R.: Fundamentals of Parameterized Complexity. TCS. Springer, London (2013). https://doi.org/10.1007/978-1-4471-5559-1
Drucker, A.: New limits to classical and quantum instance compression. SIAM J. Comput. 44(5), 1443–1479 (2015). https://doi.org/10.1137/130927115
Dzulfikar, M.A., Fichte, J.K., Hecher, M.: The PACE 2019 parameterized algorithms and computational experiments challenge: the fourth iteration (invited paper). In: Jansen, B.M.P., Telle, J.A. (eds.) Proceedings of 14th IPEC. LIPIcs, vol. 148, pp. 25:1–25:23. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2019). https://doi.org/10.4230/LIPIcs.IPEC.2019.25
Fellows, M.R.: Blow-ups, win/win’s, and crown rules: some new directions in FPT. In: Bodlaender, H.L. (ed.) WG 2003. LNCS, vol. 2880, pp. 1–12. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-39890-5_1
Fellows, M.R.: The lost continent of polynomial time: preprocessing and kernelization. In: Bodlaender, H.L., Langston, M.A. (eds.) IWPEC 2006. LNCS, vol. 4169, pp. 276–277. Springer, Heidelberg (2006). https://doi.org/10.1007/11847250_25
Flum, J., Grohe, M.: Parameterized Complexity Theory. TTCSAES, Springer, Heidelberg (2006). https://doi.org/10.1007/3-540-29953-X
Fomin, F.V., Lokshtanov, D., Misra, N., Saurabh, S.: Planar \(\cal{F}\)-deletion: approximation, kernelization and optimal FPT algorithms. In: Proceedings of 53rd FOCS, pp. 470–479 (2012). https://doi.org/10.1109/FOCS.2012.62
Fomin, F.V., Lokshtanov, D., Saurabh, S., Zehavi, M.: Kernelization: Theory of Parameterized Preprocessing. Cambridge University Press, Cambridge (2019). https://doi.org/10.1017/9781107415157
Fortnow, L., Santhanam, R.: Infeasibility of instance compression and succinct PCPs for NP. J. Comput. Syst. Sci. 77(1), 91–106 (2011). https://doi.org/10.1016/j.jcss.2010.06.007
Guo, J., Niedermeier, R.: Invitation to data reduction and problem kernelization. SIGACT News 38(1), 31–45 (2007). https://doi.org/10.1145/1233481.1233493
Hermelin, D., Kratsch, S., Soltys, K., Wahlström, M., Wu, X.: A completeness theory for polynomial (turing) kernelization. Algorithmica 71(3), 702–730 (2015). https://doi.org/10.1007/s00453-014-9910-8
Hespe, D., Lamm, S., Schulz, C., Strash, D.: Wegotyoucovered: the winning solver from the PACE 2019 implementation challenge, vertex cover track. CoRR abs/1908.06795 (2019)
Hespe, D., Schulz, C., Strash, D.: Scalable kernelization for maximum independent sets. ACM J. Exp. Algorithm. 24(1), 1.16:1–1.16:22 (2019). https://doi.org/10.1145/3355502
Iwata, Y.: Linear-time kernelization for feedback vertex set. In: Proceedings of 44th ICALP. LIPIcs, vol. 80, pp. 68:1–68:14 (2017). https://doi.org/10.4230/LIPIcs.ICALP.2017.68
Jansen, B.M.P., Raman, V., Vatshelle, M.: Parameter ecology for feedback vertex set. Tsinghua Sci. Technol. 19(4), 387–409 (2014). https://doi.org/10.1109/TST.2014.6867520
Karp, R.M.: Reducibility among combinatorial problems. In: Jünger, M., et al. (eds.) 50 Years of Integer Programming 1958–2008. TTCSAES, pp. 219–241. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-540-68279-0_8
Kratsch, S., Wahlström, M.: Representative sets and irrelevant vertices: new tools for kernelization. In: Proceedings of 53rd FOCS, pp. 450–459 (2012). https://doi.org/10.1109/FOCS.2012.46
Lokshtanov, D., Narayanaswamy, N.S., Raman, V., Ramanujan, M.S., Saurabh, S.: Faster parameterized algorithms using linear programming. ACM Trans. Algorithms 11(2), 15:1–15:31 (2014). https://doi.org/10.1145/2566616
Nemhauser, G., Trotter, L.: Vertex packings: structural properties and algorithms. Math. Program. 8, 232–248 (1975). https://doi.org/10.1007/BF01580444
Pilipczuk, M., Pilipczuk, M., Sankowski, P., van Leeuwen, E.J.: Network sparsification for steiner problems on planar and bounded-genus graphs. ACM Trans. Algorithms 14(4), 53:1–53:73 (2018). https://doi.org/10.1145/3239560
Quine, W.V.: The problem of simplifying truth functions. Am. Math. Mon. 59(8), 521–531 (1952)
Thomassé, S.: A \(4k^2\) kernel for feedback vertex set. ACM Trans. Algorithms 6(2) (2010). https://doi.org/10.1145/1721837.1721848
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.
Copyright information
© 2021 The Author(s)
About this paper
Cite this paper
Donkers, H., Jansen, B.M.P. (2021). Preprocessing to Reduce the Search Space: Antler Structures for Feedback Vertex Set. In: Kowalik, Ł., Pilipczuk, M., Rzążewski, P. (eds) Graph-Theoretic Concepts in Computer Science. WG 2021. Lecture Notes in Computer Science(), vol 12911. Springer, Cham. https://doi.org/10.1007/978-3-030-86838-3_1
Download citation
DOI: https://doi.org/10.1007/978-3-030-86838-3_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-86837-6
Online ISBN: 978-3-030-86838-3
eBook Packages: Computer ScienceComputer Science (R0)