Strongly chordal- (k,ℓ) graph sandwich problem
The purpose of this section is to prove that the STRONGLY CHORDAL- ( k,ℓ )-SP is NP-complete for all k,ℓ≥ 1. This problem can be formulated as follows:
strongly chordal- ( k,ℓ ) graph sandwich problem
Instance: G1=(V,E1) and G2=(V,E2), such that E1⊆E2.
Question: Is there a graph G=(V,E) such that E1⊆E⊆E2 and G is a strongly chordal- (k,ℓ) graph?
We notice that k and ℓ are not part of the input.
In order to prove the main theorem, we will first present the STRONGLY CHORDAL-(1,1)-SP.
Strongly chordal- (1,1) graph sandwich problem
We prove that the STRONGLY CHORDAL-(1,1) SANDWICH PROBLEM is NP-complete by showing a reduction from the NP-complete problem CHORDAL BIPARTITE GRAPH SANDWICH PROBLEM[6].
Proposition 1.
Let G=(X,Y,E) be a bipartite graph and G′ be the graph obtained from the addition of edges to X in order to obtain a clique. Then G is chordal bipartite if and only if G′ is strongly chordal [21].
Notice that, since X is transformed into a clique, G is chordal bipartite if and only if G′ is strongly chordal-(1,1).
We can formulate the CHORDAL BIPARTITE GRAPH SANDWICH PROBLEM as follows:
chordal bipartite graph sandwich problem
Instance: G1=(V,E1) and G2=(V,E2), such that E1⊆E2.
Question: Is there a graph G=(V,E) such that E1⊆sE⊆E2 and G is a chordal bipartite graph?
Theorem 2.
The STRONGLY CHORDAL-(1,1)-SP is NP-complete.
Proof.
The problem is clearly in NP. In order to prove its NP-completeness, we will consider the following special instance of the STRONGLY CHORDAL-(1,1)-SP obtained from (G1, G2), an instance of the NP-complete problem CHORDAL BIPARTITE-SP[6], such that there is a chordal bipartite sandwich graph G for (G1,G2) if and only if there is a strongly chordal-(1,1) sandwich graph G′ for .
First, we observe that CHORDAL BIPARTITE-SP is NP-complete even when G1 is connected. Let G1 be (X,Y,E1) and we define and as follows: , where and . This finishes the construction of .
The proof of the NP-completeness of the STRONGLY CHORDAL-(1,1) follows from Proposition 1. □
Strongly chordal- (k,ℓ) graph sandwich problem, k ≥ 1, ℓ ≥ 1
After solving the STRONGLY CHORDAL-(1,1)-SP, the question about the complexity of the STRONGLY CHORDAL- ( k,ℓ )-SP, for k≥ 1 and ℓ≥ 1, naturally arises. We have succeeded to prove that the STRONGLY CHORDAL- ( 1,ℓ )-SP, for ℓ≥ 1 and the STRONGLY CHORDAL- ( k ,1)-SP, for k≥ 1, are NP-complete.
Lemma 1.
Given k≥ 1 and ℓ≥ 1, if STRONGLY CHORDAL- ( k,ℓ )-SP is NP-complete, then STRONGLY CHORDAL- ( k,ℓ +1)-SP is NP-complete.
Proof.
We remark that the STRONGLY CHORDAL- ( k,ℓ ) GRAPH SANDWICH PROBLEM, k ≥ 1,ℓ ≥ 1 is in NP, since we can check in polynomial time whether a graph G is a sandwich for a pair (G1,G2) and whether it is strongly chordal- (k,ℓ) [14]-[16].
We consider the following special instance of STRONGLY CHORDAL- ( k,ℓ +1)-SP obtained from (G1, G2), an instance of the NP-complete problem STRONGLY CHORDAL- ( k,ℓ )-SP, such that there is a strongly chordal- (k,ℓ) sandwich graph G for (G1,G2) if and only if there is a strongly chordal- (k,ℓ+1) sandwich graph G′, k ≥ 1, ℓ ≥ 1, for .
From (G1,G2), we define one additional clique K, such that |K|=k+1. We set V(G1) ⋃ V(K), E1⋃E(K) and E2⋃E(K). This concludes the construction of the instance (see Figure 2 as an example).
Suppose there is a strongly chordal- (k,ℓ) sandwich graph G for (G1,G2). Consider G′ formed by G plus the forced edges of . In order to prove that graph G′ is a strongly chordal graph, we consider the strong elimination sequence started by any sequence of the vertices of K, followed by a strong elimination sequence of the strongly chordal graph G. In order to prove that G′ is (k,ℓ+1),k ≥ 1 and ℓ ≥ 1, we consider a (k,ℓ)-partition for G, and we set a (k,ℓ+1)-partition for G′ formed by the k independent sets, the ℓ cliques of G, and K.
Suppose there is a strongly chordal- (k,ℓ+1) sandwich graph G′ for , k ≥ 1 and ℓ ≥ 1. Given G=G′-K, we will prove that G is a strongly chordal- (k,ℓ) sandwich graph for (G1,G2). Suppose by contradiction that G is not a strongly chordal- (k,ℓ) graph. First, note that, since being a strongly chordal graph is an hereditary property, G must be strongly chordal. Thus, if G is not strongly chordal- (k,ℓ) then it is because G is not a (k,ℓ)-graph. It follows from Theorem 1 that G contains a (ℓ+1)(Kk+1) as an induced subgraph. Since G′ is the disjoint union of G and K, there is an induced subgraph (ℓ+2)Kk+1 of G′ formed by K and the induced subgraph (ℓ+1)(Kk+1) of G. By Theorem 1, G′ is not strongly chordal- (k,ℓ+1), a contradiction. Hence, G is a strongly chordal- (k,ℓ) graph. □
Theorem 3.
STRONGLY CHORDAL- (1, ℓ )-SP, for ℓ ≥ 1, is NP-complete.
Proof.
The proof of Theorem 3 is done by induction using Theorem 2 and Lemma 1. □
Lemma 2.
Given k ≥ 1, STRONGLY CHORDAL- ( k ,1)-SP is NP-complete.
Proof.
We remark that the STRONGLY CHORDAL- ( k ,1) GRAPH SANDWICH PROBLEM, k ≥ 1 is in NP, since we can check in polynomial time whether a graph G is a sandwich for a pair (G1,G2) and whether it is strongly chordal- (k,ℓ) [9],[15].
We consider the following special instance of STRONGLY CHORDAL- ( k ,1)-SP obtained from (G1, G2), a connect instance of the NP-complete problem CHORDAL BIPARTITE-SP[6], such that there is a chordal bipartite sandwich graph G=(V,E) for (G1,G2) if and only if there is a strongly chordal- (k,1) sandwich graph G′, k ≥ 1 for .
Notice that if there exists G a chordal bipartite sandwich graph, then G1=(V,E1) must be bipartite. Let G1=(X,Y,E1). Given Y={y1,y2,…,y
q
}, we describe
V⋃{w1,w2,…,wk-1} and
⋃{(w
i
,w
j
), (w
i
,y1)|i≠j; i,j∈ {1,2,…,k-1}}.
This concludes the construction of the instance (see Figure 3 as an example).
We will prove now that there exists G a chordal bipartite sandwich graph for (G1,G2) if and only if there exists G′ a strongly chordal- (k,1) sandwich graph for .
Suppose that G is a chordal bipartite sandwich graph for (G1,G2). Let G′ be the graph where and E(G′)=E(G)⋃{(w
i
,w
j
), (w
i
,y1)|i≠j; i,j∈{1,2,…,k-1}}⋃{(x
i
,x
j
)|x
i
,x
j
∈X}. We will prove that G′ is strongly chordal and we will exhibit the partition of its vertex set into k independent sets and one clique. Observe that a sun of G′ entirely belongs to a block of G′. Since y1 is a cut-vertex, we have that a sun of G′ belongs to the graph G′ [V]. By the Proposition 1, G′ [V] is strongly chordal. Hence, we can ensure that G′ is strongly chordal. Moreover, we can exhibit the (k,1)-partition of G′: Each vertex of {y1,w1,w2,…,wk-1} participates of an independent set and the clique is induced by X.
Now suppose that G′ is a strongly chordal- (k,1) sandwich graph for . We prove next that G=(V,E), where E={E(G′)\{(x
i
,x
j
)|x
i
,x
j
∈X}. We observe that the instance (G1,G2) of the NP-complete sandwich problem for chordal bipartite graphs [6] can be assumed to satisfy that G1 is connected and G2 is bipartite. Suppose by contradiction, that G contains a C6. In this case, we would have a sun in G′ [V], and this is a contradiction. □
Theorem 4.
STRONGLY CHORDAL- ( k,ℓ )-SP is NP-complete for k ≥ 1 and ℓ ≥ 1.
Proof.
This proof follows from Lemma 2 and Theorem 3. □
Chordal- (k,ℓ) graph sandwich problem
This problem can be formulated as follows:
chordal- ( k,ℓ ) graph sandwich problem
Instance: G1=(V,E1) and G2=(V,E2), such that E1⊆E2.
Question: Is there a graph G=(V,E) such that E1⊆E⊆E2 and G is a chordal- (k,ℓ) graph?
From the literature, we know that the CHORDAL-(1,1)-SP is polynomially solvable [1]. In order to prove the main theorem of this section, we will first present the proof that CHORDAL-(2,1)-SP is NP-complete. We observe that this result is stated in [18], but the proof was omitted.
Chordal- (2,1) graph sandwich problem
Theorem 5.
CHORDAL-(2,1)-SP is NP-complete.
Proof.
This proof follows from the NP-completness proof of TRIANGULATING COLORED GRAPHS (TCG)[19] and of CHORDAL-SP[1]. We can fomally define TCG as follows:
triangulating colored graphs (tcg)
Input: A graph G=(V,E) and a proper vertex coloring .
Question: Does there exist a supergraph G′=(V,E′) of G that is chordal and properly colored on vertices by c?
First, we will prove that the (2,1)-TRIANGULATING COLORING GRAPHS ((2,1)-TCG) is NP-complete. This problem cam be formulated as follows:
(2,1)-triangulating colored graphs ((2,1)tcg)
Input: A graph G=(V,E) and a proper vertex coloring .
Question: Does there exist a supergraph G′=(V,E′) of G that is chordal-(2,1) and properly colored on vertices by c?
We will use the same polynomial reduction from THREE-SATIFIABILITY PROBLEM (3SAT) [20] that was used by Bodlaender et al. to prove that TCG is NP-complete, and we will show that the instance used is also a (2,1)-graph. So, we will first present here the particular chordal graph they have constructed.
For our purposes, we will consider a graph G
I
obtained by an instance I of 3SAT that is composed by a decision component and some clause components. We will suppose that any clause contains both a literal and its complement. For each variable X or its complement contained in a clause i of I we have a decision component like the one of Figure 4.
Each decison component has the vertex set: H (head), (shoulders), (knees) and F (foot). The instance G
I
has only one head and one foot, a pair of shoulders for each variable X of I and a pair of knees for each occurence of X or in a clause i of I. Moreover, as we can see in Figure 4, head and foot will receive the same color. We will do the same for each pair of shoulders and for each pair of knees . Note that each color is assigned to exactly two vertices.
In order to triangulate the component related to the variable X, we can add either the set of edges or the set of edges , . We call the first set as Mark of Zorro on positive orientation and the second set as Mark of Zorro on negative orientation (Figure 5). Furthermore, we add either all edges or all edges .
If the Mark of Zorro is positively oriented in the decision component of X, the literal X will be set as TRUE. Otherwise, it will be set as FALSE.
To construct a clause component, we will not add vertices to G
I
. We will just add some edges between some knees.
Let L be a literal of the clause i. We say that is an active knee and is an inactive knee.
Consider f as a truth assignment that satisfies the instance I of 3SAT. In this case, there exists at least one true literal in each clause. We will rename the variables in order to have X as a true literal and as a false literal.
We have finally constructed the graph G
I
(see Figure 6 as an example) and we will transform this graph in one that is chordal and (2,1). So, we will add some edges and prove that these edges turn G
I
into a (2,1)-graph. The proof that it is also a chordal graph can be found in [19].
To transform G
I
into a chordal-(2,1) graph, we will add
The edges of the positive orientation of the Mark of Zorro;
Edges that compose the complete graph formed by true shoulders and true knees; and
Edges such that true shoulders are adjacent to all false knees.
Bodlaender et al. have proved that this modified instance is a chordal graph [19]. In order to show that this graph is also a (2,1)-graph, we will prove that it does not contain a pair of isolated triangles [15].
Observing the set of edges we have added in order to transform G
I
into a chordal-(2,1) graph, we can see that each triangle formed by the addition of these edges has at least one true shoulder or at least one true knee. However, the clause components form three types of triangles in the graph:
-
1.
Triangles composed by active knees.
In this case, since the truth assignment must satisfy the instance I, all triangles must have at least one true knee.
-
2.
Triangles composed by the foot and one true knee; and
-
3.
Triangles composed by two false knees and the foot.
Note that the third type of triangles do not have true knees or true shoulders, but they have a common vertex: F. Also note that the foot is adjacent to all knees and to all true shoulders. Thus, this type of triangle is not isolated from any other triangle of the graph, and then we can state that this modified instance is a (2,1)-graph. Therefore, we can also exhibit the (2,1)-partition.
Clique - True shoulders, true knees and the foot.
Independent sets
S1: The head, active false knees adjacent to inactive true knees, inactive false knees.
S2: False shoulders, active false knees adjacent to inactive false knees.
Note that the head is not adjacent to false knees, and active false knees adjacent to inactive true knees are not adjacent to inactive false knees, even when they are from distinct clauses. Moreover, false shoulders are not adjacent to false knees. Hence, this (2,1)-partition is well defined. □
Chordal- (1,2) graph sandwich problem
In order to prove that CHORDAL-(1,2) GRAPH SANDWICH PROBLEM is NP-complete, we will use the same instance G
I
used to prove that CHORDAL-(2,1)-SP is NP-complete.
Lemma 3.
The instance I of 3-SAT is satisfiable if and only if there is a (1,2)-triangulation for G
I
respecting the proper coloring of G
I
.
Proof.
The sufficiency proof of Lemma 3 is already done in [19].
In order to prove its necesssity, suppose that there is a satisfiable truth assignment f for I. We will add the following set of edges in order to obtain a chordal-(1,2) graph respecting the proper coloring of G
I
.
The positive orientation of Mark of Zorro for each decision component;
All edges between true knees and true shoulders, in order to obtain a clique;
Edges such that every true shoulder sees every false knee;
All edges between active knees, and
Edges between inactive true knees adjacent to active false knees and active false knees adjacent to inactive true knees
Let G1 be the instance G
I
plus these additional edges and consider the following sets:
S1={False shoulders, inactive false knees };
S2={Head};
S3={Inactive true knee adjacent to an active true knee };
S4={Active false knee adjacent to an inactive false knee };
S5={Active false knee adjacent to an inactive true knee (in the same clause component) }, and
S6={Active true knees, true shoulders, foot }.
First, observe that these added edges are in the set of optional edges of G
I
. After, lets analyze the neighborhoods of each vertex of these sets.
False shoulders are adjacent to the head and to some true knees. Since head and true knees form a clique, each false shoulder is a simplicial vertex that can be removed. Inactive false knees are adjacent to the foot, to true shoulders and to an active knee (true or false). This set is also a clique and inactive false knees are simplicial vertices as well, so they can be deleted. Let G2 be the resulting graph after these remotions.
The neighborhood of the head in G2 is formed by true shoulders and true knees, what induces a clique in G2. Then the head is a simplicial vertex that can be removed of the graph. Let G3 be the graph after the remotion of the Head.
The vertices of S3 in G3 are adjacent to the foot, to true shoulders and to true knees. Again, this set of vertices induces a clique in G3. So, inactive true knees adjacent active true knees are simplicial vertices in G3 that can be deleted forming G4.
The vertices of S4 in G4 are adjacent to true shoulders, to the foot and to all active knees (true or false). Active knees form a clique as well as true shoulders and the foot sees every knee and every true shoulder. Moreover, true shoulders are adjacent to all knees. So, this neighborhood is also a clique what characterizes each active false knee adjacent to an inactive false knee as a simplicial vertex in G4. Let G5 be the graph after the remotion of all active false knee adjacent to an inactive false knee.
The vertices of S5 are adjacent to all active knees, to all inactive true knees adjacent to an active false knee, to true shoulders and to the foot in G5. This neighborhood induces a clique, and, because of that, active false knees adjacent to inactive true knees can be removed in this step. Let G6 be the resulting graph, after the remotion of vertices of S5.
Clearly G6 is a clique.
Observe that, if we follow the order of the sets, any elimination ordering of vertices applied to each set creates a perfect elimination ordering for the graph G1. Moreover, we can present a (1,2)-partition for the vertex set of G1:
Independent set - False shoulders and inactive false knees.
Clique 1 - Head, true shoulders and true knees.
Clique 2 - Foot and active false knees.
This concludes the proof of Lemma 3. □
Theorem 6.
CHORDAL-(1,2)-SP is NP-complete.
Proof.
Clearly, CHORDAL-(1,2)-SP is in NP. The NP-completeness proof follows from the polynomial redution done in Lemma 3. □
Chordal- (k,ℓ) graph sandwich problem, k ≥ 1, ℓ ≥ 2
Lemma 4.
Given k and ℓ positive integers such that k+ℓ≥3, if CHORDAL- ( k,ℓ )-SP is NP-complete, then CHORDAL- (k+1,ℓ)-SP is NP-complete.
Proof.
Observe that the CHORDAL- ( k,ℓ ) GRAPH SANDWICH PROBLEM, k,ℓ>0 and k+ℓ≥ 3, is in NP, since we can check in polynomial time whether a graph G is a sandwich for a pair (G1,G2) and whether it is chordal- (k,ℓ) [15].
We consider the following special instance of the problem CHORDAL- ( k+1,ℓ )-SP obtained from (G1,G2), an instance of the NP-complete problem CHORDAL- ( k,ℓ )-SP, such that there is a (k,ℓ)-chordal sandwich graph G for (G1,G2) if and only if there is a (k+1,ℓ)-chordal sandwich graph G′, k,ℓ>0 and k+ℓ ≥ 3, for .
We denote by n1 and n2, respectively, the number of Kk+1's of G1 and G2. Let be the subgraphs of G2 isomorphic to Kk+1. For each of G2 we define one additional vertex u
i
, such that forms a clique Ki, i=1,… ,n2. We set , , and . This concludes the construction of the instance .
Suppose there is a chordal- (k,ℓ) sandwich graph G for (G1,G2). Consider G′ formed by G plus the forced edges of . In order to prove that G′ is a chordal graph, we consider the perfect elimination sequence started by the simplicial vertices u
i
, i=1,…,n2, and followed by a perfect elimination sequence of the chordal graph G. To prove that G′ is a (k+1,ℓ)-graph, k,ℓ>0 and k+ℓ ≥ 3, we consider a (k,ℓ)-partition of G, and we define a (k+1,ℓ)-partition for G′ formed by the k independents sets of G, the independent set , and the ℓ cliques of G.
Suppose there is a chordal- (k+1,ℓ) sandwich graph G′ for , k,ℓ>0 and k+ℓ≥3. We consider and we will prove that G is a chordal- (k,ℓ)-sandwich graph for (G1,G2). Suppose by contradiction that G is not a chordal- (k,ℓ) graph. Note that, since being a chordal graph is an hereditary property, if G is not chordal then G′ is not chordal either. It follows from Theorem 1 that G contains a (ℓ+1)Kk+1 as an induced subgraph (see Figure 1). By construction of G′, for each of G2 there is an additional vertex u
i
forming a Kk+2 in (see Figure 7 for an example). Then, we have (ℓ+1) copies of Kk+2 in G′ which, by the characterization in [15], implies that G′ is not chordal- (k+1,ℓ). Hence, G must be chordal- (k,ℓ). □
Theorem 7.
CHORDAL- ( k,ℓ )-SP, for k,ℓ>0 and k+ℓ ≥ 3, is NP-complete.
Proof.
The proof of Theorem 7 is done by a two-step mathematical induction on k and ℓ where the induction bases follow from Theorems 5 and 6 and the inductive steps follow from Lemma 1 and Lemma 4. □
Chordal- (k,ℓ) graph sandwich problem when k=0 or ℓ=0
Observe first that (1,0) and (2,0) are hereditary polynomial time checkable properties, and that a (2,0)-graph G is chordal if and only if G is acyclic. Hence, in both cases, in order to have a positive answer for the sandwich problem, G1 must satisfy the required property. Therefore, (STRONGLY) CHORDAL-(1,0)-SP and (STRONGLY) CHORDAL-(2,0)-SP are polynomially solvable. Moreover, since the existence of a chordal-(0,1) sandwich graph depends on G2 being a clique, we have that (STRONGLY) CHORDAL-(0,1)-SP is polynomially solvable as well.
Chordal- (0,2) graph sandwich problem
The following Lemma allows us to analyze the complexity of the (STRONGLY) CHORDAL-(0,2) GRAPH SANDWICH PROBLEM.
Lemma 5.
G is chordal-(0,2) if and only if G is strongly chordal-(0,2).
Proof.
If G is chordal-(0,2), then G cannot have a sun as an induced subgraph since, in this case, the size of an independent set is at most 2.
If G is strongly chordal-(0,2), then G is chordal-(0,2) by definition. □
Theorem 8.
CHORDAL-(0,2)-SP is polynomially solvable.
Proof.
In order to define an algorithm for CHORDAL-(0,2) sandwich graph problem we use a polynomial reduction to the poly-time problem 2SAT. With this purpose, from the vertex u and the partition (V1,V2) into two cliques for V, we define the Boolean variable:
belongs to the part V
i
,i∈{1,2}.
Given a CHORDAL-(0,2) sandwich instance (G1,G2).
We assume that there is no universal vertex in G2 since in a (0,2)-partition, this vertex can be added to any part. Next, we describe our polynomial time algorithm to CHORDAL-(0,2)-SP.
Correctness: We notice that if I=(U,C) is satisfiable, then a chordal-(0,2) sandwich graph G is obtained for the CHORDAL-(0,2) instance (G1,G2) by setting vertex u on V1 if and only if variable u1 is true and on V2 otherwise. The only optional edges added are the edges between vertices inside a same part either V1 or V2.
In order to see that, notice that clauses in 2a provide that the endpoints of each forbidden edge belong to a part of the partition (V1,V2). Clauses in 2b provide that each endpoint of each forbidden edge belong to exactly one part of the partition (V1,V2). Clauses in 2c provide that if one endpoint of a forbidden edge belong to one part, then the other endpoint belongs to the other part of the partition (V1,V2). Finally, clauses in 3 provide that from a satisfiable solution for I=(U,C), there is no C4 in G.
Suppose that there is a chordal sandwich graph G with partition into cliques (V1,V2) for the CHORDAL-(0,2) instance (G1,G2). We assume that all the optional edges of G belong to either G [V1] or G [V2]. Hence, no forbidden edge is allowed inside V1 or V2, and no C4 have two forced edges connecting vertices from V1 to V2. Hence, there is a satisfiable solution for I=(U,C) such that the sandwich graph G is obtained for the CHORDAL-(0,2) instance (G1,G2). □