A Polynomial Kernel for Face Cover on Non-Embedded Planar Graphs
Abstract
Given a planar graph, a subset of its vertices called terminals, and , the Face Cover Number problem asks whether the terminals lie on the boundaries of at most faces of some embedding of the input graph. When a plane graph is given in the input, the problem is known to have a polynomial kernel [16]. In this paper, we present the first polynomial kernel for Face Cover Number when the input is a planar graph (without a fixed embedding). Our approach overcomes the challenge of not having a predefined set of face boundaries by building a kernel bottom-up on an SPR-tree while preserving the essential properties of the face cover along the way.
Keywords and phrases:
Kernelization, Planar Graphs, SPQR-treeFunding:
Thekla Hamm: Supported by the Austrian Science Fund (J4651-N) during part of this work.Copyright and License:
2012 ACM Subject Classification:
Theory of computation Parameterized complexity and exact algorithms ; Mathematics of computing Graph algorithmsEditors:
Meena Mahajan, Florin Manea, Annabelle McIver, and Nguyễn Kim ThắngSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
Problems in network design have been extensively studied on the class of planar graphs. Many of these problems take as input a graph and a subset of its vertices distinguished as terminals, and the goal is to find an optimal subgraph connecting or separating the terminals that satisfies certain constraints. Even when the input is restricted to the class of planar graphs, a large number of these problems remain intractable if the number of terminals is superconstant [14, 29, 28, 26, 8, 15, 23]. This motivates the quest for further restrictions on the input that may make the problems tractable. Besides bounding the actual number of terminals, one can target weaker restrictions, which impose conditions on the placement of the terminals in the input planar graph. One such restriction could be to require that the terminals lie on the boundary of a single face of the planar input graph. Some well-known NP-hard problems like Steiner Tree, Multiway Cut, and Shortest Disjoint Paths can be solved in polynomial time [11, 2, 6, 4] in this case. It is therefore natural to wonder: What if the terminals lie on the boundaries of faces?.
The terminal face cover number of a planar graph is the minimum number of faces, over all embeddings, that jointly cover all the terminals. Parameterization by the terminal face cover number was first considered by Erickson et al. in their seminal paper [11] to design an XP algorithm for Steiner Tree. Recently, it has received a lot of attention, be it for flow and cut problems [25, 24, 6, 27], shortest path problems [7, 13], minimum non-crossing walks [10], and minimum Steiner tree [20]. In this paper, we focus on the problem of computing the terminal face cover number. Formally, the problem is defined as follows:
Face Cover Number Instance: Planar graph , , integer Question: Does there exist a set of faces of size at most in some embedding of that covers all the vertices of ?
Bienstock and Monma [3] initiated the study of Face Cover Number and showed that it can be solved in FPT time parameterized by . Their algorithm runs in time, for some constant . They also studied a related problem where the input consists of a plane graph, that is, a planar graph with a fixed embedding. We call this problem Embedded Face Cover Number. For this problem, they considered parameterization by the number of terminals , and gave the first subexponential FPT algorithm with a running time of .
A special case of Embedded Face Cover Number with , parameterized by the face cover number, was studied by Kloks et al. [21]. They showed that the problem can be solved in time . Subsequently, their result was improved by Fernau and Juedes [12], whose algorithm runs in time and further by Koutsonas and Thilikos [22] who gave an algorithm with a running time of . This problem can be easily reduced to Red-Blue Dominating Set, a variant of Dominating Set on 2-colored graphs. All the aforementioned algorithms indirectly find the minimum face cover of the input plane graph by solving Red-Blue Dominating Set. A direct FPT algorithm for the problem was given by Abu-Khzam et al. [1]. However, with a running time of , their algorithm is not subexponential in the parameter.
Given the fixed-parameter tractability of both the above problems, a natural line of inquiry is whether there exists a polynomial kernel for the problem. For Embedded Face Cover Number, Garnero et al. [16] showed that a linear kernel exists by reduction to Red-Blue Dominating Set. Before their work, a quadratic kernel was known to exist due to the result of Kloks et al. [21]. To date, it was not known whether Face Cover Number has a polynomial kernel. We answer this question in the affirmative by presenting a cubic kernel for the problem parameterized by the face cover number.
Theorem 1.
Given an instance of Face Cover Number, we can produce a kernel in polynomial time such that .
Overview of the algorithm.
Our approach is to perform dynamic programming over an SPR-tree of the given planar graph. SPR-trees are classic data structures that have often been useful for algorithm design on planar graphs. At a high level, an SPR-tree can be viewed as a tree-structured decomposition of a planar graph into its 3-connected subgraphs. Every node of this tree-structure is associated with a graph called the skeleton of that node. The graph induced at any node is obtained by replacing each of the so-called virtual edges (edges of the skeleton that are not actual edges of the planar graph) by the graphs induced at the children of that node. In this sense, endpoints of virtual edges can be viewed as an “interface” between the graph induced at a node and the graphs induced at its children. Each node of the SPR-tree has a type – S, P or R – depending on the structure of its skeleton.
With this in mind, we aim to construct a kernel for Face Cover Number in a leaves-to-root fashion along an SPR-tree of the input graph. For this, a natural attempt at the dynamic programming step is to try to replace parts of the graph that correspond to an SPR-tree rooted at a child of that SPR-tree by an inductively assumed kernel. However, this naïve approach comes with some technical obstacles: how do we replace a subgraph with a kernel in which we are not ensured that the interface to the subgraph remains? On a more fundamental level, this simple idea is doomed to fail because while the face cover number of the kernel may be the same, it might interact differently with the rest of the graph than the subgraph we replace it with (see Figure 1). Consequently, we need to strengthen what we inductively assume of kernels constructed so far and then also demonstrate in each dynamic programming step that these assumptions are satisfied after carrying out the reduction steps. Crucially, our stronger assumptions allow us to preserve the way in which the face cover of the graph induced at any child node interacts with the graph induced at the parent node during kernelization. We call a kernel that satisfies our stronger assumptions a nice kernel, and our target is to dynamically compute such a kernel.
While many parts of our dynamic programming procedure require us to devise reduction rules that are specific to the skeleton and hence the type of node we are considering (S, P or R), some subgraphs that are induced at the children of a node have sufficiently simple face covers. Hence, we can replace them by constant-sized subgraphs and obtain a nice kernel in which we only need to handle subgraphs induced at children that have significantly more complex interactions with the skeleton of the parent.
We refer to the simple subgraphs as terminal-free, unproblematic or semi-problematic components depending on whether they contain terminals, and if so, whether they can be covered optimally using only faces that interact with the rest of the graph. We describe polynomial-time algorithms to recognize each of them. We call the remaining complex subgraphs induced by children problematic. At each node type, the overall strategy is to bound the number of virtual edges that we need to consider by a polynomial in the prospective face cover number . Once we achieve that, we can then reduce the skeleton in a way that we can bound the number of its non-virtual edges in . Both of these are the steps that are the most specific to the node types. Finally, we inductively replace the problematic virtual components by their kernels and any possible remaining non-problematic ones by their constant-size replacements – this last step does not depend on the particular node type.
Concerning the node-type specific arguments, simple reduction rules like edge deletions and contractions can be used at S-nodes and P-nodes. However, such simple reduction rules are difficult to control at R-nodes, which, of all the node types admit the structurally most complex skeletons, namely 3-connected planar graphs. Deleting or contracting edges from a 3-connected planar graph does not, in general, preserve 3-connectivity. This is of great relevance for face cover numbers because, before any reduction, the skeleton has a unique embedding, a property that we cannot easily preserve during reduction. For this reason, during the kernelization for R-nodes, we switch to the embedded setting, and formulate reduction rules that take the initial fixed embedding into account. To transition back to the setting in which we consider a non-embedded graph, we re-establish 3-connectivity by what we call “rigidizing” the embedded nice kernel. While doing so, we take care not to change the sets of terminals of the nice kernel that occur together on a face, and hence obtain a non-embedded nice kernel at R-nodes.
Organization.
In Section 2, we give necessary definitions and notation. In Section 3, we give formal definitions of terminal-free, unproblematic or semi-problematic and problematic components, and algorithms to distinguish them. Then, in Section 4 we define the notion of a nice kernel and describe the replacements of the components from Section 3, which are not node-type specific. In Section 5, we turn to the actual formulation of the dynamic program. We conclude in Section 6. The omitted proofs are marked with and can be found in the full version of the paper [17].
2 Preliminaries
Graph terminology.
We follow standard graph terminology [9]. A graph is a pair , such that . The elements of are called the vertices of the graph and the elements of are called edges. The number of vertices of a graph is its order denoted by . A subgraph of , written as , is a graph such that and . is an induced subgraph of , if for all , if then .
A path is a non-empty graph of the form and , where all are distinct. The vertices and are called the endpoints of . An induced path is a path in which all the vertices except the endpoints have degree two. The number of edges in a path is its length.
A graph is connected if there is a path between any two vertices in a graph, and disconnected otherwise. A graph is biconnected if there does not exist any vertex whose removal from the graph results in a disconnected graph. Similarly, a graph is called 3-connected if there does not exist a subset of vertices of size two whose removal disconnects the graph.
SPR-trees.
An SPR-tree is a rooted tree in which each node is associated with a multigraph called the skeleton of the node. The nodes, and their skeletons, have one of three types:
-
1.
S node: These are nodes whose skeleton forms a cycle of three or more vertices.
-
2.
P node: These are nodes whose skeleton is a graph with exactly two vertices and at least three edges between them. Such a graph is called a dipole.
-
3.
R node: These are nodes whose skeleton forms a 3-connected graph that is not a cycle or a dipole.
Each edge between two nodes and of the SPR-tree is associated to one edge with an ordering of its endpoints in the skeleton of and one edge with an ordering of its endpoints in the skeleton of . Overall, the edge of the skeleton of each node is allowed to be associated to at most one edge of the SPR-tree in this way. These skeleton edges that are associated to SPR-tree edges are called virtual edges. The edges of the skeleton of any node that are not virtual are called real. For the subtree rooted at a node of the SPR-tree the graph induced by it is inductively defined as follows.
-
if is a leaf, the graph induced by the subtree rooted at is the skeleton of .
-
if has children , the graph induced by the subtree rooted at is the graph arising from the skeleton of by doing the following for each : Insert the graph induced by the subtree rooted at ; identify the first and second endpoint of the virtual edge in the skeleton of that is associated to with the first and second endpoint respectively of the virtual edge in the skeleton of that is associated to ; and lastly, delete the virtual edges corresponding to . Intuitively speaking, the graph induced by the subtrees rooted at are “glued-in” in place of the respective virtual edges of the skeleton of .
We say that an SPR-tree is an SPR-tree of the graph that it induces.
Lemma 2 (Hopcroft and Tarjan [18]).
An SPR-tree of a biconnected planar graph can be constructed in linear time.
For a node of an arbitrary fixed SPR-tree of , we denote the subgraph induced by the subtree rooted at by . We call the subgraph induced by a subtree rooted at a child of a virtual component of . Let be the endpoints of the virtual edges associated to where is a child of . We call and the corners of the virtual component of associated with . We call the edge the corner edge of . We refer to the virtual component of associated with plus its corner edge as the enhancement of that virtual component. In an embedding of an enhancement, we call the two faces containing the corner edge external faces and the remaining faces internal faces. If itself has no corners, i.e. is the root of the SPR-tree, then is equal to its enhancement (we pick an arbitrary edge of and regard it as the corner edge and its endpoints as corners).
Kernelization.
A kernelization for a parameterized problem is an algorithm that takes as input an instance of , runs in time and outputs an instance of such that: (1) is a YES-instance if and only if is a YES-instance (2) , for some computable function , and (3) , for some computable function . The output of a kernelization is referred to as a kernel. We say that is a polynomial kernel if .
Embedded graphs.
A drawing of a connected planar graph is defined as a mapping of the vertices in to points in and edges to simple curves between the points corresponding to its endpoints, such that: (1) distinct edges have distinct pair of endpoints, and (2) the interior of an edge does not contain any vertex or any point of another edge. Given a planar drawing, the (clockwise) cyclic order of edges incident on every vertex is fixed. The set of circular orderings of edges around each vertex is called a rotation system. A (combinatorial) embedding is an equivalence class of planar drawings defined by their rotation systems. We frequently identify vertices and edges with their drawings and embeddings with an arbitrary drawing from its represented equivalence class.
The restrictions of embeddings and drawings to a subgraph of a graph are called subembeddings and subdrawings respectively. Let be a plane graph and a node in its SPR-decomposition. Flipping is defined by reversing the the rotation system restricted to (i.e. for the corner vertices, we only reverse edges in ).
For every drawing of a planar graph, the inclusion-maximal regions of are called faces. The unique unbounded face is the outer face, all other faces are inner faces. Let be a face. We say that a face covers a vertex if the drawing of lies on the boundary of . For the two external faces of the enhancement , we define their corresponding faces in as the faces whose boundaries restricted to are equal. Given a face cover of , we define the induced face cover of the enhancement of as the set of internal faces of that are in together with the external faces corresponding to a face in . The embedded face cover number of an embedded graph with terminals is the minimum number of faces needed to cover . The face cover number of a graph with terminals () is the minimum number of faces over all embeddings of that cover the terminals of .
One-connected case
By standard arguments in face cover literature which we repeat below for self-containedness, we can reduce to considering a biconnected input graph. Also, note that we can reduce to connected graphs as follows. If is disconnected, we kernelize every connected component separately, and then we check if there are more than components that need at least 2 faces for the face cover (using the existing FPT algorithm from [3] for ). If there are, we have a NO-instance.
The following definition will be useful to show that we can reduce to the case of a biconnected input graph. A cut vertex in is a vertex such that has two or more connected components. A block of graph is a maximal biconnected induced subgraph. A block is trivial if it contains exactly one edge and non-trivial otherwise. A block-cut tree of a graph has a vertex for each block and cut vertex in . We denote the block-cut tree by . There exists an edge in for a pair of nodes corresponding to a block and cut vertex in if and only if the cut vertex belongs to the block.
Lemma 3 (Hopcroft and Tarjan [19]).
A block-cut tree of a graph can be computed in linear time.
We now give the reduction to the biconnected case.
Lemma 4.
If we can compute for every 2-connected planar graph and every , then we can compute for every planar graph and .
Proof.
If is not 2-connected, consider the block-cut tree of . We will compute the Face Cover Number inductively, starting from the leaves. Let be a cutvertex with children and let be the subgraph of that corresponds to the subtree of rooted at . We distinguish two cases:
-
If is a terminal: we set , since we know that in each , the vertex will be covered, and we can ensure that the face used to cover it is the outer face of .
-
If is not a terminal: for each , we compute and . If there is exists such that , we can ensure that the outer face of covers . Thus adding to does not increase the face cover number. We add to and use the above argument to compute . Otherwise, we set .
3 Types of Virtual Components
To facilitate constructing the kernel, we will divide virtual components into 4 groups. The terminal-free, unproblematic and semi-problematic will be replaced by constant-sized gadgets, while the problematic ones will eventually be replaced by inductively constructed kernels.
Definition 5 (Types of virtual components).
We distinguish different types of virtual components.
-
1.
Virtual components that have no terminals except possibly the corners – we call such virtual components terminal-free.
-
2.
Virtual components that have a face cover consisting of exactly one external face – we call such virtual components unproblematic.
-
3.
Virtual components that are not unproblematic, have a face cover consisting of both external faces but also have face cover number one – we call such virtual components semi-problematic.
-
4.
All other virtual components which we call problematic.
For unproblematic virtual components, we say that an embedding witnesses their unproblematicness if in that embedding one of the external faces covers all terminals. For semi-problematic components, we say that an embedding witnesses their semi-problematicness if the face cover number of that embedding is one, but both the external faces can jointly cover all the terminals.
We first argue that the types of virtual components can be recognized in polynomial time and then present kernelization steps for such virtual components in Section 4. Obviously, terminal-free virtual components can be recognized in linear time and to recognize problematic components, one merely needs to recognize unproblematic and semi-problematic components. For this, we can give dynamic programs along the SPR-subtree.
Lemma 6 ().
Deciding whether a virtual component is unproblematic is in .
Lemma 7 ().
Deciding whether a virtual component is semi-problematic is in .
4 Nice Kernels and Basic Virtual Component Replacement
In this section, we describe a kernelization procedure that inductively assumes that we have special kernels, which we refer to as small nice kernels of the enhancement of each virtual component of the graph induced at the node of the SPR-tree under consideration.
Definition 8.
Let be an instance of Face Cover Number. Given a node of the SPR-tree of consider its enhancement with corner vertices . We define as the sizes of the smallest face cover of the enhancement of such that they contain exactly 0, 1, 2 external faces respectively. Let be a graph with terminal set . We say that is a nice kernel of if the following conditions are fulfilled:
-
K1
contains vertices and the edge .
-
K2
For , we have that or that and .
-
K3
For every , we have that or that and ,
A nice kernel is called small if
-
K4
There is some constant (that does not depend on ) such that is the minimum number of internal faces used in any minimum face cover of .
The condition (K1) ensures that we can construct the kernel inductively, i.e. that in , we can replace a virtual component corresponding to its child by a nice kernel for it. Intuitively, we want and to behave the same, and in particular interact with the rest of the graph in the same way. The conditions (K2) and (K3) say that if the face cover sizes of and differ, both of the face covers are too big to lead to a global solution. One important thing to note is that the corner vertices might be covered by from the “outside” of . Thus we need to compare face covers of and covering all terminals except for the corners. In (K3), we only compare the values of as the values of and are equal by (K2) (because the corners are covered by the corresponding external faces).
Ultimately, we will design a leaves-to-root dynamic program along the SPR-tree to obtain small nice kernels for each with being a node of an SPR-tree of . We can verify that a small nice kernel at the root of the SPR-tree is in fact a polynomial kernel.
Lemma 9.
Let be the root of the considered SPR-tree for . A small nice kernel of is a polynomial-sized kernel for as an instance of Face Cover Number.
Proof.
By the fact that for , has no corners and coincides with its enhancement, (K1)–(K3) are obsolete or equivalent to expressing instance equivalence of and as instances of Face Cover Number.
Moreover, by (K4) there is a constant such that where is the face cover number of (and hence also of ). This shows that is a cubic kernel for as an instance of Face Cover Number.
The next reduction rules replace “simple” virtual components by constant-sized graphs.
Reduction Rule 1.
Replace every virtual component without terminals by an edge between its corners.
Reduction Rule 2.
Replace every unproblematic component by a whose endpoints are identified with the corners and the degree-two vertex is a terminal.
We call the above graph a terminal-subdivided edge.
Reduction Rule 3.
Replace every semi-problematic component by the gadget depicted in Figure 2 by connecting one corner to the vertex of the gadget by an edge and the other corner to the vertex .
As defined above, let be a node of the SPR-tree of and let be its enhancement.
Lemma 10 ().
Let and be the graph that arises from by applying the described replacements (Reduction 1, Reduction 2 and Reduction 3) and the set of terminals in it respectively. Then is a nice kernel of .
Next, we show that inductively replacing nice kernels for problematic virtual components yields a nice kernel.
Lemma 11.
Let be a problematic component of and be a nice kernel for . Let be the graph obtained from by replacing by . Then is a nice kernel for .
Proof.
Firstly, note that the replacement does not affect the skeleton of , so the corner vertices and corner edge of are preserved, i.e. (K1) is satisfied. Let be the corner vertices of and let be the enhancement of .
Let us now show (K2). Let . Fix an embedding of witnessing and let be the corresponding face cover. We aim to construct a face cover of from . Informally, we partition into two sets, and , where is the set of faces unaffected by the replacement of by , and contains the remaining faces of . Using the fact that is a nice kernel for , we construct a face cover of . The face cover will contain the faces in and the faces corresponding to .
Formally, we define . In other words, contains faces in that are disjoint from except possibly for its corner vertices. Let . The faces in correspond to faces of : those that are completely contained in correspond to internal faces of (with the same set of vertices) and those that contain vertices outside of correspond to the external faces of . Let be the set of faces of corresponding to . Note that is a face cover of covering all terminals in except possibly for (as these vertices may be covered by faces in ). Let be the number of faces in corresponding to external faces of . We distinguish two cases depending on the value of :
If .
in this case, all terminals of are covered by a face in . By an exchange argument, it is easy to see that is optimal, i.e. it witnesses , so we have . Fix an embedding of witnessing and let be the corresponding face cover. We set , .
If .
in this case, and might not be covered by a face in . Let be sets of terminals obtained by removing the corner vertices not covered by a face in from and respectively. Similarly, we have that . Fix an embedding of witnessing and let be the corresponding face cover.
We embed by using the above embedding of and leaving the remaining part of the same as in . If , we embed inside such that the external face of that belongs to corresponds to the face in containing . If we can embed with an arbitrary choice of external faces (i.e. the way it is “flipped” inside is irrelevant). Now we have obtained an embedding of .
We define as the set of faces of corresponding to . Note that the faces in are faces of (since they do not contain vertices from ) and that .
We claim that is a face cover of . Clearly, all terminals except are covered: those in are covered by a face in , and the others are covered by a face in . The vertices and (if they are terminals) are covered by a face in if they were covered by a face in , and otherwise they are covered by a face in . Thus is a face cover of . It remains to show the size bounds.
If , then we have , so by (K2) and (K3). Thus , so . If , we distinguish two cases. If , then , so . If , then , so .
To show (K3), we remove one or both corner vertices from and and proceed the same as the case .
5 Node-Type Specific Kernelization Steps
In the following subsections, we describe the node-specific reduction rules that will allow us to obtain small nice kernels at each node type. By Lemma 9, this implies a polynomial kernel for the entire graph. For each of these sections, consider a node of the SPR-tree of .
5.1 R-node
It is well-known that any 3-connected planar graph, in particular the skeleton of an R-node, has a unique embedding up to homeomorphism [5]. Our strategy is to fix this embedding of the skeleton of an R-node, kernelize it based on this fixed embedding, possibly losing 3-connectivity, and then rigidize the resulting kernel to regain control over the faces that contain terminals.
We first make the following general observation about 3-connected embedded graphs.
Proposition 12 ().
In any 3-connected planar graph with at least four vertices, no three vertices share more than one face.
Proposition 12 can easily be adapted to when some edges are subdivided by terminals, in particular as is the case in the replacement for unproblematic virtual components in Section 4. For ease of notation, we refer to graphs that may arise from 3-connected planar graphs by replacing some edges by terminal-subdivided edges as almost 3-connected planar and to the graph that arises from the skeleton of in this way as extended skeleton.
Proposition 13 ().
In any embedding of any almost 3-connected planar graph with at least seven vertices, no four vertices share more than one face.
Let us now actually focus on where is an R-node of the SPR-tree of . For problematic virtual components, we make the following simple observation.
Observation 14 ().
If has more than problematic virtual components, then it has no face cover of size at most .
We can also bound the number of semi-problematic virtual edges that we need to consider.
Proposition 15 ().
If there is a face of the skeleton of with more than semi-problematic virtual edges on its boundary, then there is no face cover of size at most for this embedding.
Corollary 16 ().
If there are more than semi-problematic virtual edges in the skeleton of , then there is no face cover of size at most .
Finally, we reduce the number of unproblematic virtual edges and in fact, the total number of terminals in the skeleton. For this, we first make a general statement about almost 3-connected planar graphs.
Proposition 17 ().
In the embedding of an almost 3-connected planar graph, a face with more than terminals on its boundary has to be in any face cover of size at most .
Together with the safeness of the basic replacement step for unproblematic virtual components (cf. the proof of Lemma 10), this immediately can be used to justify the following reduction rule which we refer to as terminal-heavy face reduction.
Lemma 18 ( Safeness of terminal-heavy face reduction).
Replacing all unproblematic virtual components by terminal-subdivided edges and then for each face of the extended skeleton with more than terminals, turning all but an arbitrary set of of these terminals into non-terminals yields a nice kernel.
Proposition 19 ().
If after exhaustive application of terminal-heavy face reduction for , there are more than terminals, then there is no face cover of size at most .
Assume from now on that terminal-heavy face reduction was exhaustively applied to ; in particular, we will no longer explicitly mention it as a precondition in the following theorem statements. We have now bounded the number of terminals and edges in the extended skeleton, which we will want to replace by inductively assumed kernels. It remains to reduce the parts of the skeleton that contain neither. During this modification of the extended skeleton, for the first time, we might lose the uniqueness of its embedding. We will fix its embedding and take it into account in the following modifications. For this, we explicitly speak about nice kernels of Embedded Face Cover Number, rather than nice kernels for Face Cover Number i.e. gets replaced by its fixed-embedding analogue in (K1)–(K3).
We can bound the number of faces containing at least two of the following objects: terminals, corners or endpoints of virtual edges. We refer to any such vertex as interesting.
Proposition 20 ().
The number of faces with at least two interesting vertices in the skeleton of is bounded above by .
Reduction Rule 4 (Boring edge removal).
Delete edges of the extended skeleton that are only on boundaries of faces that do not contain interesting vertices (see Figure 4).
Note that these edges in the reduction rule above are uniquely determined because the embedding of the extended skeleton is fixed.
Next, we consider each face of the skeleton of that has some arbitrary fixed terminal, corner or endpoint of a virtual edge on its boundary.
Reduction Rule 5 (Private face merging).
If there exists a face in the extended skeleton that has at most one fixed interesting vertex, say , on its boundary, and is incident on another face containing but no other interesting vertex, delete the shared boundary of and connected to (see Figure 5).
Proposition 21 ( Safeness of private face merging).
Let be the graph obtained from by exhaustively applying Reduction 4 and Reduction 5. For an arbitrary embedding of , embedded according to the restriction of the embedding of to is a nice kernel of for Embedded Face Cover Number.
Boring edge removal and private face merging allow us to reduce the problem to a setting in which the number of faces of the skeleton is bounded.
Lemma 22 ().
Let be the graph obtained from the skeleton of by exhaustively applying Reduction 4 and Reduction 5, embedded according to the restriction of the unique embedding of the skeleton of to . has at most faces.
So far, we have shown an upper bound only on the number of faces. To obtain a small number of vertices rather than faces, we apply the following reduction rule.
Reduction Rule 6 (Boring edge contraction).
Replace each induced path of length at least two in the skeleton, whose interior is free from interesting vertices, by a single edge. Further, we delete vertices of degree one that are not interesting vertices.
Let be the graph obtained after applying Reduction 4 and Reduction 5 to embedded in an arbitrary way. Then let be the embedded graph obtained after exhaustively applying Reduction 6. The sets of terminals occurring together on any face of do not change in . Hence, this is safe with respect to Embedded Face Cover Number by the same argument as Proposition 21.
Proposition 23.
Let be the graph obtained from by exhaustively applying boring edge removal, private face merging and then boring edge contraction. For an arbitrary embedding of , let be embedded according to the restriction of the embedding of to in which edges that replace paths trace these paths at an -distance. Then, is a nice kernel of for Embedded Face Cover Number.
Finally, we are at a point where we can start bounding the number of vertices.
Lemma 24 ().
Let be the graph obtained from the skeleton of by exhaustively applying boring edge removal, private face merging and then boring edge contraction. .
We will now re-establish uniqueness of the embedding of our kernelized skeleton by rigidizing (i.e. adding structures to the embedded graph that render it 3-connected).
Definition 25.
Let be an embedded planar graph and . The rigidization of around is the embedded graph arising from in the following way. For each edge where introduce two new copies of , drawn at an -distance from . Subdivide each of and its copies by many vertices, which we refer to as subdivision vertices at -distance from . Introduce the unique planar cycle on the subdivision vertices at -distance of each vertex in .
See Figure 6 for an example of the above definition.
Rigidization does not significantly increase the size of a graph:
Observation 26 ().
Let be an embedded planar graph and . .
For us, the intended purpose of rigidization is to fix an embedding, which is formally supported by the following lemma.
Lemma 27 ().
Let be an arbitrary embedded connected planar graph, and be the set of vertices that are contained in a separator of size at most two of . is 3-connected.
It is straightforward to verify that the graph obtained from the skeleton of by exhaustively applying boring edge removal, private face merging and then boring edge contraction is connected. Hence where is the set of all cutvertices and vertices in 2-separators of is planar and 3-connected by Lemma 27 and hence has a unique embedding which allows us to return from considering Embedded Face Cover Number to Face Cover Number on abstract graphs. That safeness is maintained in this step crucially relies on the fact that we never rigidize around interesting vertices.
Lemma 28 ().
Let be obtained from the skeleton of by exhaustively applying boring edge removal, private face merging and then boring edge contraction. No vertex separator of size at most two in contains an interesting vertex.
The following theorem essentially shows instance equivalence of what will be – up to the replacement of virtual components – the small nice kernel for .
Theorem 29 ().
Let and be the graphs obtained from and its skeleton respectively by exhaustively applying boring edge removal, private face merging and then boring edge contraction. where is the set of all cut-vertices and vertices that are contained in a separator of size two in is a nice kernel of for Face Cover Number.
Proof Sketch.
(K1) is trivially satisfied by construction.
For arguing (K2) and (K3), fix an embedding of in which its minimum face cover number using a specified number of external faces and covering a specified set of corners (we refer to this as generalized face cover number) can be realized. By Proposition 23, is a nice kernel for as an instance for Embedded Face Cover Number. By Lemma 27, has a unique embedding which necessarily coincides with the unique one of the skeleton of on its restriction to where copies of edges are embedded at an -distance from the corresponding original edge and subdivision vertices are drawn in cycles at -distance around the corresponding vertices in . Further, by construction, replacing the virtual edges in this embedding by the embeddings of the corresponding virtual components of results in an embedding of in which the faces are the same as in the embedding of apart from some vertices in being replaced by subdivision vertices in some face cycles and there being new face cycles consisting only of vertices in and subdivision vertices. By Lemma 28, this means that the sets of terminals, corners and virtual edge endpoints from the skeleton of that occur together on face boundaries are the same in the fixed embedding of and the described embedding of . This means that the abstract graph has at most the same face cover number as the embedded graph , i.e. the generalized face cover number of as an abstract graph.
Conversely, we can also argue that the has at least the same generalized face cover as . Similarly as the other direction of inequality, we can start from an embedding of and transform it to an embedding of which realizes the same face cover number even when requiring the inclusion of a specific number of external faces.
As a final step, we replace all virtual components by their corresponding constant-size gadgets if they are semiproblematic and their inductively assumed kernels if they are problematic. By Lemma 10 this results in a nice kernel. We can also show that this final nice kernel which we call is also small.
Theorem 30 ().
as obtained by the process described in this subsection is small.
5.2 S-node
In an S-node , we first take care of the real edges in the skeleton and terminal-free virtual components as follows.
Reduction Rule 7.
If there are at least two terminals in the skeleton of the S-node that are not corner vertices, turn all but one into non-terminals. If there is a path of length at least two consisting of real edges, replace it by a single real edge.
Reduction Rule 8.
Contract each terminal-free virtual component to a vertex.
Our next task is to reduce the number of unproblematic components. If we consider only and , it would suffice to keep only one unproblematic component (since all the other ones will be covered by the outer faces that are in the face cover). However, in case of , we do not use any of the outer faces in the face cover, so we have to use internal faces of the unproblematic components. In this case, having at least unproblematic components guarantees that will be larger than .
If there is an unproblematic component without internal faces (e.g. a terminal subdivided edge), we say that , and we an show that the same holds after applying the reduction rules (i.e. after applying reduction rules, there is no face cover without external faces).
Reduction Rule 9.
If there are at least unproblematic virtual components, take all but of them and contract all their edges. For each remaining unproblematic component, if it has a face cover consisting of one internal face, replace it by a triangle two of whose vertices are corner vertices of the component, and the third vertex is a terminal. Otherwise, replace it by a terminal subdivided edge.
For the same reason, we need to keep semi-problematic components:
Reduction Rule 10.
If there are at least semi-problematic virtual components, take all but of them and contract all their edges. Replace the remaining semi-problematic components by using the gadget in Figure 2.
Finally, we replace each unreplaced problematic virtual component by its inductively assumed kernel for its enhancement restricted to the virtual component.
Lemma 31 ().
Consider an S-node and let be the graph obtained by applying the reduction rules exhaustively. Then is a nice kernel for .
Lemma 32 ().
After applying Reduction 7, 8, 9, 10 exhaustively on , we obtain a small nice kernel.
5.3 P-node
Since we assume that has no parallel edges, no leaf node of the SPR-tree of is a P-node. While the graph has no parallel edges, the application of certain reduction rules may create parallel edges. We deal with those edges as follows.
Let be a parallel node and let be the enhancement of the graph induced on the sub-SPR-tree rooted at . In the following discussion, after applying each of the reduction rules exhaustively the graph obtained from will be denoted by .
Reduction Rule 11.
Delete all but one real edge of the skeleton of from .
Proposition 33 ().
Reduction 11 creates a nice kernel.
Trivially, there can be at most problematic virtual components in . We will next argue that we can bound the number of terminal-free, unproblematic and problematic virtual components linearly in .
Reduction Rule 12.
Delete all but one terminal-free virtual component from .
Proposition 34 ().
Applying Reduction 12 creates a nice kernel.
We claim that after we apply Reduction rules 11 and 12 exhaustively, the number of virtual child components of a P-node is bounded linearly in . We say that two virtual child components share an internal face if some internal face of the P-node skeleton is formed by merging external faces contained in the respective face covers of the child virtual components.
Proposition 35 ().
If there are more than virtual components in , then there does not exist a face cover of size at most in .
By the above proposition, the number of virtual edges in the skeleton of a P-node is . Replacing the corresponding virtual components by small graphs in helps to bound its size. We now apply Reduction 1 through Reduction 3 on the graph exhaustively. Additionally, we replace every problematic virtual component by its small nice kernel.
6 Conclusion
This paper presents the first polynomial kernel for the Face Cover Number problem, with a cubic dependence on the parameter. For a restricted version of the problem – where the embedding is provided as part of the input and the terminal set includes all vertices of the graph – a linear kernel was previously known. A natural direction for future research is to close the gap between the kernel sizes for the embedded and non-embedded variants of the problem.
Open Question 1.
Does there exist a linear kernel for Face Cover Number?
Addressing this question likely necessitates a deeper understanding of the structural properties of 3-connected planar graphs.
Following the fixed-parameter tractable (FPT) algorithm developed by Bienstock and Monma [3], there have been no subsequent improvements for the non-embedded case. In particular, no subexponential-time algorithm is currently known for Face Cover, prompting the following question:
Open Question 2.
Is there an algorithm that solves Face Cover in time, where is the face cover number?
It is important to note that while bidimensionality theory applies to the variant with , the general form of the problem does not fall within this framework. Addressing Open Question 2 will therefore require the development of novel algorithmic ideas beyond existing techniques.
References
- [1] Faisal N. Abu-Khzam, Henning Fernau, and Michael A. Langston. A Bounded Search Tree Algorithm for Parameterized Face Cover. Journal of Discrete Algorithms, 6(4):541–552, 2008. doi:10.1016/J.JDA.2008.07.004.
- [2] Marshall Bern. Faster Exact Algorithms for Steiner Trees in Planar Networks. Networks, 20:109–120, 2006.
- [3] Daniel Bienstock and Clyde L. Monma. On the Complexity of Covering Vertices by Faces in a Planar Graph. SIAM Journal of Computing, 17(1):53–76, 1988. doi:10.1137/0217004.
- [4] Glencora Borradaile, Amir Nayyeri, and Farzad Zafarani. Towards Single Face Shortest Vertex-Disjoint Paths in Undirected Planar Graphs. In Proc. ESA 2015, volume 9294 of Lecture Notes in Computer Science, pages 227–238. Springer, 2015. doi:10.1007/978-3-662-48350-3_20.
- [5] Gunnar Brinkmann. A simple and elementary proof of whitney’s unique embedding theorem. Ars Math. Contemp., 20(1):195–197, 2021. doi:10.26493/1855-3974.2334.331.
- [6] Danny Chen and Xiadong Wu. Efficient Algorithms for -Terminal Cuts on Planar Graphs. Algorithmica, 38:299–316, February 2004. doi:10.1007/S00453-003-1061-2.
- [7] Danny Z. Chen and Jinhui Xu. Shortest Path Queries in Planar Graphs. In Proc. of STOC 2000, pages 469–478. ACM, 2000. doi:10.1145/335305.335359.
- [8] Elias Dahlhaus, David S. Johnson, Christos H. Papadimitriou, Paul D. Seymour, and Mihalis Yannakakis. The Complexity of Multiterminal Cuts. SIAM Journal on Computing, 23(4):864–894, 1994. doi:10.1137/S0097539792225297.
- [9] Reinhard Diestel. Graph Theory. Springer Publishing Company, Incorporated, 5th edition, 2017.
- [10] Jeff Erickson and Amir Nayyeri. Shortest Non-Crossing Walks in the Plane. In Proc. of SODA 2011, pages 297–208. SIAM, 2011. doi:10.1137/1.9781611973082.25.
- [11] Ranel E. Erickson, Clyde L. Monma, and Arthur F. Veinott. Send-and-Split Method for Minimum-Concave-Cost Network Flows. Mathematics of Operations Research, 12(4):634–664, 1987. doi:10.1287/MOOR.12.4.634.
- [12] Henning Fernau and David W. Juedes. A geometric approach to parameterized algorithms for domination problems on planar graphs. In Proc. MFCS 2004, volume 3153 of Lecture Notes in Computer Science, pages 488–499. Springer, 2004. doi:10.1007/978-3-540-28629-5_37.
- [13] Greg N. Frederickson. Planar Graph Decomposition and All Pairs Shortest Paths. Journal of ACM, 38(1):162–204, 1991. doi:10.1145/102782.102788.
- [14] M. R. Garey and David S. Johnson. The Rectilinear Steiner Tree Problem is NP-Complete. SIAM Journal of Applied Mathematics, 32:826–834, 1977.
- [15] Naveen Garg, Vijay V. Vazirani, and Mihalis Yannakakis. Primal-dual Approximation Algorithms for Integral Flow and Multicut in Trees. Algorithmica, 18:3–20, 1997. doi:10.1007/BF02523685.
- [16] Valentin Garnero, Ignasi Sau, and Dimitrios M. Thilikos. A Linear Kernel for Planar Red-Blue Dominating Set. Discrete Applied Math, 217:536–547, 2017. doi:10.1016/J.DAM.2016.09.045.
- [17] Thekla Hamm, Sukanya Pandey, and Krisztina Szilágyi. A polynomial kernel for face cover on non-embedded planar graphs, 2026. arXiv:2601.04169.
- [18] J. E. Hopcroft and R. E. Tarjan. Dividing a graph into triconnected components. SIAM Journal on Computing, 2(3):135–158, 1973. doi:10.1137/0202012.
- [19] John E. Hopcroft and Robert Endre Tarjan. Efficient Algorithms for Graph Manipulation [H] (algorithm 447). Commun. ACM, 16(6):372–378, 1973. doi:10.1145/362248.362272.
- [20] Sándor Kisfaludi-Bak, Jesper Nederlof, and Erik Jan van Leeuwen. Nearly ETH-tight algorithms for planar steiner tree with terminals on few faces. ACM Trans. Algorithms, 16(3):28:1–28:30, 2020. doi:10.1145/3371389.
- [21] Ton Kloks, Chuan-Min Lee, and Jiping Liu. New Algorithms for k-Face cover, k-Feedback Vertex set, and k -Disjoint cycles on plane and planar graphs. In Ludek Kucera, editor, Proc. WG 2002, volume 2573 of Lecture Notes in Computer Science, pages 282–295. Springer, 2002. doi:10.1007/3-540-36379-3_25.
- [22] Athanassios Koutsonas and Dimitrios M. Thilikos. Planar feedback vertex set and face cover: Combinatorial bounds and subexponential algorithms. Algorithmica, 60(4):987–1003, 2011. doi:10.1007/S00453-010-9390-4.
- [23] Mark R. Kramer and Jan van Leeuwen. The Complexity of Wire-Routing and Finding Minimum Area Layouts for Arbitrary VLSI Circuits. Advances in Computing Research, 2:129–146, 1984.
- [24] Robert Krauthgamer, James R. Lee, and Havana Rika. Flow-Cut Gaps and Face Covers in Planar Graphs. In Proc. of SODA 2019, pages 525–534. SIAM, 2019. doi:10.1137/1.9781611975482.33.
- [25] Robert Krauthgamer and Havana Inbal Rika. Refined Vertex Sparsifiers of Planar Graphs. SIAM Journal on Discrete Mathematics, 34(1):101–129, 2020. doi:10.1137/17M1151225.
- [26] James F. Lynch. The equivalence of theorem proving and the interconnection problem. SIGDA Newsletter, 5(3):31–36, 1975.
- [27] Sukanya Pandey and Erik Jan van Leeuwen. Planar Multiway Cut with Terminals on Few Faces. In Proc. SODA 2022, pages 2032–2063. SIAM, 2022. doi:10.1137/1.9781611977073.81.
- [28] Werner Schwärzler. On the complexity of the planar edge-disjoint paths problem with terminals on the outer boundary. Combinatorica, 29(1):121–126, 2009. doi:10.1007/S00493-009-2407-4.
- [29] Jens Vygen. NP-Completeness of Some Edge-Disjoint Paths Problems. Discrete Applied Mathematics, 61(1):83–90, 1995. doi:10.1016/0166-218X(93)E0177-Z.
