Generalized feedback vertex set problems on bounded-treewidth graphs: chordality is the key to single-exponential parameterized algorithms††thanks: All authors were supported by ERC Starting Grant PARAMTIGHT (No. 280152).
Édouard Bonnet
Univ Lyon, CNRS, ENS de Lyon, Université Claude Bernard Lyon 1, LIP UMR5668, France
Nick Brettell
Department of Mathematics and Computer Science, Eindhoven University of Technology, The Netherlands
O-joung Kwon
Supported by the National Research Foundation of Korea (NRF) grant funded by the Ministry of Education (No. NRF-2018R1D1A1B07050294).
Department of Mathematics, Incheon National University, Incheon, South Korea
Dániel Marx
Supported by ERC Consolidator Grant SYSTEMATICGRAPH (No. 725978).
Institute for Computer Science and Control, Hungarian Academy of Sciences, (MTA SZTAKI)
Abstract
It has long been known that Feedback Vertex Set can
be solved in time 2O(wlogw)nO(1) on n-vertex graphs of treewidth
w, but it was only recently that this running time was improved to
2O(w)nO(1), that is, to single-exponential
parameterized by treewidth. We investigate which generalizations of
Feedback Vertex Set can be solved in a similar running time.
Formally, for a class P of graphs, the Bounded P-Block Vertex Deletion problem
asks, given a graph G on n vertices and positive integers k
and d, whether G contains a set S of at most k vertices
such that each block of G−S has at most d
vertices and is in P. Assuming that P is
recognizable in polynomial time and satisfies a certain natural
hereditary condition, we give a sharp characterization of when
single-exponential parameterized algorithms are possible for fixed
values of d:
if P consists only of chordal graphs, then the problem can be solved in time 2O(wd2)nO(1),
if P contains a graph with an induced cycle of length ℓ⩾4, then the problem is not solvable in time 2o(wlogw)nO(1)
even for fixed d=ℓ, unless the ETH fails.
We also study a similar problem, called Bounded P-Component Vertex Deletion, where the target graphs have connected components of small size rather than blocks of small size,
and we present analogous results. For this problem, we also show that if d is part of the input and P contains all chordal graphs,
then it cannot be solved in time f(w)no(w) for some function f, unless the ETH fails.
00footnotetext: E-mail addresses: [email protected] (E. Bonnet), [email protected] (N. Brettell), [email protected] (O. Kwon), [email protected] (D. Marx)
An extended abstract appeared in Proceedings of the 12th International Symposium on Parameterized and Exact Computations, 2017 [4]. The corresponding author is O-joung Kwon.
1 Introduction
Treewidth is a measure of how well a graph accommodates a decomposition into a tree-like structure.
In the field of parameterized complexity, many NP-hard problems have been shown to have FPT algorithms when parameterized by treewidth; for example, Coloring, Vertex Cover, Feedback Vertex Set, and Steiner Tree (see [7, Section 7] for further examples).
In fact, Courcelle [6] established a meta-theorem that says that every problem definable in MSO2 logic can be solved in linear time on graphs of bounded treewidth. While Courcelle’s Theorem is a very general tool for obtaining algorithmic results, for specific problems dynamic programming techniques usually give algorithms where the running time f(w)nO(1) has better dependence on treewidth w. There is some evidence that a careful implementation of dynamic programming (plus maybe some additional ideas) gives optimal dependence for some problems (see, e.g., [14]).
For Feedback Vertex Set, standard dynamic programming techniques give 2O(wlogw)nO(1)-time algorithms and it was considered plausible that this could be the best possible running time. Hence, it was a remarkable surprise when it turned out that 2O(w)nO(1)-time algorithms are also possible for this problem by various techniques:
Cygan et al. [8] obtained a 3wnO(1)-time randomized algorithm by using the so-called Cut & Count technique, and Bodlaender et al. [2] showed there is a deterministic 2O(w)nO(1)-time algorithm by using a rank-based approach and the concept of representative sets.
This was also later shown in the more general setting of representative sets in matroids by Fomin et al. [12].
Generalized feedback vertex set problems.
In this paper, we explore the extent to which these results apply for generalizations of Feedback Vertex Set. The Feedback Vertex Set problem asks for a set S of at most k vertices such that G−S is acyclic, or in other words, every block of G−S is a single edge or a vertex. We consider generalizations where we allow the blocks to be some other type of small graph, such as triangles, small cycles, or small cliques; these generalizations were first studied in [5].
Formally, we consider the following problem.
Let P be a class of graphs.
[TABLE]
If d=1 or P={K1}, then this problem is equivalent to the Vertex Cover problem.
It is well known that Vertex Cover admits a 2O(w)nO(1)-time algorithm; see [7] for instance.
Moreover, if either (d=2 and {K1,K2}⊆P) or (d⩾3 and P={K1,K2}),
then this problem is equivalent to the Feedback Vertex Set problem.
In this case, the result of Bodlaender et al. [2] implies that Bounded P-Block Vertex Deletion can be solved in time 2O(w)nO(1).
Our main question is: when we regard d as a fixed constant,
for which graph classes P can this problem be solved in time 2O(w)nO(1)?
To obtain a general result, we require some assumptions on the class
P. First, in order to ensure that the solution can be checked in
polynomial time, we assume that P can be recognized in polynomial
time. Second, for deletion problems, it is usually reasonable to assume
that a superset of a solution S is also a solution: deleting more
vertices never hurts. If we define CP to be the class of graphs
where every block is in P, then we want to consider deletion
problems where CP is hereditary; that is, for every
graph G∈CP and every induced subgraph H of G, we have
H∈CP. It is easy to see that if P is hereditary, then
CP is also hereditary. However, for technical reasons, in our
setting it is more natural to consider a slightly weaker notion. Suppose
that we want to express the problem ”Delete k vertices such that every
block is a cycle or an edge.” We can express this problem by letting
P be the class containing K1, K2, and every cycle. But this
class is not hereditary: to make P hereditary, we would need to add
every path and disjoint union of paths; but clearly, these
(non-biconnected) graphs are irrelevant for our problem. Therefore, it
is natural to require P to be block-hereditary only: for
every G∈P and every biconnected induced subgraph H of G, we
have H∈P. The class consisting of K1, K2, and all cycles is
block-hereditary.
However, these two conditions are not sufficient to obtain single-exponential algorithms parameterized by treewidth.
A graph is chordal if it has no induced cycles of length at least 4.
The main result of this paper is that the existence of single-exponential algorithms is closely linked to whether the graphs in P we are allowing are all chordal or not.
We show that if P consists of all chordal graphs and satisfies the two previously mentioned conditions, then
Bounded P-Block Vertex Deletion can be solved in single-exponential time.
Theorem 1.1**.**
Let P be a class of graphs that is block-hereditary, recognizable in polynomial time, and consists of only chordal graphs.
Then Bounded P-Block Vertex Deletion can be solved in time 2O(wd2)k2n on graphs with n vertices and treewidth w.
We complement this result by showing that if P contains a graph that is not chordal, then single-exponential algorithms are not possible (assuming ETH), even for fixed d.
Note that
if P is block-hereditary and contains a graph that is not chordal, then this graph contains a chordless cycle on ℓ⩾4 vertices, and consequently the cycle graph on ℓ vertices is also in P.
Theorem 1.2**.**
Let P be a block-hereditary class of graphs that is polynomial-time recognizable.
If P contains the cycle graph on ℓ⩾4 vertices, then Bounded P-Block Vertex Deletion is not solvable in time 2o(wlogw)nO(1) on graphs with n vertices and treewidth at most w
even for fixed d=ℓ, unless the ETH fails.
Baste, Sau, and Thilikos [1] recently studied the complexity of a similar problem, where the task is to find a set of vertices whose deletion results in a graph with no minor in a given collection of graphs F, parameterized by treewidth. When F={C4}, this is equivalent to Bounded P-Block Vertex Deletion where P={K1,K2,K3}, and the complexity they obtain in this case is consistent with our result.
Whether this lower bound of Theorem 1.2 is best possible when P contains a cycle on ℓ⩾4 vertices remains open.
However, as partial positive evidence towards this, we note that when P contains all graphs, the result by
Baste, Sau, and Thilikos [1] implies that that Bounded P-Block Vertex Deletion can be solved in time 2O(wlogw)nO(1) when d is fixed,
as the minor obstruction set F consists of 2-connected graphs with d+1 vertices,
and contains a planar graph: the cycle graph of length d+1.
Bounded-size components.
Using a similar technique, we can obtain analogous results for a simpler problem, which we call Bounded P-Component Vertex Deletion, where we want to remove at most k vertices such that each connected component of the resulting graph has at most d vertices and belongs to P. If we have only the size constraint (i.e., P contains every graph), then this problem is known as Component Order Connectivity [9].
Let P be a class of graphs.
[TABLE]
Drange, Dregi, and van ’t Hof [9] studied the parameterized complexity of a weighted variant of the Component Order Connectivity problem; their results imply, in particular, that Component Order Connectivity can be solved in time 2O(klogd)n, but is W[1]-hard parameterized by only k or d.
The corresponding edge-deletion problem, parameterized by treewidth, was studied by Enright and Meeks [10].
For general classes P, we prove results that are analogous to those for Bounded P-Block Vertex Deletion.
Theorem 1.3**.**
Let P be a class of graphs that is hereditary, recognizable in polynomial time, and consists of only chordal graphs.
Then Bounded P-Component Vertex Deletion can be solved in time 2O(wd2)k2n on graphs with n vertices and treewidth w.
Theorem 1.4**.**
Let P be a hereditary class of graphs that is polynomial-time recognizable.
If P contains the cycle graph on ℓ⩾4 vertices, then Bounded P-Component Vertex Deletion is not solvable in time 2o(wlogw)nO(1) on graphs with n vertices and treewidth at most w even for fixed d=ℓ, unless the ETH fails.
Similar to Bounded P-Block Vertex Deletion, the result of Baste, Sau, and Thilikos [1] implies that
when P contains all graphs, Bounded P-Component Vertex Deletion can be solved in time 2O(wlogw)nO(1) when d is fixed.
When d is not fixed, one might ask whether Bounded P-Component Vertex Deletion admits an f(w)nO(1)-time algorithm; that is, an FPT algorithm parameterized only by treewidth.
We provide a negative answer, showing that the problem is W[1]-hard when P contains all chordal graphs, even parameterized by both treewidth and k.
We further prove two stronger lower bound results assuming the ETH holds.
Theorem 1.5**.**
Let P be a hereditary class containing all chordal graphs. Then Bounded P-Component Vertex Deletion is W[1]-hard parameterized by the combined parameter (w,k).
Moreover, unless the ETH fails, this problem
-
has no f(w)no(w)-time algorithm; and
2. 2.
has no f(k′)no(k′/logk′)-time algorithm, where k′=w+k.
Techniques for positive results.
We sketch the proof of Theorem 1.1.
Let P be a class of graphs that is block-hereditary and consists of chordal graphs.
A pair (G,S) consisting of a graph G and a subset S of its vertex set will be called a boundaried graph.
The key lemma can be briefly described as follows.
Suppose there are two boundaried graphs (G,S) and (H,S) with G[S]=H[S], and
we want to know whether
the graph obtained from G and H by identifying vertices in S has at most d vertices and its blocks are in P.
In the dynamic programming algorithm, we consider one part (G,S) as a partial solution, and (H,S) has a role in the hypothetical complementary solution.
We will show that we can guarantee the statement (∗) if
- (i)
G and H each have at most d vertices and their blocks are in P,
2. (ii)
for each non-trivial block B of G[S], the block of G containing B and the block of H containing B have no conflict near B (we explain this below), and
3. (iii)
if we make an auxiliary bipartite graph with bipartition (A,B) where
A is the set of connected components of G[S],
B is the union of the set of connected components of G and the set of connected components of H,
X∈A is adjacent to Y∈B if X is contained in Y,
then this bipartite graph has no cycles.
Section 3 is devoted to showing a simplified version of this statement (Proposition 3.1).
To establish the condition (ii),
we guess a graph g(B) for each non-trivial block B of G[S], where g(B) is the block containing B after combining G and H.
Note that this target graph g(B) must be a biconnected chordal graph with at most d vertices.
So we consider g(B) to be a biconnected chordal graph with distinct labels from {1,…,d}.
The necessary local information described in (ii) will be the set of labels of neighbors of B (with fixed labels on B) in the block of G containing B.
We will store this as h(B).
The important point is that for a chordal graph F and a connected vertex set Z,
there is an one-to-one correspondence between the connected components of F−Z and the connected components of the neighborhood of Z in F (see Lemma 2.1).
Therefore, the neighbors of B provide information about which connected components currently exist around B.
The meaning of “having no conflict” in (ii) is that the neighbors of B in the block of G and in the block of H have disjoint sets of labels.
The pair (g,h) will be considered as an index of the table of our dynamic programming algorithm.
Once we have considered (i) and (ii), we need to deal with the auxiliary bipartite graph in (iii).
For the (G,S) part, it is sufficient to know the auxiliary bipartite graph with components of G.
This can be stored as a partition of the set of connected components of G[S].
As the size of S corresponds to the treewidth of the given graph,
to obtain a single-exponential algorithm parameterized by treewidth, we need to efficiently deal with these partitions corresponding to partial solutions.
This part can be dealt with in a similar manner to the single-exponential time algorithm for Feedback Vertex Set, using representative-set techniques.
We recall the representative-set technique in Section 4, and prove a variant that is fit for our case.
In the algorithm, for each bag Bt of the tree decomposition,
we guess a deletion set X in Bt, and guess (g,h) for blocks in Bt∖X.
Whenever there is a partial solution corresponding to these information,
we keep the corresponding partition of the set of connected components on the boundary Bt∖X.
As we take a representative set after partial solutions are updated, we can solve the problem in time 2O(w)nO(1).
Lower bounds.
Theorem 1.4 is obtained by a reduction from Permutation k×k Independent Set, the problem of finding an independent set of size k in a graph with k2 vertices and O(k4) edges.
One can think of those vertices as forming a k-by-k grid, where one should select exactly one vertex per row and per column.
This problem cannot be solved in time 2o(klogk)kO(1), unless the ETH fails [15].
The crucial point is that the treewidth of the equivalent instances of Bounded P-Component Vertex Deletion and Bounded P-Block Vertex Deletion should be in Θ(k).
We achieve this by stretching the information into a chain of O(k4) almost identical pieces, each encoding one edge of the initial graph.
The pieces are linked by small separators of size 2k that propagate the row and column indices of each of the k choices for the independent set.
For Theorem 1.5, we propose a reduction from Multicolored Clique for the first item, and more or less the same reduction but from Subgraph Isomorphism for the second.
Again, the crux of the construction is obtaining an instance with low treewidth.
This time, we rely on an injective mapping of edges into integers, which is a folklore trick.
Vertices of the initial graph are encoded as a collection of candidate places where the constructed graph can be disconnected, regularly positioned on two paths, one with a small weight and one with a larger weight.
The edge gadget is similarly realized with certain vertices that are candidates for removal, as they can disconnect the constructed graph, each corresponding to a specific edge.
Organization.
The paper is organized as follows. Section 2 introduces the necessary notions including labelings, treewidth, and boundaried graphs.
In Section 3,
we prove structural lemmas about S-blocks, and in Section 4, we discuss representative sets for acyclicity.
In Section 5, we prove Theorems 1.1 and 1.3.
Section 6 shows that if P contains the cycle graph on d vertices, then both problems are not solvable in time 2o(wlogw)nO(1) on graphs of treewidth at most w,
unless the ETH fails.
In Section 7, we further show that if d is not fixed and P contains all chordal graphs, then
Bounded P-Component Vertex Deletion is W[1]-hard when parameterized by both k and w.
2 Preliminaries
Let G be a graph.
We denote the vertex set and the edge set of G by V(G) and E(G), respectively.
For a vertex v in G, we denote by G−v the graph obtained by removing v and its incident edges, and
for X⊆V(G), we denote by G−X the graph obtained by removing all vertices in X and their incident edges.
For X⊆V(G), we denote by G[X] the subgraph induced by the vertex set X.
A subgraph H of G is an induced subgraph of G if H=G[X] for some vertex subset X of G.
For two graphs G1 and G2, G1∪G2 is the graph with the vertex set V(G1)∪V(G2) and the edge set E(G1)∪E(G2),
and G1∩G2 is the graph with the vertex set V(G1)∩V(G2) and the edge set E(G1)∩E(G2).
For a vertex v in G, we denote by NG(v) the set of neighbors of v in G,
and NG[v]:=NG(v)∪{v}.
For X⊆V(G), we let NG(X):=(⋃v∈XNG(v))∖X.
A vertex v of G is a cut vertex if the deletion of v from G increases the number of connected components.
We say G is biconnected if it is connected and has no cut vertices.
Note that every connected graph on at most two vertices is biconnected.
A block of G is a maximal biconnected subgraph of G.
We say G is 2-connected if it is biconnected and ∣V(G)∣⩾3.
The length of a path is the number of edges in the path.
Similarly, the length of a cycle is the number of edges in the cycle.
An induced cycle of length at least four is called a chordless cycle.
A graph is chordal if it has no chordless cycles.
For a class of graphs P,
a graph is called a P-block graph
if each of its blocks is in P.
For two integers d1,d2 with d1⩽d2,
let [d1,d2] be the set of all integers i with d1⩽i⩽d2,
and for a positive integer d, let [d]:=[1,d].
For a function f:X→Y and X′⊆X,
the function f′:X′→Y where f′(x)=f(x) for all x∈X′
is called the restriction of f on X′, and is denoted f∣X′.
For such a pair of functions f and f′, we also say that f extends f′ to the set X.
2.1 Chordal graphs
We will use the following property of chordal graphs.
Lemma 2.1**.**
Let G be a connected chordal graph and X be a vertex subset such that G[X] is connected.
Then there is a bijection f from the set of connected components of G[NG(X)] to the the set of connected components of G−X such that a connected component C of G[NG(X)] is contained in a connected component H of G−X if and only if H=f(C).
Proof.
It is sufficient to show that no connected component of G−X contains
two connected components of G[NG(X)].
Suppose for a contradiction that
there is a connected component H of G−X containing
at least two connected components of G[NG(X)].
Let P be a shortest path between two connected components of G[NG(X)] in H,
with endpoints x1 and x2.
Let Q be a shortest path from NG(x1)∩X to NG(x2)∩X in G[X],
with endpoints y1∈NG(x1)∩X and y2∈NG(x2)∩X.
Then x1−y1−Q−y2−x2−P−x1 is a chordless cycle, contradicting the fact that G is a chordal graph.
Since G is connected, each connected component of G−X contains exactly one connected component of G[NG(X)].
Thus, the required bijection exists.
∎
2.2 Block d-labeling
For a graph G where every block has at most d vertices,
a block d-labeling of G is a function L:V(G)→[d] such that for each block B of G, L∣V(B) is an injection.
If a graph is equipped with a block d-labeling L, then it is called a block d-labeled graph, and we call L(v) the label of v.
Two block d-labeled graphs G and H are label-isomorphic if there is a graph isomorphism from G to H that is label preserving.
For biconnected block d-labeled graphs G and H, we say H is partially label-isomorphic to G if H is label-isomorphic to the subgraph of G
induced by the vertices with labels in H. Where there is no ambiguity, a block d-labeled graph will simply be called a d-labeled graph.
2.3 Treewidth
A tree decomposition of a graph G is
a pair (T,B)
consisting of a tree T
and a family B={Bt}t∈V(T) of sets Bt⊆V(G),
called bags,
satisfying the following three conditions:
-
V(G)=⋃t∈V(T)Bt,
2. 2.
for every edge uv of G, there exists a node t of T such that u,v∈Bt, and
3. 3.
for t1,t2,t3∈V(T), Bt1∩Bt3⊆Bt2 whenever t2 is on the path from t1 to t3 in T.
The width of a tree decomposition (T,B) is max{∣Bt∣−1:t∈V(T)}. The treewidth of G is the minimum width over all tree decompositions of G.
A path decomposition is a tree decomposition (P,B) where P is a path.
The pathwidth of G is the minimum width over all path decompositions of G.
We denote a path decomposition (P,B) as (Bv1,…,Bvt), where P is a path v1v2⋯vt.
To design a dynamic programming algorithm, we use a convenient form of a tree decomposition known as a nice tree decomposition.
A tree T is said to be rooted if it has a specified node called the root.
Let T be a rooted tree with root node r.
A node t of T is called a leaf node if it has degree one and it is not the root.
For two nodes t1 and t2 of T, t1 is a descendant of t2 if the unique path from t1 to r contains t2.
If a node t1 is a descendant of a node t2 and t1t2∈E(T),
then t1 is called a child of t2.
A tree decomposition (T,B={Bt}t∈V(T)) is a nice tree decomposition with root node r∈V(T) if T is a rooted tree with root node r, and every node t of T is one of the following:
-
a leaf node: t is a leaf of T and Bt=∅;
2. 2.
an introduce node: t has exactly one child t′ and Bt=Bt′∪{v} for some v∈V(G)∖Bt′;
3. 3.
a forget node: t has exactly one child t′ and Bt=Bt′∖{v} for some v∈Bt′; or
4. 4.
a join node: t has exactly two children t1 and t2, and Bt=Bt1=Bt2.
Theorem 2.2** (Bodlaender et al. [3]).**
Given an n-vertex graph G and a positive integer k, one can either output
a tree decomposition of G with width at most 5k+4, or correctly answer that
the treewidth of G is larger than k, in time 2O(k)n.
Lemma 2.3** (folklore; see Lemma 7.4 in [7]).**
Given a tree decomposition of an n-vertex graph G of width w,
one can construct a nice tree decomposition (T,B) of width w with ∣V(T)∣=O(wn) in time O(k2⋅max(∣V(T)∣,∣V(G)∣)).
2.4 Boundaried graphs
For a graph G and S⊆V(G), the pair (G,S) is called a boundaried graph.
When G is a d-labeled graph,
we simply say that (G,S) is a d-labeled graph.
Two d-labeled graphs (G,S) and (H,S) are said to be compatible
if V(G−S)∩V(H−S)=∅, G[S]=H[S], and G and H have the same labels on S.
For two compatible d-labeled graphs (G,S) and (H,S),
the sum of two graphs is the graph obtained from the disjoint union of G and H
by identifying each vertex of S in G with the same vertex in H and
removing an edge from multiple edges that appear in S.
We denote the resulting graph by (G,S)⊕(H,S).
See Figure 1 for an example.
We also denote by LG⊕LH the function from V(G)∪V(H) to [d] where
for v∈V(G)∪V(H), (LG⊕LH)(v)=LG(v) if v∈V(G) and (LG⊕LH)(v)=LH(v) otherwise.
Notice that LG⊕LH is not necessarily a block d-labeling of G⊕H.
For two unlabeled boundaried graphs, we define the sum in the same way, but ignoring the label condition.
A block of a graph is non-trivial if it has at least two vertices.
For a boundaried graph (G,S),
a block B of G is called an S-block if it contains an edge of G[S].
Note that every non-trivial block of G[S] is contained in a unique S-block of G because two distinct blocks share at most one vertex.
Let (G,S) be a boundaried graph.
We define Aux(G,S) as the bipartite boundaried graph with bipartition (X,Y) and boundary Y such that
-
X is the set of components of G, and Y is the set of components of G[S], and
2. 2.
for C1∈X and C2∈Y, C1C2∈E(Aux(G,S)) if and only if C2 is contained in C1.
We remark that when (G,S) and (H,S) are two compatible d-labeled graphs,
Aux(G,S)⊕Aux(H,S) is well-defined, as G and H have the same set of components on S.
We will use this notation to check, when we take the sum of two compatible d-labeled graphs (G,S) and (H,S),
whether the sum contains a chordless cycle through the cycle of
Aux(G,S)⊕Aux(H,S).
3 Lemmas about chordal graphs and S-blocks
In this section, we present several lemmas regarding S-blocks.
For a biconnected d-labeled graph Q, we say that a d-labeled graph (G,S) is block-wise partially label-isomorphic to Q if
every S-block B of G is partially label-isomorphic to Q.
A first result describes sufficient conditions for when, given a chordal labeled graph Q,
the sum of two given labeled graphs (G,S) and (H,S), each block-wise partially label-isomorphic to Q, is again block-wise partially label-isomorphic to Q.
This argument will be used in the algorithm to decide whether the sum of two partial solutions is again a partial solution.
To guarantee that the sum is again a block-wise partially label-isomoprhic to Q,
we need a compatibility condition.
Informally, this condition arises due to the property of chordal graphs in Lemma 2.1.
Suppose B is a block of G[S]. Then, for the sum to be label-isomorphic to Q,
if B1 and B2 are the S-blocks of G and H containing B,
then connected components of B1−V(B) and B2−V(B) have to indicate other components of Q−X,
where X is the corresponding vertex set of B in Q. This can be checked by the labels of neighbors of X in Q,
since there is a bijection between connected components of Q−X and connected components of Q[NQ(X)].
Formally, we define this compatibility condition as follows.
For two compatible d-labeled graphs (G,S) and (H,S) with labelings LG and LH respectively,
we say that (G,S) and (H,S) are block-wise Q-compatible
if
-
(G,S) and (H,S) are block-wise partially label-isomorphic to Q; and
2. 2.
for every non-trivial block B of G[S], letting B1 and B2 be the S-blocks of G and H that contain B, respectively,
we have
- (a)
LG(NB1(V(B))∖S)∩LH(NB2(V(B))∖S)=∅, and,
2. (b)
for every ℓ1∈LG(NB1(V(B))∖S) and every ℓ2∈LH(NB2(V(B))∖S), the vertices in Q with labels ℓ1 and ℓ2 are not adjacent.
However, this local property is not sufficient to guarantee that the sum is again label-isomorphic to Q.
The reason is that there might be a chordless cycle that is not captured by S-blocks of (G,S)⊕(H,S).
We provide such an example in Figure 2.
Observe that, in that case, Aux(G,S)⊕Aux(H,S) has a cycle.
On the other hand, we can show that
if we add the condition that Aux(G,S)⊕Aux(H,S) has no cycles,
then the sum is indeed label-isomorphic to Q.
Proposition 3.1**.**
Let Q be a biconnected d-labeled chordal graph.
Let (G,S) and (H,S) be two block-wise Q-compatible d-labeled graphs such that
Aux(G,S)⊕Aux(H,S) has no cycles.
Then (G,S)⊕(H,S) is block-wise partially label-isomorphic to Q.
The following lemma is an essential property of chordal graphs.
Lemma 3.2**.**
Let F be a connected graph and Q be a connected chordal graph.
Let μ:V(F)→V(Q) be a function such that
for every induced path p1⋯pm in F of length at most two, μ(p1),…,μ(pm) are pairwise distinct and μ(p1)⋯μ(pm) is an induced path of Q.
Then μ is an injection and preserves the adjacency relation.
Proof.
We first show that μ is an injection.
Claim 1**.**
F* has no two vertices v and w with μ(v)=μ(w).*
- Proof.
Suppose F has two distinct vertices v and w with μ(v)=μ(w).
Let P=p1p2⋯px be a shortest path from v=p1 to w=px in F.
Note that P is an induced path, and by assumption, x⩾4 and μ(p1)μ(p2)μ(p3) is an induced path in Q.
This further implies that μ(p4)=μ(pi) for i∈{1,2,3}.
Thus, we have x⩾5.
Let y∈{4,…,x−1} be the smallest integer such that μ(py) has a neighbor in {μ(p1),…,μ(py−3)}.
Such an integer exists as μ(p1)=μ(px), so μ(px−1) is adjacent to μ(p1), and
μ(pi)μ(pi+1)μ(pi+2) is an induced path for each 1⩽i⩽x−2.
Let μ(pz) be a neighbor of μ(py) with z∈{1,2,…,y−3} and maximum z.
Then μ(pz)μ(pz+1)⋯μ(py)μ(pz) is an induced cycle of length at least 4, which contradicts the assumption that
Q is chordal.
◊
Now, we show that
μ preserves the adjacency relation.
Claim 2**.**
For each v,w∈V(F),
vw∈E(F) if and only if μ(v)μ(w)∈E(Q).
- Proof.
Suppose there are two vertices v and w in F such that the adjacency relation between v and w in F is different from the adjacency relation between μ(v) and μ(w) in Q.
When vw∈E(F), μ(v) is adjacent to μ(w) in Q by assumption.
Thus, vw∈/E(F) and μ(v)μ(w)∈E(Q).
We choose such vertices v and w with minimum distance in F.
Let P=p1p2⋯px be a shortest path from v=p1 to w=px in F.
Observe that x⩾4.
By the minimality of the distance,
each of μ(p1)μ(p2)⋯μ(px−1) and μ(p2)μ(p3)⋯μ(px) is an induced path in Q.
Therefore, μ(p1)μ(p2)⋯μ(px)μ(p1) is an induced cycle of length at least four in Q,
contradicting the assumption that Q is chordal.
◊
This completes the proof.
∎
We need two more auxiliary lemmas to prove Proposition 3.1.
Lemma 3.3**.**
Let (G,S) and (H,S) be two compatible d-labeled graphs such that
Aux(G,S)⊕Aux(H,S) has no cycles.
If F is an S-block of (G,S)⊕(H,S) and uv is an edge in F,
then uv is contained in some S-block of G or H.
Proof.
We may assume that one of u and v is not contained in S, otherwise the block containing uv in G or H is an S-block by definition.
Without loss of generality, let us assume v∈V(G)∖S. This implies that u is also contained in G.
Since uv is an edge, there is a unique block of G containing both u and v.
Let C be the component of G containing u and v, and
let B be the block of G containing u and v.
If B is an S-block, then we are done. Thus, we may assume that B is not an S-block.
For each vertex w of G contained in B, let Hw be the subgraph of G
induced by the union of w and all components of C−V(B) containing a neighbor of w.
One can observe that if Hw contains a vertex in a connected component of G[S],
then C−V(Hw) does not contain a vertex of that component;
otherwise, the existence of a cycle through Hw and B implies that B is an S-block.
See Figure 3 for an illustration.
This implies that for each connected component X of G[S] contained in C,
there is a vertex w contained in B such that
w separates B and X.
Furthermore,
since Aux(G,S)⊕Aux(H,S) has no cycles,
for every connected component X of G[S],
there is a vertex w of G in B such that
w separates B from X in (G,S)⊕(H,S).
As F is an S-block of (G,S)⊕(H,S), F contains an edge of G[S], say xy.
Since F contains x,y and v∈/S, F has at least 3 vertices and thus it is 2-connected.
On the other hand, the conclusion in the previous paragraph implies that there is a vertex w such that
w separates B and {x,y} in (G,S)⊕(H,S).
This contradicts the fact that F is 2-connected.
We conclude that B is an S-block.
∎
Lemma 3.4**.**
Let (G,S) and (H,S) be two compatible d-labeled graphs such that
each S-block of G or H is chordal, and
Aux(G,S)⊕Aux(H,S) has no cycles.
If F is an S-block of (G,S)⊕(H,S) and uvw is an induced path in F such that
u and w are not contained in the same S-block of G or H,
then
-
v∈S, and
2. 2.
there is an induced path q1q2⋯qℓ from u=q1 to w=qℓ in F−v
such that each qi is a neighbor of v.
Proof.
Since F contains at least 3 vertices, F is 2-connected.
Let C be the component of G containing v.
(1) We verify that v∈S.
Suppose v∈/S, and without loss of generality we assume v∈V(G)∖S.
By Lemma 3.3, each of uv and vw is contained in some S-block of G.
Moreover, since u and w are not contained in the same block, v is a cut vertex of G.
Let H1 be the subgraph of G induced by the union of v and the component of C−v containing u,
and let H2 be the subgraph of G induced by the union of v and the component of C−v containing w.
Then H1 and H2 do not contain vertices from the same component of G[S].
This implies that v separates u and w in G, and
since Aux(G,S)⊕Aux(H,S) has no cycles,
v separates u and w in (G,S)⊕(H,S).
This contradicts the assumption that F is 2-connected.
Therefore, we have v∈S.
(2)
Let D be the component of G[S] containing v.
As v∈V(D), for each z∈{u,w},
we have either z∈V(G)∖S or z∈V(H)∖S or z∈V(D)∖{v}.
Claim 3**.**
For each z∈{u,w}, there is a path from z to V(D)∖{v} in G−v or H−v.
- Proof.
If z∈V(D)∖{v}, then this is clear.
We assume z∈V(G)∖S; the symmetric argument works when z∈V(H)∖S.
Suppose for contradiction that there is no path from z to V(D)∖{v} in G−v.
Then, v is a cut vertex of G separating z from D−v.
Let H′ be the component of C−v containing z.
If the other vertex in {u,w}∖{z} is also contained in H′, then
there is a cycle formed with v and a path from u to w in H′,
and thus u,v,w are contained in the same block of G.
Furthermore this block is an S-block by Lemma 3.3.
This contradicts the assumption that u and w are not contained in the same S-block.
Thus, H′ does not contain the other vertex in {u,w}∖{z}.
Furthermore, since Aux(G,S)⊕Aux(H,S) has no cycles,
v separates u and w in (G,S)⊕(H,S).
This contradicts the assumption that F is 2-connected.
Therefore, there is a path from z to V(D)∖{v} in G−v.
◊
Let U1′,…,Up′ be the connected components of D−v,
and for each i∈{1,…,p}, let Ui:=G[V(Ui′)∪{v}].
Generally, we show the following.
Claim 4**.**
There is a sequence W1−W2−⋯−Wm of distinct graphs in {U1,…,Up} such that
there is a path from u to V(W1) in G−v or H−v,
there is a path from w to V(Wm) in G−v or H−v, and
if m⩾2, then for each i∈{1,…,m−1}, there is a path from V(Wi)∖{v} to V(Wi+1)∖{v} in G−v or H−v.
-
Proof.
Let Xu,Xw⊆{U1,…,Up} such that
-
–
for each X∈Xu, there is a path from u to X in (G,S)⊕(H,S)−v,
for each X∈Xw, there is a path from w to X in (G,S)⊕(H,S)−v.
By Claim 3, Xu and Xw are non-empty.
If Xu∩Xw=∅, then there is a required path.
Suppose for contradiction that Xu∩Xw=∅.
This implies that there is no path from components in Xu to components in Xw in (G,S)⊕(H,S)−v,
and furthermore, there is no path from u to w in (G,S)⊕(H,S)−v.
This contradicts the fact that F is 2-connected.
◊
Now, we construct the required path. Fix a sequence W1−W2−⋯−Wm as obtained in Claim 4.
Recall that the vertex set of each Wi is contained in S.
See Figure 4 for an illustration.
Let P0=z1z2⋯zℓ be a path from u=z1 to w0=zℓ∈V(W1)∖{v} in G−v or H−v such that
- (1)
ℓ is minimum,
2. (2)
subject to (1), the distance from w0 to v in W1 is minimum.
Let R be a shortest path from zℓ to v in W1.
As G[V(P0)∪V(R)] is 2-connected, it is contained in an S-block of G or H, and by assumption, it is chordal.
We claim that every vertex in P0 is a neighbor of v.
Suppose there exists i∈{2,…,ℓ−1} such that zi is not adjacent to v.
By the distance condition, there are no edges between {z1,…,zi−1} and {zi+1,…,zℓ}∪(V(W1)∖{v}).
Merging a shortest path from zi to v in G[{z1,…,zi}∪{v}]
and a shorest path from zi to v in G[{zi,…,zℓ}∪V(R)],
one can find a chordless cycle in G[V(P0)∪V(R)]; a contradiction.
Therefore, every vertex in V(P0)∖{zℓ} is a neighbor of v.
Finally, by the assumption that the distance from w0 to v in W1 is minimum,
w0 is a neighbor of v; otherwise G[{zℓ−1}∪V(R)] is a chordless cycle.
Also, we can observe that every vertex in P0 is in F.
Similarly, let Pm be a path from w to vm∈V(Wm)∖{v} such that
the length of Pm is minimum, and subject to that, the distance from vm to v in Wm is minimum.
Also, for each i∈{1,…,m−1},
let Pi be the path from vi∈V(Wi)∖{v} to wi∈V(Wi+1)∖{v} in G−v or H−v such that
the length of Pi is minimum, and subject to that,
the sum of the distance from vi to v in Wi and the distance from wi to v in Wi+1 is minimum.
Lastly,
for each i∈{1,…,m}, let Qi be a shortest path from wi−1 to vi in Wi−v.
Similar to P0,
we can prove that every vertex of Q1∪P1∪⋯∪Qm∪Pm is a neighbor of v,
and is contained in F.
Therefore, the shortest path from u to w in P0∪Q1∪P1∪⋯∪Qm∪Pm is the required path.
∎
Proof of Proposition 3.1.
Let F be an S-block of (G,S)⊕(H,S). We need to show that F is partially label-isomorphic to Q.
If F contains at most 2 vertices, then it is contained in G[S], and it is clearly partially label-isomorphic to Q.
So we may assume ∣V(F)∣⩾3, and thus F is 2-connected.
Let LQ be the labeling of Q.
Let LG and LH be labelings of G and H, respectively, and L:=LG⊕LH.
By Lemma 3.3, every edge of F is contained in some S-block of G or H.
This implies that for every edge uv of F, we have L(u)=L(v) and
the vertices with labels L(u) and L(v) are adjacent in Q.
Moreover, since (G,S) and (H,S) are block-wise partially label-isomorphic to Q,
we have L(V(F))⊆LQ(V(Q)).
Let μ:V(F)→V(Q) such that for each v∈V(F), L(v)=LQ(μ(v)).
To apply Lemma 3.2, it is sufficient to prove the following. Notice that we do not know yet whether F is chordal or not.
But since Q is chordal, every S-block of G is chordal, and also every S-block of H is chordal.
Claim 5**.**
If uvw is an induced path in F,
then L(u)=L(w) and μ(u)μ(v)μ(w) is an induced path in Q.
-
Proof.
First assume that
u and w are contained in an S-block of G or H.
We further assume that they are contained in an S-block of G, say Buw.
The symmetric argument holds when they are contained in an S-block of H.
We claim that there is an S-block of G or H containing all of u,v,w.
We divide into two cases.
-
–
(Case 1. v∈V(G).)
If Buw contains v, then we are done, so we may assume that v∈/V(Buw).
Let Puw be a path from u to w in Buw. Note that
Puw and v form a cycle of G.
But this implies that v is contained in Buw; a contradiction. This proves the claim.
(Case 2. v∈V(H)∖S.)
In this case, u and w are contained in S. If u and w are contained in distinct connected components of G[S],
then Aux(G,S)⊕Aux(H,S) contains a cycle of length 4, because
u,w are contained in a connected component of each of G and H.
So, u and w are contained in the same connected component of G[S].
Let Puw be a path from u to w in G[S].
Then Puw and v form a cycle in H, which implies that u,v,w are contained in the same S-block of H.
Then, by the definition of partially label-isomorphic graphs,
G[{u,v,w}] or H[{u,v,w}] is isomorphic to Q[{μ(u),μ(v),μ(w)}].
This means that μ(u)μ(v)μ(w) is an induced path in Q and the labels of μ(u) and μ(w) are distinct.
Now,
we assume that u and w are not contained in the same S-block of G or H.
Recall that Aux(G,S)⊕Aux(H,S) contains no cycles, by the assumption.
So, by Lemma 3.4, v∈S
and there is an induced path q1q2⋯qℓ from u=q1 to w=qℓ in F−v
such that each qi is a neighbor of v.
We show that for each i∈{1,…,ℓ−2}, L(qi),L(qi+1),L(qi+2) are pairwise distinct, and μ(qi)μ(qi+1)μ(qi+2) is an induced path of Q.
Let i∈{1,…,ℓ−2}.
If all of qi,qi+1,qi+2 are contained in G or H, then they are contained in the same S-block with v,
and the claim follows.
Thus, we may assume that one of qi and qi+2 is contained in G−S, and the other one is contained in H−S.
Then the S-block containing qi,qi+1,v and the S-block containing qi+1,qi+2,v share the edge qi+1v.
Since (G,S) and (H,S) are block-wise Q-compatible,
L(qi)=L(qi+2) and μ(qi) is not adjacent to μ(qi+2) in Q.
We verify that μ(q1)μ(q2)⋯μ(qℓ) is an induced path of Q.
Suppose this is false, and choose i1,i2∈{1,2,…,ℓ} with i2−i1>1 and minimum i2−i1
such that
μ(qi1) is adjacent to μ(qi2) in Q.
By minimality, μ(qi1)⋯μ(qi2−1) and μ(qi1+1)⋯μ(qi2) are induced paths and have length at least 2.
Thus μ(qi1)⋯μ(qi2) is an induced cycle of length at least 4, contradicting the assumption that Q is chordal.
Therefore, μ(q1)μ(q2)⋯μ(qℓ) is an induced path of Q, and,
in particular, L(u)=L(w) and μ(u) and μ(w) are not adjacent in Q, as required.
◊
By Claim 5 and Lemma 3.2,
we conclude that F is partially label-isomorphic to Q.
∎
Later, we will consider some information on non-trivial blocks of G[S],
where two blocks in G[S] contained in the same S-block of G or H have the same information.
In Lemma 3.5,
we analyze when this property is preserved after taking the sum of (G,S) and (H,S).
Lemma 3.5**.**
Let A be a set.
Let (G,S) and (H,S) be two compatible d-labeled graphs,
B be the set of non-trivial blocks in G[S], and
g:B→A be a function
such that
each S-block of G or H is chordal,
Aux(G,S)⊕Aux(H,S)* has no cycles, and*
for every B1,B2∈B where B1 and B2 are contained in an S-block of G or H, g(B1)=g(B2).
If F is an S-block of (G,S)⊕(H,S) and B1,B2∈B where V(B1),V(B2)⊆V(F), then
g(B1)=g(B2).
Proof.
By Lemma 3.3, every edge of F is contained in an S-block of G or H.
We define a function g′:E(F)→A such that for each vw∈E(F),
g′(vw)=g(B) where B∈B and B is contained in the S-block of G or H containing v and w.
We claim that g′(e)=g′(f) for all e,f∈E(F).
Claim 6**.**
g′(e)=g′(f)* for all e,f∈E(F).*
- Proof.
Suppose towards a contradiction that there are e,f∈E(F) such that e and f share a vertex and g′(e)=g′(f).
Let e=uv and f=vw. Then u,v,w are not contained in the same S-block of G or H as g′(e)=g′(f).
Also, this implies that u is not adjacent to w.
Thus by Lemma 3.4, v∈S,
and there is an induced path q1q2⋯qℓ from u=q1 to w=qℓ in F−v
such that each qi is a neighbor of v.
As q1,q2,v are contained in the same S-block of G or H, we observe that g′(q1q2)=g′(q1v)=g′(uv).
Similarly, we have g′(qℓ−1qℓ)=g′(qℓw)=g′(vw).
We claim that for each i∈{1,…,ℓ−2},
g′(qiqi+1)=g′(qi+1qi+2).
Let i∈{1,…,ℓ−2}.
If {qi,qi+1,qi+2}⊆V(G) or {qi,qi+1,qi+2}⊆V(H),
then qi,qi+1,qi+2 are contained in the same S-block with v,
and the claim follows.
We may assume that one of qi and qi+2 is contained in G−S and the other one is contained in H−S.
In this case, the S-block containing qi,qi+1,v and the S-block containing qi+1,qi+2,v share the edge qi+1v, and we have g′(qiqi+1)=g′(qi+1v)=g′(qi+1qi+2).
Therefore, g′(uv)=g′(q1q2)=g′(qℓ−1qℓ)=g′(vw), which is a contradiction.
We conclude that g′(e)=g′(f) for all e,f∈E(F), as required.
◊
Now, for each i∈{1,2}, we choose an edge uivi in Bi.
By Claim 6, we have g(B1)=g′(u1v1)=g′(u2v2)=g(B2).
∎
We also need the following lemma.
Lemma 3.6**.**
Let (G,S) and (H,S) be two compatible d-labeled graphs such that
Aux(G,S)⊕Aux(H,S) has no cycles.
If F is an S-block of (G,S)⊕(H,S),
then Aux(F∩G,S∩V(F))⊕Aux(F∩H,S∩V(F)) has no cycles.
Proof.
Let SF:=S∩V(F).
Suppose towards a contradiction that Aux(F∩G,SF)⊕Aux(F∩H,SF) has a cycle C1−F1−⋯−Cm−Fm−C1,
where C1,…,Cm are components of F[SF].
First assume that there are two distinct components Ci,Cj∈{C1,…,Cm} contained in the same component of G[S].
We choose such components Ci,Cj such that
the distance between Ci and Cj in the cycle C1−F1−⋯−Cm−Fm−C1 is minimum.
By relabeling if necessary, we may assume that i<j and in the sequence Ci,Ci+1,…,Cj, there are no two components
contained in the same component of G[S] except the pair (Ci,Cj).
We claim that all of Ci,Fi,Ci+1,Fi+1,…,Cj are contained in the same component of G or H.
Without loss of generality, we assume that Fi is contained in G.
Note that Aux(G,S)⊕Aux(H,S) has no cycles.
So if there is Ci1 for some i<i1⩽j where
Ci1 and Ci are not contained in the same component of G or H,
then there exists i1<i2⩽j where Ci2 and Ci1 are contained in the same connected component of G[S].
But this contradicts the assumption that Ci and Cj are contained in the same connected component of G[S] where the distance
between Ci and Cj in the cycle C1−F1−⋯−Cm−Fm−C1 is minimum.
Also, if Fi′ is contained in H for some i<i′, then there exists i′<i′′ such that
Ci′ and Ci′′ are contained in the same connected component of G[S]; a contradiction.
Therefore, all of Ci,Fi,Ci+1,Fi+1,…,Cj are contained in the same component of G.
This implies that j=i+1; because all these subgraphs are connected to each other in F∩G.
Let P be a path from V(Ci) to V(Ci+1) in Fi with endpoints x and y,
and Q be a path from x to y in G[S].
Then P∪Q is a cycle containing x and y, and the existence of this cycle implies that V(P)∪V(Q)⊆V(F),
as F is a block of (G,S)⊕(H,S).
But this implies that Ci and Ci+1 are contained in the same connected component of F[SF]; a contradiction.
We conclude that there are no two distinct components Ci and Cj contained in the same component of G[S].
We observe that all of C1,…,Cm are contained in the same component of G or H since
there are no two distinct components Ci and Cj contained in the same component of G[S].
This implies that C1,…,Cm are contained in the same component of F∩G or F∩H.
This contradicts the assumption that
C1−F1−⋯−Cm−Fm−C1 is a cycle.
∎
Lastly, we show that when every S-block of (G,S)⊕(H,S) is chordal,
(G,S)⊕(H,S) is chordal if and only if Aux(G,S)⊕Aux(H,S) has no cycles.
Proposition 3.7**.**
Let (G,S) and (H,S) be two compatible graphs such that
every S-block of (G,S)⊕(H,S) is chordal.
The following are equivalent:
-
(G,S)⊕(H,S)* is chordal.*
2. 2.
Aux(G,S)⊕Aux(H,S)* has no cycles.*
Proof.
Let C be the set of components of G[S].
(1 ⇒ 2).
Suppose that Aux(G,S)⊕Aux(H,S) has a cycle
C1−A1−C2−A2−⋯−Cn−An−C1
where
C1,…,Cn∈C.
For convenience, let Cn+1:=C1 and An+1:=A1.
We construct an induced cycle of length at least 4 in (G,S)⊕(H,S).
For each i∈{1,…,n},
we define that
Pi is the shortest path from Ci to Ci+1 in Ai,
vi,wi are the end vertices of Pi where vi∈V(Ci) and wi∈V(Ci+1).
Qi is the shortest path from wi to vi+1 in Ci+1.
Note that n⩾2. We consider two cases depending on whether n=2 or not.
Suppose n=2.
Notice that A1 and A2 may share several components of G[S].
We choose C1,C2,P1,P2,Q1,Q2 such that the cycle P1∪Q1∪P2∪Q2 passes
the minimum number of components of G[S].
This minimality implies that
C1 and C2 are the only components of G[S]
that contain vertices of both P1 and P2, and there are no edges between the internal vertices of P1 and the internal vertices of P2.
Therefore, P1∪Q1∪P2∪Q2 contains a chordless cycle.
Now, assume that n⩾3. In this case, v1−P1−Q1−P2−Q2−⋯−Pn−Qn−v1 is a cycle in (G,S)⊕(H,S), but is not necessarily a chordless cycle.
Call this cycle C. We claim that C contains a chordless cycle.
Let x be the vertex following v2 in P2, and y be the vertex preceding wn in Pn.
See Fig. 5 for an illustration.
Take a shortest path P from x to y in the path y−Qn−P1−Q1−x.
Clearly P has length at least 2, as x and y are contained in distinct components of Q.
Also, every internal vertex of P has no neighbors in the other path of the cycle v1−P1−Q1−P2−Q2−⋯−Pn−Qn−v1
between x and y.
So, if we take a shortest path P′ from x to y along the other part of the cycle v1−P1−Q1−P2−Q2−⋯−Pn−Qn−v1,
then P∪P′ is a chordless cycle. This proves the claim.
(2 ⇒ 1).
Suppose, towards a contradiction, that (G,S)⊕(H,S) contains a chordless cycle C.
Since G and H are chordal,
C should contain a vertex of G−S and a vertex of H−S.
By assumption, we know that every S-block of (G,S)⊕(H,S) is chordal.
Thus, C can contain at most one vertex from each S-block of (G,S)⊕(H,S).
Furthermore, we can observe that ∣V(C)∩V(F)∣⩽1 for every component F of G[S];
otherwise one of S-blocks of (G,S)⊕(H,S) should contain all vertices of C, contradicting the fact that every S-block is chordal.
Let C1−C2−⋯−Cn−C1 be the sequence of components of G[S] such that
-
for each v∈V(C)∩V(Ci), one neighbor of v in C is contained in G−S and the other is contained in H−S, and
2. 2.
C passes through the components of G[S] in this order.
As C contains at least one vertex of G−S and one vertex of H−S,
such a sequence exists, and n⩾2.
Without loss of generality, we may assume that the internal vertices in the path from C1 to C2 (corresponding to the first part of the sequence) are contained in G.
Then, the internal vertices in the path from C2 to C3 are contained in H,
and we use parts of G−S and H−S alternately.
For each i, pick Ai∈V(Aux(G,S)⊕Aux(H,S))∖C corresponding to a component of G or H
containing the internal vertices of the path from Ci to Ci+1. Then C1−A1−C2−A2−⋯−Cn−An−C1 contains a cycle of Aux(G,S)⊕Aux(H,S).
∎
4 Representative sets for acyclicity
In our algorithm, we need to store auxiliary graphs Aux(G,S) for boundaried graphs (G,S).
Instead of working with Aux(G,S), we work with
the partition of the set C of components of G[S], where C1,C2∈C are in the same part
if and only if they are contained in the same component of G.
This formulation has the advantage that it is convenient for applying representative-set techniques.
For a set S and a family X of subsets of S,
we define Inc(S,X) as the bipartite graph on the bipartition (S,X) such that
for v∈S and X∈X with v∈X, v and X are adjacent in Inc(S,X).
Let S be a set, and A be a set of partitions of S.
A subset A′ of A is called a representative set if
for every X1∈A and every partition Y of S where Inc(S,X1∪Y) has no cycles,
there exists a partition X2∈A′ such that Inc(S,X2∪Y) has no cycles.
Computing a representative set for a family of partitions is an essential part of our algorithm.
To apply the ideas in [2],
it is necessary to translate our problem to finding a pair of partitions X1,X2 where Inc(S,X1∪X2) is connected.
For partitions X1 and X2 of a set S,
X1 is a coarsening of X2 if every two elements in the same part of X2 are in the same part of X1.
We denote by X1⊎X2 the common coarsening of X1 and X2 with the maximum number of parts.
For instance, if X1={{1},{2,3},{4}} and X2={{1,2},{3},{4}}, then
both {{1,2,3},{4}} and {{1,2,3,4}} are common coarsenings of X1 and X2,
and X1⊎X2={{1,2,3},{4}}.
Lemma 4.1**.**
Let S be a set and X1,X2 be two partitions of S
such that Inc(S,X1∪X2) is connected. Then Inc(S,X1∪X2) has no cycles if and only if
∣X1∣+∣X2∣=∣S∣+1.
Proof.
Let H:=Inc(S,X1∪X2).
The result follows from the fact that ∣V(H)∣=∣S∣+∣X1∣+∣X2∣, ∣E(H)∣=2∣S∣, and
a connected graph H has no cycles if and only if ∣E(H)∣=∣V(H)∣−1.
∎
For a set S and a partition X of S,
a partition Y of S is called a 1-coarsening of X if
Y=X∖{X1,…,Xm}∪{X1∪⋯∪Xm} for some X1,…,Xm∈X.
Notice that the partition X itself is a 1-coarsening of X.
We will use the following observation. For two partitions X1,X2 of a set S, the following are equivalent:
Inc(S,X1∪X2) has no cycles.
There exists a 1-coarsening X1′ of X1 such that
Inc(S,X1′∪X2) is connected and has no cycles.
Such a 1-coarsening X1′ can be obtained by taking one part of X1 for each component of Inc(S,X1∪X2)
and unifying them into one part. Since the vertex corresponding to the new part of X1′ would be a cut vertex of Inc(S,X1′∪X2),
there will not be an additional cycle in Inc(S,X1′∪X2) while it is connected.
Theorem 4.2** ([2]; See also Theorem 11.11 in [7]).**
Given two families of partitions A, B of a set S,
one can, in time AO(1)2O(∣S∣), find a set A′⊆A of size at most 2∣S∣−1 such that
for every X1∈A and every Y∈B such that Inc(S,X1∪Y) is connected,
there exists X2∈A′ such that Inc(S,X2∪Y) is connected.
We explicitly describe a necessary subroutine, Algorithm 1.
Proposition 4.3**.**
Given a family A of partitions of a set S,
Algorithm 1 outputs a representative set of A of size at most ∣S∣⋅2∣S∣−1 in time AO(1)2O(∣S∣).
Proof.
Let R be the output of Algorithm 1.
Clearly, R⊆A, because we take the original partitions of ⋃1⩽i⩽∣S∣Ri at the last step.
Thus, it is sufficient to show that
for every X1∈A and every partition Y of S where Inc(S,X1∪Y) has no cycles,
there exists a partition X2∈R such that Inc(S,X2∪Y) has no cycles.
To show this, let X1∈A and Y be partitions of S such that Inc(S,X1∪Y) has no cycles.
We know that there exists a 1-coarsening X2 of X1 such that Inc(S,X2∪Y) is connected and has no cycles.
This 1-coarsening X2 is obtained in Step 1.
In Step 3, we obtain R∣X2∣, and there exists X3∈R∣X2∣ such that Inc(S,X3∪Y) is connected and has no cycles.
Let X4 be the partition obtained from X3 by taking the original partition before taking a 1-coarsening.
We have that X4∈R and Inc(S,X4∪Y) has no cycles, as required.
By Theorem 4.2, ∣R∣⩽∑1⩽i⩽∣S∣∣Ri∣⩽∣S∣⋅2∣S∣−1 and
Algorithm 1 runs in time AO(1)2O(∣S∣).
∎
5 Bounded P-Block Vertex Deletion
In this section, we prove Theorem 1.1, restated below.
See 1.1
We provide an overview of our approach for Theorem 1.1.
-
Let (G,S) be a d-labeled P-block graph, which will be the graph that remains after removing some partial solution in the dynamic programming algorithm.
We first focus on S-blocks of (G,S). For each non-trivial block of G[S], we guess its final shape as a d-labeled biconnected graph, and
store the labelings of the vertices and their neighbors in the S-block of G containing it.
Collectively, we call this information a characteristic of (G,S).
2. 2.
Suppose (H,S) is a d-labeled P-block boundaried graph compatible with (G,S) such that
every S-block of (G,S)⊕(H,S) is a d-labeled P-block graph.
Note that (G,S)⊕(H,S) still may have a chordless cycle, and
by Proposition 3.7,
(G,S)⊕(H,S) is chordal if and only if
Aux(G,S)⊕Aux(H,S) has no cycles.
If (G,S)⊕(H,S) is chordal, then it is easy to check that
for every block B of (G,S)⊕(H,S),
either B is contained in one of G and H, or it is an S-block.
Thus, instead of storing Aux(G,S), we will store the corresponding partition of the set of components of G[S].
To avoid storing all such partitions, whose total size might be 2c⋅wlogw for some constant c, we use the representative set technique discussed in Section 4.
3. 3.
We formally describe and prove an equivalence between two boundaried graphs in Theorem 5.1.
For convenience, we fix an integer d⩾2 and a class P of graphs that is block-hereditary, recognizable in polynomial time,
and consists of only chordal graphs. Let Ud be the set of all d-labeled biconnected P-block graphs.
For a boundaried graph (G,S), we denote by Block(G,S) the set of all non-trivial blocks in G[S].
5.1 Characteristics
For a d-labeled graph (G,S) with labeling L,
a characteristic of (G,S) is a pair (g,h) of functions
g:Block(G,S)→Ud and h:Block(G,S)→2[d]
satisfying the following:
for each B∈Block(G,S) and the unique S-block X of G containing B,
- (a)
(label-isomorphism condition) X is partially label-isomorphic to g(B);
2. (b)
(coincidence condition) for every B′∈Block(G,S) contained in X, g(B′)=g(B);
3. (c)
(neighborhood condition) h(B)=L(NX(V(B))∖S); and
4. (d)
(completeness condition) for every w where w∈V(X)∖S or {w}=V(X)∩V(C) for some component C of G[S],
X[NX[w]] is label-isomorphic to g(B)[Ng(B)[z]] where z is the vertex in g(B) with label L(w).
The conditions (a) and (c) were motivated in the overview.
Since we want that g(B) is a final block containing B,
for other non-trivial block B′ of G[S] already contained in the same block of G with B,
it has to indicate the same final block. This is the condition (b).
If we just say that (a) X is partially label-isomorphic to g(B),
some vertex of X may have unexpected neighbor. To avoid this problem, we impose the last condition (d).
For a d-labeled P-block graph (G,S) with characteristic (g,h) and a d-labeled P-block graph (H,S) compatible with (G,S),
the sum (G,S)⊕(H,S) respects (g,h)
if for each B∈Block(G,S), the S-block of (G,S)⊕(H,S) containing B
is label-isomorphic to g(B).
The following is the main combinatorial result regarding characteristics.
Theorem 5.1**.**
Let (G1,S), (G2,S), and (H,S) be d-labeled P-block graphs such that
for each i∈{1,2}, (Gi,S) is compatible with (H,S),
(G1,S)* and (G2,S) have the same characteristic (g,h), and*
Aux(G2,S)⊕Aux(H,S)* has no cycles.*
If (G1,S)⊕(H,S) is a d-labeled P-block graph that respects (g,h),
then (G2,S)⊕(H,S) is a d-labeled P-block graph that respects (g,h).
Proof.
Suppose (G1,S)⊕(H,S) is a d-labeled P-block graph that respects (g,h).
We first show (G2,S)⊕(H,S) respects (g,h).
Choose a non-trivial block B of G2[S], let Q:=g(B),
and let F be the S-block of (G2,S)⊕(H,S) containing B.
As a shortcut, set SF:=V(F)∩S.
Let LF be the function from V(F) to [d] that sends each vertex to its label from G2 or H.
Let LQ be the labeling of Q.
We first show that LF is a d-labeling of F, and F is partially label-isomorphic to Q.
We verify the conditions of Proposition 3.1 by regarding F as the sum of (F∩G2,SF) and (F∩H,SF)
to show that F is partially label-isomorphic to Q.
We additionally show that LQ(V(Q))⊆LF(V(F)), in order to complete the proof.
Claim 7**.**
For every non-trivial block B′ of G2[S] with V(B′)⊆V(F), g(B′)=Q.
- Proof.
Note that Aux(G2,S)⊕Aux(H,S) has no cycles.
Since (g,h) is a characteristic of (G2,S),
for non-trivial blocks B1,B2 of G2[S] contained in the same S-block of G2, g(B1)=g(B2).
Also, since (G1,S)⊕(H,S) respects (g,h),
for non-trivial blocks B1,B2 of G2[S] contained in the same S-block of H, g(B1)=g(B2).
Thus, the claim follows from Lemma 3.5.
◊
Since Aux(G2,S)⊕Aux(H,S) has no cycles,
by Lemma 3.6,
Aux(F∩G2,SF)⊕Aux(F∩H,SF) has no cycles.
To apply Proposition 3.1, it remains to show that (F∩G2,SF) and (F∩H,SF) are block-wise Q-compatible.
Claim 8**.**
(F∩G2,SF)* and (F∩H,SF) are block-wise Q-compatible.*
- Proof.
By Claim 7 and the fact that (g,h) is a characteristic of (G2,S), F∩G2 is block-wise partially label-isomorphic to Q.
By Claim 7 and the fact that (G1,S)⊕(H,S) respects (g,h), F∩H is block-wise partially label-isomorphic to Q.
We now confirm the second condition of being block-wise Q-compatible.
Let B∈Block(F,SF).
Let B1 be the S-block of G2 containing B,
B2 be the S-block of H containing B, and
B1′ be the S-block of G1 containing B.
Since (G1,S)⊕(H,S) respects (g,h), NB1′(V(B))∖S and NB2(V(B))∖S have disjoint sets of labels.
As (G1,S) and (G2,S) have the same characteristic,
NB1′(V(B))∖S and NB1(V(B))∖S have the same set of labels, and thus
NB1(V(B))∖S and NB2(V(B))∖S have disjoint sets of labels.
Furthermore, for every ℓ1∈LF(NB1(V(B))∖S) and every ℓ2∈LF(NB2(V(B))∖S),
the vertices in Q with labels ℓ1 and ℓ2 are not adjacent because there are no edges between
NB1′(V(B))∖S and NB2(V(B))∖S in (G1,S)⊕(H,S).
◊
By Claim 8 and Proposition 3.1,
LF is a d-labeling of F and F is partially label-isomorphic to Q.
Lastly, we show that F and Q have the same set of labels.
Claim 9**.**
LQ(V(Q))⊆LF(V(F)).
- Proof.
Suppose there is a vertex v in Q such that F has no vertex with label LQ(v).
We choose such a vertex v so that there exists w∈V(Q) that is adjacent to v in Q where the label of w appears in F.
We can choose such vertices v and w because Q is connected, V(F)=∅, and LF(V(F))⊆LQ(V(Q)).
Let w′ be the vertex in F with label LQ(w).
First assume w′∈V(F)∖S.
If w′∈V(G2)∖S,
then by the completeness condition of the characteristic,
U[NU[w′]] is label-isomorphic to Q[NQ[w]], where U is the S-block of G2 containing w′ and V(U)⊆V(F).
If w′∈V(H)∖S,
then since (G1,S)⊕(H,S) respects (g,h),
U[NU[w′]] is label-isomorphic to Q[NQ[w]], where U is the S-block of H containing w′ and V(U)⊆V(F).
Thus, in these cases, F contains a vertex with label LQ(v); a contradiction. We may assume that w′ is contained in S.
Next, we assume that {w′} is the vertex set of some component of F[SF].
In this case, F has at least 3 vertices, because F contains some edge of G2[S].
Thus, w′ has a neighbor in F.
We claim that w′ has neighbors in precisely one of F∩G2 and F∩H.
Towards a contradiction, suppose w′ has neighbors in both F∩G2 and F∩H.
Note that F−w′ is connected. We take a shortest path P from NF∩G2(w′) to NF∩H(w′).
By construction, the end vertices of P are not adjacent, and w′ is not adjacent to any internal vertices of P.
Thus, F[{w′}∪V(P)] is a chordless cycle, contradicting the fact that F is partially label-isomorphic to Q and Q is chordal.
We conclude that w′ has neighbors in precisely one of F∩G2 and F∩H.
If w′ has a neighbor in F∩G2, then
by the completeness condition of the characteristic,
U[NU[w′]] is label-isomorphic to Q[NQ[w]], where U is the S-block of G2 containing w′ and V(U)⊆V(F).
If w′ has a neighbor in F∩H, then
since (G1,S)⊕(H,S) respects (g,h),
U[NU[w′]] is label-isomorphic to Q[NQ[w]], where U is the S-block of H containing w′ and V(U)⊆V(F).
Thus, in these cases, F contains a vertex with label LQ(v); a contradiction.
Finally, we may assume that there is a non-trivial block B′ of F[SF] containing w′.
We observe that
the S-block of (G1,S)⊕(H,S) containing B′ is label-isomorphic to Q.
We also observe that every label appearing in the neighborhood of w′ in the S-block of (G1,S)⊕(H,S) containing B′
appears in the neighborhood of w′ in (G2,S)⊕(H,S) as well, because (G1,S) and (G2,S) have the same characteristic.
This contradicts the assumption that F has no vertex with label LQ(v).
We conclude that LQ(V(Q))⊆LF(V(F)).
◊
We conclude that F is label-isomorphic to Q. Since B was arbitrarily chosen, this implies that (G2,S)⊕(H,S) respects (g,h).
Lastly, we confirm that (G2,S)⊕(H,S) is a d-labeled P-block graph.
Claim 10**.**
The graph (G2,S)⊕(H,S) is a d-labeled P-block graph.
- Proof.
It is sufficient to show that every non S-block of (G2,S)⊕(H,S) is fully contained in G2 or H.
We observe that since Aux(G2,S)⊕Aux(H,S) has no cycles and every S-block of (G2,S)⊕(H,S) is chordal,
by Proposition 3.7,
we have (G2,S)⊕(H,S) is chordal.
Suppose towards a contradiction that there is a non S-block U of (G2,S)⊕(H,S) intersecting both G2−S and H−S.
We choose a triple (v,w,D) such that
v∈V(U)∩(V(G2)∖S), w∈V(U)∩(V(H)∖S), D is a cycle containing v and w in U; and
the length of D is minimum.
Let P1 and P2 be the two paths from v to w in D.
We claim that there are no edges between the internal vertices of P1 and the internal vertices of P2.
Suppose there is an edge p1p2 for some p1∈V(P1)∖{v,w} and p2∈V(P2)∖{v,w}.
One of p1 and p2 is contained in G2−S or H−S, as
U can contain at most one vertex of each component of G2[S].
Now, if p1 and p2 are contained in G2, then we can replace v with one of p1 and p2 that is in G2−S, and obtain a cycle shorter than D; a contradiction.
Similarly, if they are contained in H, then we obtain a cycle shorter than D.
This implies that there are no edges between the internal vertices of P1 and the internal vertices of P2.
Since v is not adjacent to w, D is a chordless cycle, which contradicts the fact that (G2,S)⊕(H,S) is chordal.
We conclude that every non S-block of (G2,S)⊕(H,S) is fully contained in G2 or H, and therefore (G2,S)⊕(H,S) is a d-labeled P-block graph.
◊
This concludes the proof.
∎
5.2 Main algorithm
Let (G,S) be a boundaried graph, and C be the set of components of G[S].
For a partition Z of C,
we write Inc(C,Z)∼Aux(G,S) if
two components of G[S] are in the same part of Z if and only if they are contained in the same component of G.
One can observe that there is an isomorphism from Inc(C,Z) to Aux(G,S)
that maps each component of C to the same component.
Using Theorem 2.2 and Lemma 2.3,
we obtain a nice tree decomposition of G of width at most 5w+4 in time O(cw⋅n) for some constant c.
Let (T,B={Bt}t∈V(T)) be the resulting nice tree decomposition with root node ro.
For each node t of T, let Gt be the subgraph of G induced by the union of all bags Bt′ where t′ is a descendant of t.
Recall that Ud is the class of all biconnected d-labeled P-block graphs, where each H in Ud has a labeling LH.
Note that ∣Ud∣⩽2(2d).
We start with enumerating all graphs in Ud and their labelings.
It takes time 2O(d2).
We define the following notation for every pair a node t of T and X⊆Bt:
-
Let Comp(t,X) be the set of all components of G[Bt∖X].
2. 2.
Let Part(t,X) be the set of all partitions of Comp(t,X).
3. 3.
Let Block(t,X) be the set of all non-trivial blocks of G[Bt∖X].
For each node t of T, X⊆Bt, and a function L:Bt∖X→[d], we define F(t,X,L) as
the set of all pairs (g,h) consisting of functions
g:Block(t,X)→Ud and h:Block(t,X)→2[d].
We say that (g,h) is valid if
L is a d-labeling of G[Bt∖X],
for each B∈Block(t,X), B is partially label-isomorphic to g(B), and
for each B∈Block(t,X), L(V(B))∩h(B)=∅.
Furthermore, for i∈{0,1,…,k} and (g,h)∈F(t,X,L),
let c[t,(X,L,i,(g,h))] be the family
of all partitions X in Part(t,X) satisfying the following property: there exist S⊆V(Gt)∖Bt with ∣S∣=i and a d-labeling L′ of Gt−(X∪S) where
L=L′∣Bt∖X,
Gt−(X∪S) is a P-block graph,
(g,h) is a characteristic of (Gt−(X∪S),Bt∖X), and
Inc(Comp(t,X),X)∼Aux(Gt−(X∪S),Bt∖X).
Such a pair (S,L′) will be called a partial solution with respect to (t,(X,L,i,(g,h)),X).
It is easy to verify that c[t,(X,L,i,(g,h))]=∅ if (g,h) is not valid.
Let Mt be the set of all possible tuples (X,L,i,(g,h)) at node t.
The main idea of the algorithm is that instead of fully computing c[t,M] for M=(X,L,i,(g,h))∈Mt,
we recursively enumerate a set r[t,M] that represents c[t,M].
Formally, for a subset r[t,M]⊆c[t,M], we denote r[t,M]≡c[t,M] if
for every X∈c[t,M] and a partial solution (S,L′) with respect to (t,M,X) and
Sout⊆V(G)∖V(Gt) where (G−(S∪X∪Sout),Bt∖X) is a d-labeled P-block graph respecting (g,h)
(considering G−(S∪X∪Sout) as the sum (Gt−(S∪X),Bt∖X)⊕(G−(V(Gt)∖Bt)−(X∪Sout),Bt∖X)),
there exists X1∈r[t,M] and a partial solution (S′,L′′) with respect to (t,M,X1) such that
(G−(S′∪X∪Sout),Bt∖X) is a d-labeled P-block graph respecting (g,h).
By the definition of r[t,M],
the problem is a Yes-instance if and only if
there exists (X,L,i,(g,h))∈Mr with ∣X∣+i⩽k such that r[ro,(X,L,i,(g,h))]=∅.
To decide whether the problem is a Yes-instance,
we enumerate r[t,M] for all nodes t and all M∈Mt.
Whenever we update r[t,M], we confirm that ∣r[t,M]∣⩽w⋅2w−1.
This is a consequence of Proposition 4.3.
We describe how to update families r[t,M] depending on the type of node t,
and prove the correctness of each procedure.
We fix such a tuple.
For each leaf node t and all 0⩽i⩽k and empty functions L, g, h, we assign r[t,(∅,L,i,(g,h))]:=∅.
We may assume that t is not a leaf node.
Let M:=(X,L,i,(g,h))∈Mt.
We may assume (g,h) is valid.
1) t is an introduce node with child t′ and Bt∖Bt′={v}:
If v∈X, then Gt−X=Gt′−(X∖{v}) and Bt∖X=Bt′∖(X∖{v}).
So, we can set r[t,M]:=r[t′,(X∖{v},L,i,(g,h))]. We assume v∈/X, and let Lres:=L∣Bt′∖X.
For a pair (g,h)∈F(t,X,L),
a pair (g′,h′)∈F(t′,X,Lres) is called the restriction of (g,h)
if
for B1∈Block(t′,X) and B2∈Block(t,X) with V(B1)⊆V(B2),
g′(B1)=g(B2),
if v∈V(B2),
then every vertex in g′(B1) with label in h′(B1) is not adjacent to the vertex in g′(B1) with label L(v),
for B1∈Block(t′,X) and B2∈Block(t,X) with V(B1)⊆V(B2) and v∈/V(B2), h′(B1)=h(B2), and
for B2∈Block(t,X) containing v, h(B2)=⋃B1∈Block(t′,X),V(B1)⊆V(B2)h(B1).
Claim 11**.**
For every X∈Part(t,X), X∈c[t,M] if and only if
there exist a restriction (g′,h′) of (g,h) and Y∈c[t′,(X,Lres,i,(g′,h′))] such that
v* has neighbors on at most one component in each part of Y (that is, Inc(Comp(t′,X),Y)⊕Aux(G[Bt∖X],Bt′∖X) has no cycles), and*
if v has at least one neighbor in G[Bt∖X], then X is the partition obtained from Y by,
for parts Y1,…,Ym of Y containing components having a neighbor of v,
removing all of Y1,…,Ym and adding a part that consists of all components of G[Bt∖X] that are not contained in
parts of Y∖{Y1,…,Ym};
and otherwise, X=Y∪{{v}}.
- Proof.
Suppose X∈c[t,M] and let (S,Lt) be a partial solution with respect to (t,M,X).
Observe
[TABLE]
Let Y∈Part(t′,X) such that Inc(Comp(t′,X),Y)∼Aux(Gt′−(X∪S),Bt′∖X).
As
Gt−(X∪S)=(Gt′−(X∪S),Bt′∖X)⊕(G[Bt∖X],Bt′∖X)
and Gt−(X∪S) is chordal, by Proposition 3.7,
[TABLE]
has no cycles.
The second condition holds by the definition of Y.
Since we can naturally obtain a restriction (g′,h′) of (g,h) for (Gt′−(X∪S),Bt′∖X),
this concludes the proof of the forward direction.
For the converse, suppose
there exist (g′,h′) and Y satisfying the assumption.
Let Mres:=(X,Lres,i,(g′,h′)), and (S,Lt′) be a partial solution with respect to (t′,Mres,Y).
For convenience, we define that
H:=Gt−(X∪S),
H′:=Gt′−(X∪S),
Lt:V(H)→[d] is the function obtained from Lt′ by further assigning Lt(v):=L(v).
We claim that (g,h) is a characteristic of (H,Bt∖X).
Before checking the conditions of a characteristic,
we show that
if two blocks D1,D2∈Block(t′,X) are contained in the same (Bt′∖X)-block of H,
then g′(D1)=g′(D2).
Let D1,D2∈Block(t′,X).
If D1 and D2 are contained in the same (Bt′∖X)-block of (H′,Bt′∖X),
then g′(D1)=g′(D2) because
(g′,h′) is a characteristic of (H′,Bt′∖X).
Also, if D1 and D2 are contained in the same (Bt′∖X)-block of (Gt[Bt∖X],Bt′∖X),
then g′(D1)=g′(D2) as (g′,h′) is a restriction of (g,h).
By the assumption,
Inc(Comp(t′,X),Y)⊕Aux(G[Bt∖X],Bt′∖X) and equivalently,
Aux(H′,Bt′∖X)⊕Aux(G[Bt∖X],Bt′∖X)
have no cycles.
Therefore, by Lemma 3.5, if D1 and D2 are contained in the same (Bt′∖X)-block of H,
then g′(D1)=g′(D2).
Let B∈Block(t,X) and F be the (Bt∖X)-block of H containing B.
-
(Coincidence condition)
Let B′∈Block(H,Bt∖X) such that B=B′ and B′ is contained in F.
First assume that ∣V(B)∖{v}∣=1 or ∣V(B′)∖{v}∣=1.
In this case, since v has neighbors on at most one component in each part of Y,
Bt∖{v} and Bt′∖{v} must be contained in the same component of G[Bt′∖X]; call it C.
Then there is a path from Bt∖{v} to Bt′∖{v} in C,
and therefore B and B′ are contained in the same block of G[Bt∖X].
This contradicts the assumption that B and B′ are distinct blocks in Block(H,Bt∖X).
Thus, both B and B′ contain non-trivial blocks U and U′ in G[Bt′∖X] respectively,
where g′(U)=g′(U′). This implies that g(B)=g(B′).
2. 2.
(Neighborhood condition)
We need to show that h(B)=⋃B1∈Block(t′,X),V(B1)⊆V(B)h(B1).
Note that (g′,h′) is a restriction of (g,h). If B does not contain v, then B is a block of G[Bt′∖X], and h(B)=h′(B).
We assume that B contains v.
It is easy to confirm that h(B)⊇⋃B1∈Block(t′,X),V(B1)⊆V(B)h(B1),
since the block of H′ containing B1∈Block(t′,X) with V(B1)⊆V(B) has to be contained in F.
To see that h(B)⊆⋃B1∈Block(t′,X),V(B1)⊆V(B)h(B1),
let z∈NF(V(B)), and choose a neighbor w of z in B.
Since v is introduced at the current node, w=v.
Thus F contains three vertices, and F is 2-connected.
Also, if V(B)={v,w}, then w is a cut vertex in F, a contradiction.
So B also has at least 3 vertices, and it is 2-connected. In particular, B−v is connected.
We take a shortest path P from z to V(B) in F−w.
Let p be the endpoint of P at V(B), and
let Q be a path from p to w in B−v.
Then P∪Q and wz form a cycle and thus there exists an S-block B1 of H′ with V(B1)⊆V(B), where z is in the neighborhood of this block.
This implies that
h(B)⊆⋃B1∈Block(t′,X),V(B1)⊆V(B)h(B1).
3. 3.
(Label-isomorphism condition)
We prove that F is partially label-isomorphic to g(B).
Let F1:=F∩H′, F2:=F∩G[Bt∖X], and U=V(F1)∩V(F2).
Since Aux(H′,Bt′∖X)⊕Aux(G[Bt∖X],Bt′∖X) has no cycles,
by Lemma 3.6, Aux(F1,U)⊕Aux(F2,U) has no cycles.
To apply Proposition 3.1,
we verify that
(F1,U) and (F2,U) are block-wise g(B)-compatible.
We observed that
if two non-trivial blocks D1 and D2 of G[Bt′∖X] are contained in F,
then g′(D1)=g′(D2)=g(B).
Since (g′,h′) is a characteristic of (H′,Bt′∖X),
(F1,U) is block-wise partially label-isomorphic to g(B).
Also, since (g,h) is valid, (F2,U) is block-wise partially label-isomorphic to g(B).
As (g′,h′) is a restriction of (g,h),
for B1∈Block(t′,X) and B2∈Block(t,X) with V(B1)⊆V(B2) and v∈V(B2),
every vertex in g′(B1) with label in h′(B1) is not adjacent to the vertex in g′(B1) with label L(v).
Because of this condition, the second condition of being block-wise g(B)-compatible is also satisfied.
By Proposition 3.1, F is partially label-isomorphic to g(B).
4. 4.
(Completeness condition)
This follows from the fact that (g′,h′) is a restriction of (g,h) and it is a characteristic of (H′,Bt′∖X).
All together we conclude that (g,h) is a characteristic of (H,Bt∖X) and therefore X∈c[t,M].
◊
When v∈/X, we update r[t,M] as follows.
Set K:=∅ at the beginning.
For every (g′,h′)∈F(t′,X,Lres), we test whether (g′,h′) is a restriction of (g,h).
Assume (g′,h′) is a restriction of (g,h), otherwise, we skip it.
Now, for each Y∈r[t′,(X,Lres,i,(g′,h′))],
we check the two conditions for (g′,h′) and Y in Claim 11,
and if they are satisfied, then we add the set X described in Claim 11 to K;
otherwise, we skip it.
Since ∣F(t′,X,Lres)∣⩽2O(wd2) and ∣r[t′,(X,Lres,i,(g′,h′))]∣⩽w⋅2w−1, the whole procedure can be done in time 2O(wd2).
After we do this for all possible candidates, we take a representative set of K using Proposition 4.3,
and assign the resulting set to r[t,M]. Since ∣K∣⩽2O(wd2), we can apply Proposition 4.3 in time 2O(wd2).
Also, we have ∣r[t,M]∣⩽w⋅2w−1.
We claim that r[t,M]≡c[t,M].
Let Gout:=G−(V(Gt)∖Bt).
Let X∈c[t,M] and
(S,L′) be a partial solution with respect to (t,M,X), and
suppose there exists Sout⊆V(G)∖V(Gt) where
[TABLE]
is a d-labeled P-block graph respecting (g,h).
Note that every (Bt′∖X)-block of G−(S∪X∪Sout) is chordal as such a block is also a (Bt∖X)-block of G−(S∪X∪Sout).
Since G−(S∪X∪Sout) is chordal, by Proposition 3.7,
Aux(Gt′−(X∪S),Bt′∖X)⊕Aux(Gout−(X∪Sout),Bt′∖X) has no cycles.
Recall that Mres:=(X,Lres,i,(g′,h′)).
As r[t′,Mres]≡c[t′,Mres], there exist Y∈r[t′,Mres] and a partial solution (S′,L′′) with respect to (t′,Mres,Y) such that
Inc(Comp(t′,X),Y)∼Aux(Gt′−(X∪S′),Bt′∖X), and
Aux(Gt′−(X∪S′),Bt′∖X)⊕Aux(Gout−(X∪Sout),Bt′∖X) has no cycles.
By Theorem 5.1,
G−(S′∪X∪Sout) is also a d-labeled P-block graph respecting (g,h).
By the update procedure, the partition X1 where Inc(Comp(t,X),X1)∼Aux(Gt−(X∪S′),Bt∖X)
is added to the set K,
and there exist X2∈r[t,M] and a partial solution (S′′,L′′′) with respect to (t,M,X2) such that
G−(S′′∪X∪Sout) is a d-labeled P-block graph respecting (g,h).
This shows that r[t,M]≡c[t,M].
2) t is a forget node with child t′ and Bt′∖Bt={v}:
A pair (g′,h′)∈F(t′,X,L′) is called an extension of (g,h) if
(g′,h′) is valid and L′ is an extension of L on Bt′∖X,
for B1∈Block(t,X) and B2∈Block(t′,X) with V(B1)⊆V(B2),
g′(B2)=g(B1),
if v∈/V(B2), then h(B1)=h′(B2),
if v∈V(B2), then h(B1) is the union of {L′(v)} and the set of labels in Ng(B1)(A) that appear in h′(B2) where A is the set of vertices in g(B1) with labels in L(B1).
We show the following.
Claim 12**.**
For every X∈Part(t,X), X∈c[t,M] if and only if
one of the following holds:
- (i)
X∈c[t′,(X∪{v},L,i−1,(g,h))], or
2. (ii)
there exist an extension Lext of L on Bt′∖X, an extension (g′,h′) of (g,h) in F(t′,X,Lext) with respect to Lext, and
Y∈c[t′,(X,Lext,i,(g′,h′))] such that
X is the partition obtained from Y by replacing the component U of G[Bt′∖X] containing v with
the components of G[Bt∖X] contained in U.
- Proof.
We first show the backward direction.
If X∈c[t′,(X∪{v},L,i−1,(g,h))],
then X∈c[t,M], as we can put v into the partial solution.
Suppose statement (ii) holds.
Then there exists a partial solution (S,L′) with respect to (t,(X,Lext,i,(g′,h′)),Y).
It is not difficult to verify that (g,h) is the characteristic of (Gt−(X∪S),Bt∖X) and
Inc(Comp(t,X),X)∼Aux(Gt−(X∪S),Bt∖X).
Thus, X∈c[t,M].
For the other direction, suppose X∈c[t,M], and
let (S,L′) be a partial solution with respect to (t,M,X).
If v∈S, then X∈c[t′,(X∪{v},L,i−1,(g,h))], and the statement (i) holds.
Thus, we may assume that v∈/S.
Let Lext:=L′∣Bt′∖X and Y∈Part(t′,X) such that
Inc(Comp(t′,X),Y)∼Aux(Gt−(X∪S),Bt′∖X).
Since Gt−(X∪S)=Gt′−(X∪S), one can observe that X is the partition obtained from Y
by replacing the component U of G[Bt∖X] containing v with
the components of Bt′∖X contained in U.
We focus on showing that there exists an extension (g′,h′) of (g,h) in F(t′,X,Lext)
that is the characteristic of (Gt′−(X∪S),Bt′∖X).
We construct (g′,h′) as follows.
Suppose there is a block B∈Block(t′,X) containing v. If there exists B′∈Block(t,X) where B and B′ are contained in the same block of Gt−(X∪S),
then we let g′(B)=g(B′).
Otherwise, we know that the block of Gt′−(X∪S) containing v is label-isomorphic to a graph in Ud; let g′(B) be this graph.
For B∈Block(t′,X) with v∈/V(B), let g′(B)=g(B).
Also, for every B∈Block(t′,X), let h′(B) be the set of labels that appear in the neighbors of vertices of B
that are in the block of Gt′−(S∪X) containing B and are not in Bt′∖X.
Then (g′,h′) is an extension of (g,h), and Y∈c[t′,(X,Lext,i,(g′,h′))].
◊
We update r[t,M] as follows.
Set K:=∅.
First, we add all partitions in r[t′,(X∪{v},L,i−1,(g,h))] to K.
At the second step,
for every extension Lext of L on Bt′∖X and every (g′,h′)∈F(t′,X,Lext),
we test whether (g′,h′) is an extension of (g,h).
Note that the condition for h can be checked in polynomial in d and w.
In the case when (g′,h′) is an extension of (g,h) with respect to Lext,
for all partitions Y∈r[t′,(X,Lext,i,(g′,h′))], we add the set X satisfying the second statement in Claim 12 to K,
and otherwise, we skip this pair.
This can be done in time 2O(wd2).
After we do this for all possible candidates, we take a representative set of K using Proposition 4.3,
and assign the resulting set to r[t,M].
Notice that ∣K∣⩽2O(wd2). By Proposition 4.3,
the procedure of obtaining a representative set can be done in time 2O(wd2), and we have ∣r[t,M]∣⩽w⋅2w−1.
We claim that r[t,M]≡c[t,M].
Let X∈c[t,M] and (S,L′) be a partial solution with respect to (t,M,X) and
Sout⊆V(G)∖V(Gt) where G−(S∪X∪Sout) is a d-labeled P-block graph respecting (g,h).
Let Gout:=G−(V(Gt′)∖Bt′).
The graph G−(S∪X∪Sout) can be seen as
(Gt′−(X∪S),Bt′∖X)⊕(Gout−(X∪Sout),Bt′∖X).
Note that every (Bt′∖X)-block of G−(S∪X∪Sout) is chordal.
Since G−(S∪X∪Sout) is chordal, by Proposition 3.7,
Aux(Gt′−(X∪S),Bt′∖X)⊕Aux(Gout−(X∪Sout),Bt′∖X) has no cycles.
As r[t′,(X,Lext,i,(g′,h′)]≡c[t′,(X,Lext,i,(g′,h′)], there exists Y∈r[t′,(X,Lext,i,(g′,h′)] and a partial solution (S′,L′′) with respect to (t′,(X,Lext,i,(g′,h′),Y) such that
Inc(Comp(t′,X),Y)∼Aux(Gt′−(X∪S′),Bt′∖X), and thus
Aux(Gt′−(X∪S′),Bt′∖X)⊕Aux(Gout−(X∪Sout),Bt′∖X) has no cycles.
By Theorem 5.1,
G−(S′∪X∪Sout) is a d-labeled P-block graph respecting (g′,h′) for some extension (g′,h′) of (g,h).
By the procedure, the partition X1 where Inc(Comp(t,X),X1)∼Aux(Gt−(X∪S′),Bt∖X)
is added to the set K,
and there exists X2∈r[t,M] and a partial solution (S′′,L′′′) with respect to (t,M,X2) such that
G−(S′′∪X∪Sout) is a d-labeled P-block graph respecting (g,h).
This shows that r[t,M]≡c[t,M].
3) t is a join node with two children t1 and t2:
We show the following.
Claim 13**.**
For every X∈Part(t,X), X∈c[t,M] if and only if
there exist integers i1,i2 with i1+i2=i,
(g,h1)∈F(t1,X,L), (g,h2)∈F(t2,X,L), X1∈c[t1,(X,L,i1,(g,h1))], and X2∈c[t2,(X,L,i2,(g,h2))] such that
Inc(Comp(t,X),X1∪X2)* has no cycles,*
X=X1⊎X2, and
for each B∈Block(t,X), h1(B)∩h2(B)=∅ and h(B)=h1(B)∪h2(B),
and for ℓ1∈h1(B) and ℓ2∈h2(B), the vertices with labels ℓ1 and ℓ2 in g(B) are not adjacent.
- Proof.
The forward direction is straightforward.
For the converse direction, suppose there exist integers i1,i2 with i1+i2=i, and
(g,h1), (g,h2), and partitions X1,X2 as specified in the statement.
For each j∈{1,2}, let Mj:=(X,L,ij,(g,hj)) and (Sj,Lj) be a partial solution with respect to (tj,Mj,Xj).
Furthermore, let Hj:=Gtj−(X∪Sj), H:=H1∪H2, and LH:=L1⊕L2.
We claim that (g,h) is a characteristic of (H,Bt∖X).
-
(Coincidence condition)
Let i∈{1,2}. Since (g,hi) is a characteristic of Hi,
if B1,B2∈Block(t,X) are contained in the same (Bt∖X)-block of Hi,
g(B1)=g(B2).
Since
Inc(Comp(t,X),X1∪X2) and equivalently, Aux(H1,Bt∖X)⊕Aux(H2,Bt∖X) have no cycles,
by Lemma 3.5,
if B1,B2∈Block(t,X) are contained in the same (Bt∖X)-block of H,
then we have g(B1)=g(B2).
2. 2.
(Neighborhood condition)
This follows from the assumption that h(B)=h1(B)∪h2(B) for each B∈Block(t,X).
3. 3.
(Label-isomorphism condition)
Let B∈Block(t,X) and F be the (Bt∖X)-block of H containing B.
We show that F is partially label-isomorphic to g(B). Let U:=V(F)∩(Bt∖X).
Since Aux(H1,Bt∖X)⊕Aux(H2,Bt∖X) has no cycles, by Lemma 3.6,
Aux(F∩H1,U)⊕Aux(F∩H2,U) has no cycles.
Since each (g,hj) is a characteristic of (Hj,Btj∖X),
(F∩H1,U) and (F∩H2,U) are block-wise partially label-isomorphic to g(B). Moreover, (F∩H1,U) and (F∩H2,U) are block-wise g(B)-compatible,
because of the assumption that for each B∈Block(t,X), h1(B)∩h2(B)=∅ and h(B)=h1(B)∪h2(B),
and for ℓ1∈h1(B) and ℓ2∈h2(B), the vertices with labels ℓ1 and ℓ2 in g(B) are not adjacent.
By Proposition 3.1, F is partially label-isomorphic to g(B).
4. 4.
(Completeness condition)
This follows from the fact that each (g,hj) is a characteristic of (Hj,Btj∖X).
This proves that (g,h) is a characteristic of (H,Bt∖X). That is, (S1∪S2,L1⊕L2) is a partial solution with respect to (t,M,X), and thus we have X∈c[t,M].
◊
We update r[t,M] as follows. Set K:=∅.
We fix integers i1,i2 with i1+i2=i, (g,h1)∈F(t1,X,L) and (g,h2)∈F(t2,X,L).
We can check in time O(wd2) the condition that
for each B∈Block(t,X), h1(B)∩h2(B)=∅ and h(B)=h1(B)∪h2(B),
and for ℓ1∈h1(B) and ℓ2∈h2(B), the vertices with labels ℓ1 and ℓ2 in g(B) are not adjacent.
If these pairs do not satisfy this condition, then we skip them. We assume that these pairs satisfy this condition.
For X1∈r[t1,M1] and X2∈r[t2,M2],
we test whether Inc(Comp(t,X),X1∪X2) has no cycles and X=X1⊎X2.
We can check this in time O(w).
If they satisfy the two conditions, then we add the partition X to the set K, and otherwise, we do not add it.
After we do this for all possible candidates, we take a representative set of K using Proposition 4.3,
and assign the resulting set to r[t,M].
The total running time is k⋅2O(wd2) because ∣F(tj,X,L)∣⩽2O(wd2) and ∣r[tj,Mj]∣⩽w⋅2w−1 for each j∈{1,2}.
We have ∣r[t,M]∣⩽w⋅2w−1.
We claim that
r[t,M]≡c[t,M].
Let X∈c[t,M] and
(S,L′) be a partial solution with respect to (t,M,X) and
Sout⊆V(G)∖V(Gt) where G−(S∪X∪Sout) is a d-labeled P-block graph respecting (g,h).
Let Hout:=G−(V(Gt)∖Bt)−(X∪Sout), and for each j∈{1,2}, let Sj=V(Hj)∩S.
Note that every (Bt∖X)-block of G−(S∪X∪Sout) is chordal.
We first consider G−(S∪X∪Sout) as the sum
(H1,Bt∖X)⊕(H2∪Hout,Bt∖X).
Since G−(S∪X∪Sout) is chordal, by Proposition 3.7,
Aux(H1,Bt∖X)⊕Aux(H2∪Hout,Bt∖X) has no cycles.
As r[t1,M1]≡c[t1,M1],
there exists Y1∈r[t1,M1] and a partial solution (S1′,L1) with respect to (t1,M1,Y1) such that
Inc(Comp(t,X),Y1)∼Aux(Gt−(X∪S1′),Bt∖X), and
[TABLE]
has no cycles.
By Theorem 5.1,
G−(S1′∪S2∪X∪Sout) is a d-labeled P-block graph respecting (g,h).
Let H1′:=Gt1−(X∪S1′).
In a similar manner,
we consider G−(S1′∪S2∪X∪Sout) as the sum
(H1′∪Hout,Bt∖X)⊕(H2,Bt∖X).
Since G−(S1′∪S2∪X∪Sout) is chordal, by Proposition 3.7,
Aux(H1′∪Hout,Bt∖X)⊕Aux(H2,Bt∖X) has no cycles.
As r[t2,M2]≡c[t2,M2],
there exist Y2∈r[t2,M2] and a partial solution (S2′,L2) with respect to (t2,M2,Y2) such that
Inc(Comp(t,X),Y2)∼Aux(Gt−(X∪S2′),Bt∖X), and
[TABLE]
has no cycles.
By Theorem 5.1,
G−(S1′∪S2′∪X∪Sout) is a d-labeled P-block graph respecting (g,h).
Thus the partition X1=Y1⊎Y2 which satisfies Inc(Comp(t,X),X1)∼Aux(Gt−(X∪S1′∪S2′),Bt∖X)
is added to the set K.
And there exists X2∈r[t,M] and a partial solution (S′′,L′′′) with respect to (t,M,X2) such that
G−(S′′∪X∪Sout) is a d-labeled P-block graph respecting (g,h).
This shows that r[t,M]≡c[t,M].
Total running time.
We denote ∣V(G)∣ by n. Note that the number of nodes in T is O(wn) by Lemma 2.3.
For fixed t∈V(T), there are at most 2w+1 possible choices for X⊆Bt, and
for fixed X⊆Bt, there are at most dw+1 possible functions L.
Furthermore, the size of F(t,X,L) is bounded by 2O(wd2).
Thus, there are O(n⋅k⋅max(2,d)w+1⋅2O(wd2)) tables.
In summary, the algorithm runs in time
O(n⋅k⋅max(2,d)w+1)⋅2O(wd2)⋅k=2O(wd2)k2n.
∎
We finish this section with a few remarks regarding Bounded P-Component Vertex Deletion.
For this problem, we think of graphs as labeled graphs where each component consists of vertices with distinct labels from 1 to d.
Let Comp(G,S) be the set of components of G[S].
For such a graph (G,S), we define a ‘characteristic’ as a pair (g,h) of functions
g:Comp(G,S)→Ud and h:Comp(G,S)→2[d]
satisfying the following,
for C∈Comp(G,S) and the component H of G containing C,
- (a)
(label-isomorphism condition) H is partially label-isomorphic to g(C),
2. (b)
(coincidence condition) for every C′∈Comp(G,S) where C′ is contained in H, g(C′)=g(C),
3. (c)
(neighborhood condition) h(C)=L(NH(V(C))), and
4. (d)
(completeness condition) for every w∈V(H)∖S,
H[NH[w]] is label-isomorphic to g(C)[Ng(C)[z]] where z is the vertex in g(C) with label L(w).
Then, by following similar, but simpler, arguments,
one can also prove that Bounded P-Component Vertex Deletion can be solved in time 2O(wd2)k2n.
We omit the details.
See 1.3
6 Lower bound for fixed d
We showed that Bounded P-Component Vertex Deletion and Bounded P-Block Vertex Deletion admit single-exponential time algorithms parameterized by treewidth, when P is a class of chordal graphs.
We now establish that, assuming the ETH, this is no longer the case when P contains a graph that is not chordal.
In the k×k Independent Set problem, one is given a graph G=([k]×[k],E) over the k2 vertices of a k-by-k grid.
We denote by ⟨i,j⟩ with i,j∈[k] the vertex of G in the i-th row and j-th column.
The goal is to find an independent set of size k in G that contains exactly one vertex in each row.
The Permutation k×k Independent Set problem is similar but with the additional constraint that the independent set should also contain exactly one vertex per column.
Theorem 6.1**.**
- (1)
Let P be a block-hereditary class of graphs that is polynomial-time recognizable.
If P contains the cycle graph on ℓ⩾4 vertices, then Bounded P-Block Vertex Deletion is not solvable in time 2o(wlogw)nO(1) on graphs with n vertices and treewidth at most w
even for fixed d=ℓ, unless the ETH fails.
2. (2)
Let P be a hereditary class of graphs that is polynomial-time recognizable.
If P contains the cycle graph on ℓ⩾4 vertices, then Bounded P-Component Vertex Deletion is not solvable in time 2o(wlogw)nO(1) on graphs with n vertices and treewidth at most w even for fixed d=ℓ, unless the ETH fails.
Proof.
We reduce from Permutation k×k Independent Set which, like Permutation k×k Clique, cannot be solved in time 2o(klogk)kO(1) unless the ETH fails [15].
Let G=([k]×[k],E) be an instance of Permutation k×k Independent Set.
We assume that ∀h,i,j∈[k] with h=i, ⟨i,j⟩⟨h,j⟩∈E.
Adding these edges does not change the Yes- and No-instances, but has the virtue of making Permutation k×k Independent Set equivalent to k×k Independent Set.
We also assume that ∀h,i,j∈[k], ⟨i,j⟩⟨i,h⟩∈E, since at most one of ⟨i,j⟩ and ⟨i,h⟩ can be in a given solution.
Let m:=∣E∣=O(k4) be the number of edges of G.
Outline.
We build two almost identical graphs G′=(V′,E′) and G′′=(V′,E′′) with treewidth at most (3d+4)k+6d−5=O(k), and ((3d−2)k2+2k)m vertices, such that the following three conditions are equivalent:
-
G has an independent set of size k with one vertex per row of G.
2. 2.
There is a set S⊆V′ of size at most (3d−2)k(k−1)m such that each component of G′−S has size at most d and belongs to P.
3. 3.
There is a set S⊆V′ of size at most (3d−2)k(k−1)m such that each block of G′′−S has size at most d and belongs to P.
The overall construction of G′ and G′′ will display m almost copies of the encoding of an edgeless G arranged in a cycle.
Each copy embeds one distinct edge of G.
The point of having the information of G distilled edge by edge in G′ and G′′ is to control the treewidth.
This general idea originates from a paper of Lokshtanov et al. [14].
Construction.
We first describe G′.
As a slight abuse of notation, a gadget (and, more generally, a subpart of the construction) may refer to either a subset of vertices or to an induced subgraph.
For each e=⟨ie,je⟩⟨i′e,j′e⟩∈E, we detail the internal construction of He and Se of Fig. 6 and how they are linked to one another.
Each vertex v=⟨i,j⟩ of G is represented by a gadget He(v) on 3d−2 vertices in G′: a path on d−3 vertices whose endpoints are v−ae and v−be, an isolated vertex v+e, and two disjoint cycles of length d.
Observe that if d=4, then v−ae and v−be is the same vertex.
We add all the edges between He(⟨i,j⟩) and He(⟨i,j′⟩) for i,j,j′∈[k] with j=j′.
We also add all the edges between He(⟨ie,je⟩) and He(⟨i′e,j′e⟩).
We call He the graph induced by the union of every He(v), for v∈V(G).
The row/column selector gadget Se consists of a set Sre of k vertices with one vertex rie for each row index i∈[k], and a set Sce of k vertices with one vertex cje for each column index j∈[k].
The gadget Se forms an independent set of size 2k.
We arbitrarily number the edges of G: e1,e2,…,em.
For each h∈[m] and v=⟨i,j⟩∈V, we link v−aeh to rieh (the row index of v) and v−beh to cjeh (the column index of v).
We also link, for every h∈[m−1], v+eh to rieh+1 and to cjeh+1, and v+em to rie1 and to cje1.
That concludes the construction (see Fig. 7).
To obtain G′′ from G′, we add the edges cjehcj+1eh for every h∈[m] and j∈[k−1].
We ask for a deletion set S of size s:=(3d−2)k(k−1)m.
Treewidth of G′ and G′′.
We claim that the pathwidth, and hence treewidth, of G′ and G′′ are bounded by (3d+4)k+6d−5.
For any edge e∈E, we set H(e):=He(⟨ie,je⟩)∪He(⟨i′e,j′e⟩).
For any h∈[m−1], we set S~h:=Se1∪Seh∪Seh+1, and S~m:=Se1∪Sem.
For each e∈E, and i∈[k], He(i) denotes the union of the He(v) for all vertices v of the i-th row.
Here is a path decomposition of G′ and G′′ where the bags contain no more than (3d+4)k+6d−4 vertices:
S~1∪H(e1)∪He1(1)→S~1∪H(e1)∪He1(2)→…→S~1∪H(e1)∪He1(k)→
S~2∪H(e2)∪He2(1)→S~2∪H(e2)∪He2(2)→…→S~2∪H(e2)∪He2(k)→
⋮
S~m∪H(em)∪Hem(1)→S~m∪H(em)∪Hem(2)→…→S~m∪H(em)∪Hem(k).
As, for any h∈[m], ∣S~h∣⩽6k, ∣H(eh)∣=2(3d−2), and ∣Heh(i)∣⩽(3d−2)k for any i∈[k], the size of a bag is bounded by maxh∈[m],i∈[k]∣S~h∪H(eh)∪Heh(i)∣⩽6k+2(3d−2)+(3d−2)k=(3d+4)k+6d−4.
Correctness.
We first show 1 ⇒ 2.
Let us assume that there is an independent set I:={v1=⟨1,j1⟩,v2=⟨2,j2⟩,…,vk=⟨k,jk⟩} in G.
We define the deletion set S⊆V′ as follows.
For each e∈E and i∈[k], we delete all of He(i) except He(vi).
The cardinality of S adds up to a total of (∣He(i)∣−∣He(vi)∣)mk=((3d−2)k−3d+2)mk=(3d−2)k(k−1)m=s vertices.
We claim that all the components of G′−S are isomorphic to Cd, and belong to P since d⩾4.
First, we observe that the Cds inside any He(vi), for e∈E and i∈[k], are isolated in G′−S.
Indeed, He(vi) is the only remaining He(v) from He(i).
So, it might only be linked to He(vj) with some j=i∈[k].
But this would imply that vivj∈E, contradicting that I is an independent set.
Besides those Cds contained in the He(vi)s, we claim that the rest of G′−S is mk disjoint Cds formed with the vertices vp+eh−1, rpeh, cjpeh, and the path Pvpeh between vp−aeh and vp−beh, for any h∈[m] and p∈[k] (with the convention that e0=em).
Indeed, let us recall that {j1,j2,…,jk}=[k].
Therefore, {vp+eh−1,rpeh,cjpeh}∪Pvpeh is a family of mk pairwise disjoint sets of size d.
The vertices rpeh and cjpeh have degree 2 in G′−S since I contains only one vertex in the p-th row of G, and I contains only one vertex in the jp-th column; and in both cases this vertex is vp.
The vertex vp+eh−1 and the vertices of Pvpeh also have degree 2 in G′−S.
Therefore, G′−S is a disjoint union of Cds.
The implication 1 ⇒ 3 is derived similarly.
We now claim that, with the same deletion set S, all the blocks of G′′−S are isomorphic to Cd or K2.
As P is a hereditary class that contains the induced cycle of length d⩾4, it holds that K2∈P.
We still have the property that the Cds within any He(vi) are isolated in G′′−S.
Now, the slight difference is that {vp+eh−1,rpeh,cjpeh}∪Pvpeh induces m disjoint Ck,ds in G′′−S, where Ck,d is the graph obtained by linking each of the k vertices of a path to the two endpoints of a path on d−1 vertices.
Informally, Ck,d corresponds to k Cds attached to different vertices of a path on k vertices.
In this case, the path consists of the vertices c1eh,c2eh,…,ckeh.
Finally, we observe that the blocks of Ck,d are k Cds and k−1 K2s.
We now show that 2 ⇒ 1 and 3 ⇒ 1.
We assume that there is a set S⊆V′ of size at most s such that all the blocks of G′′−S (resp. G′−S) have size at most d.
We note that this is implied by 3 (resp. by a weaker assumption than 2).
The first property we show on S is that, for any e∈E and i∈[k], ∣He(i)∩S∣⩾(3d−2)(k−1).
In other words, there are at most 3d−2 vertices of He(i) remaining in G′′−S (or G′−S).
Assume, for the sake of contradiction, that He(i)−S contains at least 3d−1 vertices.
Observe that He(i)−S cannot contain at least one vertex from three distinct He(u), He(v), and He(w) (with u, v and w in the i-th row of G), since then He(i)−S would be 2-connected (and of size >d).
For the same reason, He(i)−S cannot contain at least two vertices in He(u) and at least two vertices in another He(v).
Therefore, the only way of fitting 3d−1 vertices in He(i)−S is the 3d−2 vertices of an He(u) plus one vertex from some other He(v).
But then, this vertex of He(v) would form, together with one Cd of He(u), a 2-connected subgraph of G′′−S (or G′−S) of size d+1.
Now, we know that ∣He(i)∩S∣⩾(3d−2)(k−1).
As there are precisely mk sets He(i) in G′ (and they are disjoint), it further holds that ∣He(i)∩S∣=(3d−2)(k−1), since otherwise S would contain strictly more than s=(3d−2)k(k−1)m vertices.
Thus, He(i)−S contains exactly 3d−2 vertices.
By the previous remarks, He(i)−S can only consist of the 3d−2 vertices of the same He(u) or 3d−3 vertices of He(u) plus one vertex from another He(v).
In fact, the latter case is not possible, since the vertex of He(v) would form, with at least one remaining Cd of the 3d−3 vertices of He(u), a 2-connected subgraph of G′′−S (or G′−S) of size d+1.
Note that this is why we needed two disjoint Cds in the construction instead of just one.
So far, we have proved that, assuming 2 or 3, for any e∈E and i∈[k], He(i)∩S=He(v(i,e)) for some vertex v(i,e) of the i-th row of G, and for any e∈E, Se∩S=∅.
The second part of the proof consists of showing that v(i,e) does not depend on e.
Formally, we want to show that there is a vi such that, for any e∈E, v(i,e)=vi.
Observe that it is enough to derive that, for any h∈[m], v(i,eh)=v(i,eh+1) (with em+1=e1).
Let j∈[k] (resp. j′∈[k]) be the column of v(i,eh) (resp. v(i,eh+1)) in G.
We first assume 2.
For any h∈[m], v(i,eh)+eh, rieh+1, cj′eh+1, cjeh+1 plus the path Pv(i,eh+1)eh+1 (between v(i,eh+1)−aeh+1 and v(i,eh+1)−beh+1) induces a path (in particular, a connected subgraph) of size d+1 in G′′−S, unless j=j′ (with em+1=e1).
Therefore, j=j′.
As v(i,eh) and v(i,eh+1) have the same column j and the same row i in G, v(i,eh)=v(i,eh+1).
Now, we assume 3.
For any h∈[m], v(i,eh)+eh, rieh+1,v(i,eh+1)−aeh+1,v(i,eh+1)−beh+1,cj′eh+1,cj′+1eh+1, …, cj−1eh+1,cjeh+1 if j⩾j′ (resp. cj′−1eh+1,…, cj+1eh+1,cjeh+1 if j⩽j′) plus the path between v(i,eh+1)−aeh+1 and v(i,eh+1)−beh+1 induces a cycle (that is, a 2-connected subgraph) of length at least d+1 in G′′−S, unless j=j′ (with em+1=e1).
Again, j=j′; and the vertices v(i,eh) and v(i,eh+1) have the same column and the same row in G, which implies that v(i,eh)=v(i,eh+1).
In both cases (2 or 3), we can now safely define vi:=v(i,e).
We finally claim that {v1,v2,…,vk} is an independent set in G (and for each i∈[k], vi is in the i-th row).
Indeed, if there were an edge e=vivj∈E for some i=j∈[k], then He(vi)∪He(vj) would induce a 2-connected subgraph of size 2(3d−2)>d (since d⩾4) in G′′−S (or G′−S).
That finishes the proof that 1 ⇔ 2 ⇔ 3.
Therefore, for any fixed integer d⩾4, an algorithm running in time 2o(wlogw)∣V′∣O(1) for either Bounded P-Component Vertex Deletion or Bounded P-Block Vertex Deletion on graphs of treewidth w with Cd∈P would also solve Permutation k×k Independent Set in time
[TABLE]
which contradicts the ETH.
∎
7 Hardness and lower bounds, when d is not fixed
In this section, we prove Theorem 1.5. Our first reduction is from the following problem:
[TABLE]
We call a set Vi, for some i∈[k], a color class.
The problem Multicolored Clique is known to be W[1]-complete (see, for example, [7]),
and it is clear that this remains true under the assumption that there are no edges between vertices of the same color class.
Moreover, we may assume
that each color class has the same size,
and between every distinct pair of color classes we have the same number of edges [11].
We say that X⊆V(G) is a multicolored k-clique if X is a k-clique such that ∣X∩Vi∣=1 for each i∈[k].
Theorem 7.1**.**
Bounded P-Component Vertex Deletion* is W[1]-hard parameterized by the combined parameter (w,k), when P contains all chordal graphs.*
Before proving this theorem, we describe the reduction used in the proof.
Given an instance (G,k,(V1,…,Vk)) of Multicolored Clique, where each color class has size t, we construct a graph G′ such that G has a multicolored k-clique if and only if there exists a set S⊆V(G′) of size at most k′ such that each component of G′−S consists of at most d vertices,
where k′=3(2k+1)−6 and d=3t2+3t+3, and
the treewidth of G′ is bounded above by 54k−69.
Each component of G′−S is a chordal graph, so we obtain a reduction to Bounded P-Component Vertex Deletion whenever P contains all chordal graphs.
We may assume that k⩾2.
Let Vi={vi1,vi2,…,vit}, for each i∈[k].
For i,j∈[k] with i<j, we denote the set of edges in G[Vi∪Vj] by Ei,j, and
we may assume that ∣Ei,j∣=p, say. We construct G′ from several gadgets; namely, an “edge-encoding gadget” Gi,j for each i,j∈[k] with i<j, which represents the set Ei,j, linked together by copies of one of the “propagator gadgets”, Hi or Hi~, which collectively represent the color class Vi for some i∈[k].
We also have a gadget Gi,i, for each i∈[2,k−2], which ensures that the vertex selection in the Hi gadgets also propagates to the Hi~ gadgets.
Each gadget encodes a sequence of z+1 integers X=⟨x0,x1,…,xz⟩, where x0⩾3, and xs−xs−1⩾3 for each s∈[z].
We denote such a gadget G(X) and call it a gadget of G′ of order z.
It is constructed as follows.
First, set
[TABLE]
Note that dq⩾3 for every q∈[0,z].
For each q∈[0,z], we now define a graph Pq which resembles a “thickened path”.
For q∈[1,z−1], let Pq be the graph on the vertex set {wq,1,wq,2,…,wq,dq−1} with edges between distinct wq,d and wq,d′ if and only if ∣d−d′∣∈[2].
For q∈{0,z}, let Pq be the graph on the vertex set {wq,1,wq,2,…,wq,dq} with edges between distinct wq,d and wq,d′ if and only if ∣d−d′∣∈[3].
For each q∈[z], we add a vertex uq adjacent to wq−1,1, wq−1,2, wq,1, and wq,2.
The resulting graph G(X) consists of d_{0}+\big{(}\sum_{q\in[z-1]}(d_{q}-1)\big{)}+d_{z}+z=\big{(}\sum_{q\in[0,z]}d_{q}\big{)}+1=x_{z}+1
vertices, and, for q∈[z], the graph obtained by deleting uq has two components: one of size xq, and the other of size xz−xq.
Let B:={w0,1,w0,2,w0,3} and D:={wz,1,wz,2,wz,3}.
Since we will use several copies of this gadget,
we usually refer to Pq as Pq(G(X)),
a vertex v∈V(G(X)) as v(G(X)),
and B or D as B(G(X)) or D(G(X)) respectively;
but we sometimes omit the “(G(X))” when there is no ambiguity.
We now describe the edge encoding gadget Gi,j, for some i,j∈[k] with i<j; an example is given in Fig. 8.
We can uniquely describe an edge between a vertex in Vi and a vertex in Vj by an ordered pair (a,b), representing the edge viavjb, where a,b∈[t].
We define an injective function ϕ from such a pair to an integer in {3,6,…,3t2}, as given
by (a,b)↦3t(a−1)+3b.
Thus, the set {ϕ(a,b):viavjb∈Ei,j} uniquely describes the set Ei,j.
Let (fi,j0,fi,j1,…,fi,jp−1)
be the sequence obtained after ordering the elements of this set in increasing order, and let fi,jp=3t2+3.
Note that fi,j0⩾3, and fi,jq−fi,jq−1⩾3 for each q∈[p].
Finally, we set Gi,j:=G(⟨fi,j0,fi,j1,…,fi,jp⟩).
We define the propagator gadgets as
Hi:=G(⟨3,6,…,3(t+1)⟩) and Hi~:=G(⟨3t,6t,…,3(t+1)t⟩); see Figs. 8 and 8.
Note that these gadgets have size 3(t+1)+1 and 3t(t+1)+1, respectively.
For each color class Vi, where i∈[2,k−1], we will take i copies of the gadget Hi, and k−i+1 copies of Hi~; whereas for
i=1 (or i=k), we take k−1 copies of Hi~ (or Hi, respectively) only.
Let Hi denote the set containing the copies of Hi, and let Hi~ denote the copies of Hi~.
Note that ∣Hi∪H~i∣=k+1 when i∈[2,k−1], and ∣Hi∪H~i∣=k−1 when i∈{1,k}.
Finally, for each i∈[2,k−2], we have a special gadget Gi,i:=G(⟨ϕ(1,1),ϕ(2,2),…,ϕ(t,t)⟩). Intuitively, this gadget is used to ensure the vertex selected in each Hi∈Hi is the same as in each Hi~∈Hi~.
However, we also consider Gi,i an edge encoding gadget, since it is treated as one in the construction.
In order to describe how these gadgets are joined together in G′, as shown in Fig. 9, we require some terminology.
Given some Gi,j and Gi,j′ with i,j,j′∈[k], we say we connect Gi,j to Gi,j′ using Hi~ to describe adding all nine edges between D(Gi,j) and B(Hi~), and all nine edges between D(Hi~) and B(Gi,j′).
In this case, we also say Hi~ connects from Gi,j and connects to Gi,j′.
Given some Gi,j and Gi′,j with i,i′,j∈[k], the operation of connecting Gi,j to Gi′,j using Hj is defined analogously.
We give the following cyclic ordering to the edge encoding gadgets: (G1,2,G1,3,…,G1,k,G2,2,G2,3,…,G2,k,…,Gk−1,k−1,Gk−1,k).
For each Gi,j, we connect this gadget to the next gadget Gi,j′ in the cyclic ordering that matches on the first index using one of the copies of Hi~, and also connect it to the next gadget Gi′,j in the ordering that matches on the second index using one of the copies of Hj.
For example, we connect G1,3 to G1,4 using a copy of H1~, and connect G1,3 to G2,3 using a copy of H3.
This completes the construction.
Observe that each vertex v∈V(G′) is contained in precisely one gadget, and so each vertex of G′ inherits either a ‘u’ label or a ‘w’ label from its gadget.
In what follows, whenever we refer to an edge encoding gadget Gi,j, or a propagator gadget Hi~ or Hj, it is for some i∈[1,k−1] and j∈[2,k] with i⩽j.
Treewidth.
We now describe a path decomposition of G′ that illustrates that its pathwidth, and hence treewidth, is at most 54k−69.
First, observe that for a gadget H:=G(⟨x0,x1,…,xz⟩), there is a path decomposition where each bag has size at most 4.
By adding B(H)∪D(H) to every bag, we obtain a path decomposition where each bag has size at most 10; we denote this path decomposition by P(H).
Note that H is only linked to other gadgets in G′ by edges with one end in either B(H) or D(H).
Recall that the edge encoding gadgets are joined together using propagator gadgets with respect to the cyclic ordering
[TABLE]
Consider an auxiliary multigraph F on the vertex set {Gi,j:i∈[1,k−1],j∈[2,k],i⩽j}
where there is an edge between Gi,j,Gi′,j′∈V(F) whenever
the gadget Gi,j is connected to Gi′,j′ using some propagator gadget in G′.
(Formally, there is an edge for i=i′ and ∣j−j′∣∈{1,k−i,k−2}, or j=j′ and ∣i−i′∣∈{1,j−1,k−2}.)
We now show that F has pathwidth at most 3k−5.
Let G1={G1,j:j∈[2,k]} and, for i∈[2,k−1], let Gi={Gi,j:j∈[i,k]}.
Then (G1∪G2∪G3,G1∪G3∪G4,…,G1∪Gk−2∪Gk−1) is a path decomposition for F where
the largest bag, the first one, has size 3k−4.
We denote this path decomposition P(F).
We extend this to a path decomposition of G′ by
replacing each bag of P(F)
with a path, which is in turn constructed from several concatenated “subpaths”, one for each gadget.
Suppose, for some i,j∈[k] with i⩽j, we have that Hi~ and Hj connect to Gi,j in G′, and Hi′~ and Hj′ connect from Gi,j in G′; then we denote
Xi,j=D(Hi~)∪D(Hj)∪B(Gi,j)∪D(Gi,j)∪B(Hi′~)∪B(Hj′).
Let Z⊆[k]×[k] such that ⋃(i,j)∈ZGi,j is a bag of the path decomposition of F.
From this bag, we construct a path where each bag contains Q=⋃(i,j)∈ZXi,j. The subpaths of this path are as follows.
For each (i,j)∈Z we have a subpath obtained from P(Gi,j) by adding Q to each bag.
Every edge of F is contained in some bag of the path decomposition, and corresponds to a propagator gadget H of G′.
For each such H, we have a subpath obtained from P(H) by adding Q to each bag.
These subpaths are then concatenated together, end to end, to create the path that replaces the bag ⋃(i,j)∈ZGi,j in P(F).
After doing this for each bag, we obtain a path decomposition of G′.
Note that ∣Z∣⩽3k−4, and ∣Xi,j∣=18, for any (i,j)∈Z. So ∣Q∣⩽18(3k−4). A path decomposition P(H), for some gadget H, has bags with size at most 10, but each bag meets Q in precisely the elements B(H)∪D(H). So the pathwidth of G′ is at most 18(3k−4)+4−1=54k−69.
Correctness (⇒).
First, let X be a multicolored k-clique in G; we will show that G′ has a set S⊆V(G′) such that ∣S∣=3(2k+1)−6
and each component of G′−S has at most d vertices, where d=3t2+3t+3.
Let γ(i) be the index of the unique vertex in X∩Vi for each i∈[k]; that is, X∩Vi={viγ(i)}.
For each H∈Hi∪Hi~, we add the vertex uγ(i)(H) to S; there are (k−2)(k+1)+2(k−1)=k(k+1)−4 such gadgets, so this many
vertices are added to S so far.
For each pair i,j∈k with i<j,
there is some q∈[p] such that ϕ(γ(i),γ(j))=fi,jq; we add the vertex uq(Gi,j) to S.
For i∈[2,k−2], we also add the vertex uγ(i)(Gi,i) to S.
Now ∣S∣=k(k+1)−4+(2k)+k−2=3(2k+1)−6.
We now consider the size of the components of G′−S.
We first analyze the size of the components of a gadget Gi,j, Hi~ or Hj after deleting S.
Note that S meets the vertex set of one of these gadgets in precisely one vertex, and the deletion of this vertex splits the gadget into two components.
The two components of Gi,j−uq have fi,jq=3t(γ(i)−1)+3γ(j) and fi,jp−fi,jq=3t2+3−(3t(γ(i)−1)+3γ(j)) vertices.
The two components of Hi~−uγ(i) have 3tγ(i) and 3t(t+1−γ(i)) vertices, while
the two components of Hj−uγ(j) have 3γ(j) and 3(t+1−γ(j)) vertices.
These gadgets are joined in such a way that the size of a component of G′−S is
[TABLE]
as required.
Finally, observe that the only cycles in each component are contained in a gadget, and each gadget has no chordless cycles, so each component is a chordal graph.
(⇐).
Suppose G′ has a set S⊆V(G′) with ∣S∣⩽3(2k+1)−6
such that each component of G′−S has at most d vertices, where d=3t2+3t+3.
We call any such set S a solution.
First, we show, loosely speaking, that we may assume each vertex in S is a ‘u’ vertex of its gadget, not a ‘w’ vertex.
Let
H be a gadget of G′ of order s.
There are two cases to consider: the first is when, for some r∈[1,s−1], we have that S∩V(Pr(H))=∅.
Suppose Pr(H) contains a pair of adjacent vertices w and w′ such that {w,w′}∩S=∅. If w∈S and w′∈/S,
then, in G′−(S∖{w}), only the component containing w′ can have size more than d, and ∣V(Pr(H))∣⩽3t2<d, so replacing w′ in S with ur−1(H) or ur(H) also gives a solution.
If {w,w′}⊆S, then (S∖{w,w′})∪{ur−1(H),ur(H)} is also a solution.
So we may assume that V(Pr(H))∩S=∅ for each r∈[1,s−1].
Now we consider the second case;
let Gi,j be an edge encoding gadget, let H∈Hi and H~∈Hj~ connect from Gi,j, and
let J be the set of vertices V(Py(Gi,j))∪V(Pz(H))∪V(Pz(H~)), for (y,z)∈{(p,0),(0,k+1)}.
Observe that G′[J] is connected and ∣J∣⩽d; intuitively, these are the vertices involved in the “join” of multiple gadgets in G′.
We show that if J∩S=∅, then there is some solution S′ with J∩S′=∅.
Let U:=NG′(J), so ∣U∣=3.
If ∣J∩S∣⩾3, then (S∖J)∪U is a solution.
Moreover, if ∣U∖S∣⩽∣J∩S∣, then (S∖J)∪U is again a solution.
Assuming otherwise, we can pick U′⊆U∖S such that ∣U′∣=∣J∩S∣.
If G′[(J∪U)∖S] is connected, then S′=(S∖J)∪U′ is a solution. But since ∣J∩S∣⩽2, it follows, by the construction of G′, that G′[J∖S] is connected. Thus, in the exceptional case, the deletion of J∩S disconnects some u∈U∖S from G′[J∖S]. But in this case, if we ensure that U′ is chosen to contain u, then we still obtain a solution S′=(S∖J)∪U′.
Next, we claim that each edge encoding gadget Gi,j or propagator gadget Hi~∈Hi~, has at least one vertex in S.
Consider the subgraph Di,j of G′ induced by V(Gi,j)∪V(Hi~)∪V(Hj), where Hi~ and Hj connect from Gi,j.
Recall that Gi,j consists of 3t2+3+1 vertices, Hi~ consists of 3t2+3t+1 vertices, Hj consists of 3t+3+1 vertices, and hence Di,j has size 2d+3.
If V(Hi~)∩S is empty, then the connected subgraph of Di,j−S containing V(Hi~) also contains Pp(Gi,j), which has size at least 3, so this connected subgraph contains
at least 3t2+3t+1+3=d+1 vertices; a contradiction.
Similarly, if V(Gi,j)∩S is empty, then the connected subgraph of Di,j−S containing V(Gi,j) also contains at least 3t vertices of V(Hi~), so at least d+1 in total; a contradiction.
So ∣V(Hi~)∩S∣,∣V(Gi,j)∩S∣⩾1, as claimed.
Now we claim that each component of G′−S has size exactly d.
Pick S′⊆S such that ∣V(Gi,j)∩S′∣=1 for each edge encoding gadget Gi,j,
and ∣V(Hi~)∩S′∣=1 for each Hi~∈Hi~.
It follows that |S^{\prime}|=2\big{(}\binom{k+1}{2}-2\big{)}, and ∣S∖S′∣=(2k+1)−2.
Now, for distinct propagator gadgets H,H′∈⋃Hi, there is no path in G′−S′ between a vertex in H and a vertex in H′, so G′−S′ has at least (2k+1)−2 components, one for each H∈⋃Hi.
In fact, for every vertex v of G′−S, there exists a vertex v′∈V(H) for some H∈⋃Hi such that there is a path from v to v′, so
G′−S′ has precisely (2k+1)−2 components.
Moreover, since S consists only of ‘u’ vertices, the deletion of each vertex in S∖S′ further increases the number of components by one.
As |V(G^{\prime})|=(2d+3)\big{(}\binom{k+1}{2}-2\big{)}, so
|V(G^{\prime}-S)|=2d\big{(}\binom{k+1}{2}-2\big{)},
and each of the 2\big{(}\binom{k+1}{2}-2\big{)} components of G′−S has size at most d,
these components must have size precisely d, as claimed.
Next we show that each gadget Hj∈Hj also has at least one vertex in S.
Suppose we have some Hj for which S∩V(Hj)=∅.
We calculate the size, modulo 3, of the component C of G′−S that contains Hj. Since the size of V(C)∩V(Hi~) or V(C)∩V(Gi,j)
is congruent to 0(mod3), and ∣V(Hj)∣≡1(mod3),
we deduce that ∣V(C)∣≡1(mod3); a contradiction.
So ∣S∩V(Hj)∣⩾1 for every Hj∈Hj with j∈[2,k].
Since ∣S∣=3(2k), it follows that each gadget meets S in precisely one vertex.
Finally, suppose uq(Gi,j)∈S, for some q∈[p].
Then ϕ(a,b)=fi,jq, for some a,b∈[t].
Let Hi~∈Hi and Hj∈Hj be the propagators that connect from Gi,j.
Now, the component of G′−S containing 3t2+3−(3t(a−1)+3b) vertices of Gi,j−uq also contains 3ta′ vertices of Hi~, and 3b′ vertices of Hj, for some a′,b′∈[t].
So
[TABLE]
Working modulo t, we deduce that 3(b′−b+1)≡3(modt), hence b=b′.
It then follows that 3t(a′−(a−1))=3t, so a=a′.
Thus ua(Hi~),ub(Hj)∈S.
On the other hand, if for some a,b∈[t] we have ua(Hi~),ub(Hj)∈S, where Hi~ and Hj connect to Gi,j, then the component of G′−S containing vertices from these three gadgets contains 3t(t+1−a) vertices from Hi~,
as well as 3(t+1−b) vertices from Hj, and
3t(a′−1)+3b′ from Gi,j for some a′,b′∈[t].
Since this component has a total of 3t2+3t+3 vertices, working modulo t we deduce that 3b′+3−3b≡3(modt), so b=b′.
It follows that
3t(a−a′+1)=3t, so a=a′.
Thus, uq(Gi,j)∈S for q∈[p] such that ϕ(a,b)=fi,jq.
We deduce that for every l∈[k], there exists some γ(l) such that
V(H~)∩S={uγ(i)} for every H~∈Hi~,
V(H)∩S={uγ(j)} for every H∈Hj, and
V(Gi,j)∩S={uq} for q∈[p] such that fi,jq=ϕ(γ(i),γ(j)).
It follows that each viγ(i)vjγ(j) is an edge of G, and X={viγ(i):i∈[k]} is a multicolored k-clique in G, as required.
∎
Theorem 7.1 implies that Bounded P-Component Vertex Deletion has no algorithm running in time f(w)nO(1),
assuming FPT=W[1].
However, we can say something stronger, assuming the ETH holds.
Since, in the parameterized reduction in the previous proof, the treewidth of the reduced instance G′ has linear dependence on k, a f(w)no(w)-time algorithm for this problem
would lead to a f(k)no(k)-time algorithm for Multicolored Clique.
But, assuming the ETH holds, no such algorithm for Multicolored Clique exists [13].
So we have the following:
Theorem 7.2**.**
Unless the ETH fails, there is no f(w)no(w)-time algorithm for Bounded P-Component Vertex Deletion when P contains all chordal graphs.
Furthermore, Marx [16] showed that, assuming the ETH holds, Subgraph Isomorphism has no f(k)no(k/logk)-time algorithm, where k is the number of edges in the smaller graph.
By reducing from Subgraph Isomorphism, instead of Multicolored Clique, we obtain a lower bound with the combined parameter treewidth and solution size.
Theorem 7.3**.**
Unless the ETH fails, there is no
f(k′)no(k′/logk′)-time algorithm for Bounded P-Component Vertex Deletion,
where k′=w+k,
when P contains all chordal graphs.
Proof.
Let (G,H) be a Subgraph Isomorphism instance where the task is to find if G has a subgraph isomorphic to H.
Let k:=∣V(H)∣ and t:=∣V(G)∣, and suppose V(G)={va:a∈[t]} and V(H)={vi:i∈[k]}.
Let Vi={via:a∈[t]} for each i∈[k], and
let G+ be the graph on the vertex set ⋃i∈[k]Vi
with an edge viavjb if and only if i=j and vavb is an edge of G.
Now the task is to select ∣E(H)∣ edges of G+ that induce a multicolored subgraph of G+; that is, the vertex set of this edge-induced subgraph meets each Vi in exactly one vertex.
We construct G′ from G+ using a similar construction as in the proof of Theorem 7.1, but we only have an edge encoding gadget Gi,j for 1⩽i<j⩽k when vivj is an edge in H.
More specifically, we take the subsequence of (G1,2,G1,3,…,G1,k,G2,2,G2,3,…,G2,k,…,Gk−1,k−1,Gk−1,k) consisting of each Gi,j for which vivj∈E(H), as well as Gi,i for all i∈[2,k−1], and, as before, connect
each Gi,j to the next Gi,j′ in the cyclic ordering that matches on the first index using a copy of Hi~, and also connect it to the next gadget Gi′,j in the ordering that matches on the second index using a copy of Hj.
Note that p=∣Ei,j∣=2∣E(G)∣.
By a routine adaptation of Theorem 7.1, it is easy to see that tw(G′)=O(k), and that G has a subgraph isomorphic to H if and only if G′ has a set S⊆V(G′) of size at most k′ such that each component of G′−S has size at most d.
Now the parameter in the reduced instance is k′′:=tw(G′)+k′=O(∣V(H)∣)+O(∣V(H)∣2)=O(∣E(H)∣).
Thus, an f(k′′)no(k′′/logk′′)-time algorithm for Bounded P-Component Vertex Deletion would lead to an algorithm for Subgraph Isomorphism running in time f(∣E(H)∣)no(∣E(H)∣/log∣E(H)∣). But there is no algorithm for Subgraph Isomorphism with this running time unless the ETH fails [16].
∎