Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

Several natural graph classes are known to have polynomially many minimal separators, w.r.t. the number n of vertices of the graph. It is the case for chordal graphs, which have at most n minimal separators [19], weakly chordal, circular-arc and circle graphs, which have \(\mathcal {O}(n^2)\) minimal separators [4, 16].

The property of having polynomially many minimal separators has been used in algorithms for decades, initially in an ad-hoc manner, i.e., algorithms were based on minimal separators but also other specific features of particular graph classes (see, e.g., [3, 16]). Later, it was observed that minimal separators are sufficient for solving problems like Treewidth or Minimum fill-in [4, 5]. Both problems are related to minimal triangulations. Given an arbitrary graph G, a minimal triangulation is a minimal chordal supergraph H of G, on the same vertex set. Bouchitté and Todinca [4] introduced the notion of potential maximal clique, that is, a vertex set of G inducing a maximal clique in some minimal triangulation H of G. Their algorithm for treewidth is based on dynamic programming over minimal separators and potential maximal cliques. The same authors proved that the number of potential maximal cliques is polynomially bounded in the number of minimal separators [5].

Fomin and Villanger [14] found a more surprising application of minimal separators and potential maximal cliques, proving that they were sufficient for solving problems like Maximum Independent Set, Maximum Induced Forest, and more generally for finding a maximum induced subgraph G[F] of treewidth at most t, where t is a constant.

More formally, let \({\text {poly}}\) be some polynomial. We call \(\mathcal {G}_{{\text {poly}}}\) the family of graphs such that \(G \in \mathcal {G}_{{\text {poly}}}\) if and only if G has at most \({\text {poly}}(n)\) minimal separators. By [14], the problem of finding a maximum induced subgraph of treewidth at most t can be solved in polynomial time on \(\mathcal {G}_{{\text {poly}}}\). The exponent of the polynomial depends on \({\text {poly}}\) and on t. In [13], Fomin et al. further extend the technique to compute large induced subgraphs of bounded treewidth, and satisfying some CMSO property (expressible in counting monadic second-order logic). That allows to capture problems like Longest induced path. They also point out some limits of the approach. It is asked in [13] whether the techniques can be extended for solving the Connected Vertex Cover problem, which is equivalent to finding a maximum independent set F such that \(G - F\) is connected. More generally, their algorithm computes an induced subgraph G[F] of treewidth at most t satisfying some CMSO property, but is not able to ensure any property relating the induced subgraph to the initial graph.

Here we make some progress in this direction. First, we consider the problem Distance-d Independent Set on \(\mathcal {G}_{{\text {poly}}}\), where the goal is to find a maximum independent set F of the input graph G, such that the vertices of F are at pairwise distance at least d in G (in the literature this problem is also known as d-Scattered-Set). This is equivalent to finding a maximum independent set in graph \(G^{d-1}\), the \((d-1)\)-th power of G. Eto et al. [12] already studied the problem on chordal graphs, and proved that it is polynomial for every even d, and NP-hard for any odd \(d\ge 3\) (it is even W[1]-hard when parameterized by the solution size). Their positive result is based on the observation that for any even d, if G is chordal then so is \(G^{d-1}\). Eto et al. [12] ask if Distance- d Independent Set is polynomial on chordal bipartite graphs (which are not chordal but weakly chordal, see Sect. 2), a subclass of \(\mathcal {G}_{{\text {poly}}}\). We bring a positive answer to their question for even values d, by a result of combinatorial nature: for any graph G and any odd k, the graph \(G^k\) has no more minimal separators than G (see Sect. 3). Consequently, Distance-d Independent Set is polynomial on \(\mathcal {G}_{{\text {poly}}}\), for any even value d and any polynomial \({\text {poly}}\), and NP-hard for any odd \(d \ge 3\) and any \({\text {poly}}(n)\) asymptotically larger than n. Such a dichotomy between odd and even values also appears when computing large d-clubs, that are induced subgraphs of diameter at most d [15], and for quite similar reasons.

Second, we consider Connected Vertex Cover, Connected Feedback Vertex Set and more generally the problem of finding a maximum induced subgraph G[F] of treewidth at most t, such that \(G - F\) is connected. We show (Sect. 4) that the problems are polynomially solvable for subclasses of \(\mathcal {G}_{{\text {poly}}}\), like chordal and circular-arc graphs. This does not settle the complexity of these problems on \(\mathcal {G}_{{\text {poly}}}\). As we shall discuss in Sect. 5, when restricted to bipartite graphs in \(\mathcal {G}_{{\text {poly}}}\), Connected Vertex Cover can be reduced from Red-Blue Dominating Set (see [10]). It might be that this latter problem is NP-hard on bipartite graphs of \(\mathcal {G}_{{\text {poly}}}\); that was our hope, since the very related problem Independent Dominating Set is NP-hard on chordal bipartite graphs [8], and on circle graphs [6]. This question is still open, however we will observe that the Red-Blue Dominating Set is polynomial on the two natural classes of bipartite graphs with polynomially many minimal separators: chordal bipartite and circle bipartite graphs.

2 Preliminaries

Let \(G = (V,E)\) be a graph. Let \(dist_G(u,v)\) denote the distance between vertices u and v (the minimum number of edges of a uv-path). We denote by \(N_G^k[v]\) the set of vertices at distance at most k from v. Let also \(N_G^k(v) = N_G^k[v] \setminus \{v\}\), and we call these sets the closed and open neighborhoods at distance k of v, respectively. Similarly, for a set of vertices \(U \subseteq V\), we call the sets \(N_G^k(U) = \cup _{u\in U} N_G^k(u) \backslash ~U\) and \(N_G^k[U] = \cup _{u\in U} N_G^k[u]\) the open and closed neighborhoods at distance k of U, respectively. For \(k=1\), we simply denote by \(N_G(U)\), respectively \(N_G[U]\), the open and closed neighborhoods of U; the subscript is omitted if clear from the context.

A clique (resp. independent set) of G is a set of pairwise adjacent (resp. non-adjacent) vertices. A distance-d independent set is a set of vertices at pairwise distance at least d. Equivalently, it is an independent set of the \((d-1)\)-th power \(G^{d-1}\) of G. Graph \(G^k = (V,E^k)\) is obtained from G by adding an edge between every pair of vertices at distance at most k.

Given a vertex subset C of G, we denote by G[C] the subgraph induced by C. We say that C is a connected component of G if G[C] is connected and C is inclusion-maximal for this property. For \(S \subseteq V\), we simply denote \(G - S\) the graph \(G[V \setminus S]\). We say that S is a ab-minimal separator of G if a and b are in distinct components C and D of \(G-S\), and \(N(C) = N(D) = S\). We also say that S is a minimal separator if it is an ab-minimal separator for some pair of vertices a and b.

Proposition 1

([2]). Let \(G = (V,E)\) be a graph, C be a connected set of vertices, and let D be a component of \(G - N[C]\). Then N(D) is an ab-minimal separator of G, for any \(a \in C\) and \(b \in D\).

2.1 Graph Classes

A graph is chordal if it has no induced cycle with more than three vertices. A graph G is weakly chordal if G and its complement \(\overline{G}\) have no induced cycle with more than four vertices.

The classes of circle and circular-arc graphs are defined by their intersection model. A graph G is a circle graph (resp. a circular-arc graph) if every vertex of the graph can be associated to a chord (resp. to an arc) of a circle such that two vertices are adjacent in G if and only if the corresponding chords (resp. arcs) intersect. We may assume w.l.o.g. that, in the intersection model, no two chords (resp. no two arcs) share an endpoint. On the circle, we add a scanpoint between each two consecutive endpoints of the set of chords (resp. arcs). A scanline is a line segment between two scanpoints. Given an intersection model of a circle (resp. circular-arc) graph G, for any minimal separator S of G there is a scanline such that the vertices of S correspond exactly to the chords (resp. arcs) intersecting the scanline, see, e.g., [16].

Chordal graphs have at most n minimal separators [19]; weakly chordal, circle and circular-arc graphs all have \(\mathcal {O}(n^2)\) minimal separators [4, 16].

Definition 1

Let \({\text {poly}}\) be some polynomial. We call \(\mathcal {G}_{{\text {poly}}}\) the family of graphs such that \(G \in \mathcal {G}_{{\text {poly}}}\) if and only if G has at most \({\text {poly}}(n)\) minimal separators, where \(n = |V(G)|\).

2.2 Dynamic Programming over Minimal Triangulations

Let \(G=(V,E)\) be an arbitrary graph. A chordal supergraph \(H = (V, E')\) (i.e., with \(E \subseteq E'\)), is called a triangulation of G. If, moreover, \(E'\) is inclusion-minimal among all possible triangulations, we say that H is a minimal triangulation of G.

The treewidth of a chordal graph is its maximum clique size, minus one. Forests have treewidth 1, and graphs with no edges have treewidth 0. The treewidth \({\text {tw}}(G)\) of an arbitrary graph G is the minimum treewidth over all (minimal) triangulations H of G.

Cliques of minimal triangulations play a central role in treewidth. A potential maximal clique of G is a set of vertices that induces a maximal clique in some minimal triangulation H of G. By [4], if \(\varOmega \) is a potential maximal clique, then for every component \(C_i\) of \(G - \varOmega \), its neighborhood \(S_i\) is a minimal separator. Moreover, the sets \(S_i\) are exactly the minimal separators of G contained in \(\varOmega \).

Proposition 2

([1, 5]). For any polynomial \({\text {poly}}\), there is a polynomial-time algorithm enumerating the minimal separators and the potential maximal cliques of graphs on \(\mathcal {G}_{{\text {poly}}}\).

Minimal separators and potential maximal cliques have been used for computing treewidth and other parameters related to minimal triangulations, on \(\mathcal {G}_{{\text {poly}}}\). Fomin and Villanger [14] extend the techniques to a family of problems:

Proposition 3

([14]). For any polynomial \({\text {poly}}\) and any constant t, there is a polynomial algorithm computing a Maximum Induced Subgraph of Treewidth at most t on \(\mathcal {G}_{{\text {poly}}}\).

Clearly, Maximum Independent Set (which is equivalent to Minimum Vertex Cover) and Maximum Induced Forest (which is equivalent to Minimum Feedback Vertex Set) fit into this framework: they consist in finding maximum induced subgraphs G[F] of treewidth at most 0, respectively at most 1. The first ingredient of [14] is the following observation.

Proposition 4

([14]). Let \(G = (V,E)\) be a graph, \(F \subseteq V\), and let \(H_F\) be a minimal triangulation of G[F]. There exists a minimal triangulation \(H_G\) of G such that \(H_G[F] = H_F\). We say that \(H_G\) respects the minimal triangulation \(H_F\) of G[F].

Note that, for any clique \(\varOmega \) of \(H_G\), we have that \(F \cap \varOmega \) induces a clique in \(H_F\). In particular, if \({\text {tw}}(G[F]) \le t\) and the clique size of \(H_F\) is at most \(t+1\), then every maximal clique of \(H_G\) intersects F in at most \(t+1\) vertices.

The second ingredient is a dynamic programming scheme that we describe below. Let S be a minimal separator of G, and C be a component of \(G - S\) such that \(N(C) = S\). The pair (SC) is called a block. Let \(\varOmega \) be a potential maximal clique such that \(S \subset \varOmega \subseteq S \cup C\). Then \((S,C,\varOmega )\) is called a good triple. In the sequel, W denotes a set of at most \(t+1\) vertices.

Definition 2

Let (SC) (resp. \((S,\varOmega ,C)\)) be a block (resp. a good triple) and let \(W \subseteq S\) (resp. \(W \subseteq \varOmega \)) be a set of vertices of size at most \(t+1\). We say that a vertex set F is a partial solution compatible with (SCW) (resp. with \((S,C,\varOmega ,W)\)) if:

  1. 1.

    G[F] is of treewidth at most t,

  2. 2.

    \(F \subseteq S \cup C\),

  3. 3.

    \(W = F \cap S\) (resp. \(W = F \cap \varOmega \)),

  4. 4.

    there is a minimal triangulation H of G respecting some minimal triangulation of G[F] of treewidth at most t, such that S is a minimal separator (resp. S is a minimal separator and \(\varOmega \) is a maximal clique) of H.

Observe that the two variants of compatibility differ by parameter \(\varOmega \) and the last two conditions. We denote by \(\alpha (S,C,W)\) (resp. \(\beta (S,C,\varOmega ,W)\)) the size of a largest partial solution compatible with (SCW) (resp. \((S,C,\varOmega ,W)\)). We now show how these quantities can be computed over all blocks and all good triples. The dynamic programming will proceed by increasing size over the blocks (SC), the size of the block being \(|S \cup C|\).

It is based on the following equations (see [13, 14] for details and proofs and Fig. 1 for an illustration).

Base case. It occurs for good triples \((S,C,\varOmega )\) such that \(\varOmega = S \cup C\). In this case, for each subset W of \(\varOmega \) of size at most \(t+1\),

$$\begin{aligned} \beta (S,C,\varOmega ,W) = |W|. \end{aligned}$$
(1)

Computing \(\alpha \) from \(\beta \). The following equation allows to compute the \(\alpha \) values from \(\beta \) values:

$$\begin{aligned} \alpha (S,C,W) = \max _{\varOmega , W'} \beta (S,C,\varOmega ,W'), \end{aligned}$$
(2)

where the maximum is taken over all potential maximal cliques \(\varOmega \) such that \((S,C,\varOmega )\) is a good triple, and all subsets \(W'\) of \(\varOmega \), of size at most \(t+1\), such that \(W = W' \cap S\).

Fig. 1.
figure 1

Computing \(\alpha \) form \(\beta \) (left), and \(\beta \) from \(\alpha \) (right)

Computing \(\beta \) from \(\alpha \). Let \((S,C,\varOmega )\) be a good triple, and fix an order \(C_1, C_2,\dots ,C_p\) on the connected components of \(G[C \setminus \varOmega ]\). Let \(S_i = N_G(C_i)\), for all \(1 \le i \le p\). By [4], \((S_i,C_i)\) are also blocks of G.

A partial solution F compatible with \((S,C,\varOmega ,W)\) is obtained as a union of partial solutions \(F_i\) compatible with \((S_i,C_i,W \cap S_i)\), for each \(1 \le i \le p\), and the set W.

Denote by \(\gamma _i(S,C,\varOmega ,W)\) the size of the largest partial solution F compatibleFootnote 1 with \((S,C,\varOmega ,W)\), contained in \(\varOmega \cup C_1 \cup \dots \cup C_i\) (hence F is not allowed to intersect the components \(C_{i+1}\) to \(C_p\)).

We have the following equations.

$$\begin{aligned} \gamma _1(S,C,\varOmega ,W) = \alpha (S,C,\varOmega ,W \cap S_1) + |W| - |W \cap S_1|. \end{aligned}$$
(3)

For all i, \(2 \le i \le p\),

$$\begin{aligned} \gamma _i(S,C,\varOmega ,W) = \gamma _{i-1}(S,C,\varOmega ,W) + \alpha (S,C,\varOmega ,W \cap S_i) - |W \cap S_i|. \end{aligned}$$
(4)

and finally

$$\begin{aligned} \beta (S,C,\varOmega ,W) = \gamma _p(S,C,\varOmega ,W). \end{aligned}$$
(5)

For convenience we also consider that \(\emptyset \) is a minimal separator, and \((\emptyset ,V)\) is a block. Then the size of the optimal global solution is simply \(\alpha (\emptyset ,V,\emptyset )\). The algorithm can be adapted to output an optimal solution, not only its size.

3 Powers of Graphs with Polynomially Many Minimal Separators

Let us prove that for any odd k, \(G^k\) has no more minimal separators than G.

Theorem 1

Consider a graph G, an odd number \(k=2l+1\) with \(l\ge 0\), and a minimal separator \(\overline{S}\) of \(G^k\). Then there exists a minimal separator S of G such that \(\overline{S} = N^{l}_G[S]\).

Proof

The lemma is trivially true if \(\overline{S} = \emptyset \). Let \(a,b \in V\) such that \(\overline{S} \ne \emptyset \) is an ab-minimal separator in \(G^k\), and call \(C_a\), \(C_b\) the components of \(G^k - \overline{S}\) that contain a and b, respectively. Let us call \(D_a = N^{l}_G[C_a]\) and \(D_b = N^{l}_G[C_b]\).

Claim 1: \(dist_G(D_a, D_b) \ge 2\). Suppose that \(dist_G(D_a, D_b) < 2\), and pick \(x\in D_a, y \in D_b\) with \(dist_G(x,y)\le 1\) (notice that possibly \(x=y\)). Let \(x_a \in C_a\) and \(x_b \in C_b\) be such that there exists an \(x_a, x\)-path and a \(y, x_b\) -path in G, each one of length at most l, called \(P_a\) and \(P_b\), respectively. This implies that there must be a \(x_a, x_b\)-path of length at most \(2l + 1 = k\) in G, which means that \(\{x_a, x_b\} \in E(G^k)\), a contradiction with the fact that \(\overline{S}\) separates \(C_a\) from \(C_b\) in \(G^k\).

Claim 2: \(\tilde{S} = \overline{S}~\backslash \left( D_a \cup D_b \right) \) separates a and b in G. Notice first that \(N_G(D_a) \subseteq N_G^{l+1}(C_a) \subseteq \overline{S}\). Suppose that \(\tilde{S}\) does not separate a and b, and let P be an ab-path in G that does not pass through \(\tilde{S}\). Let \(x_1, \dots , x_{s-2}\) the internal nodes of P, where \(s = |P|\), and consider \(i = \max \{j ~|~ x_j \in D_a\cap P\}\). Since \(P \cap \tilde{S} = \emptyset \), necessarily \(x_{i+1} \in D_b\), a contradiction with Claim 1.

Claim 3: \(D_a\) and \(D_b\) are connected subsets of G. This is straightforward from the definition of the sets, \(D_a = N^{l}_G[C_a]\) and \(D_b = N^{l}_G[C_b]\), and the fact that \(C_a\) and \(C_b\) are connected in G.

Let \(\tilde{C}_b\) be the connected component of \(G - N_G[D_a]\) that contains b, and denote \(S = N_G(\tilde{C_b})\). Note that \(S \subseteq \tilde{S} \subset \overline{S}\). By applying Proposition 1, we have that S is a minimal ab-separator in G. Call \(\tilde{C}_a\) the component of \(G - S\) that contains a. Since \(S \subseteq \tilde{S}\), we have that \(D_b \subseteq \tilde{C}_b\) and \(D_a \subseteq \tilde{C}_a\).

Claim 4: \(N^l_G[S] = \overline{S}\). We first prove that \(N^l_G[S] \subseteq \overline{S}\). By construction, \(S \subseteq N_G(D_a)\). Consequently \(S\subseteq N_G^{l+1}(C_a) \backslash N_G^{l}(C_a)\), therefore \(N_G^l[S] \subseteq N_G^{2l+1}(C_a) = N_{G^k}(C_a) = \overline{S}\). Conversely, we must show that every vertex x of \(\overline{S}\) is in \(N^l_G[S]\). By contradiction, let \(x \in \overline{S} \setminus N^l_G[S]\). We distinguish two cases : \(x \in \tilde{C}_a\), and \(x \in \overline{S} \setminus \tilde{C}_a\). In the first case, since \(N_{G^k}(C_b) = \overline{S}\), there exists a path from some vertex \(y\in C_b\) to x of length at most k, in graph G. Let us call P one of those yx-paths. Observe that the first \(l+1\) vertices of the path belong to \(D_b \subseteq \tilde{C_b}\), and none of the last \(l+1\) vertices of the path belongs to S (otherwise \(x \in N_G^l[S]\)). Then P is a path that connects \(\tilde{C_b}\) with \(\tilde{C_a}\) without passing through S, a contradiction with the fact that S separates a and b in graph G.

It remains to prove the last case, when \(x\in \overline{S} \setminus \tilde{C}_a\). Since \(N_{G^k}(C_a) = \overline{S}\), there exists a node \(y \in C_a\) such that there is a yx-path P of length at most k in G. Since the first \(l+1\) vertices of the path belong to \(D_a\), and the last \(l+1\) vertices of the path do not belong to S, we deduce that P is an yx-path in G that does not intersect S. The path can be extended (through \(C_a\)) into an ax-path that does not intersect S, a contradiction with the fact that x does not belong to \(\tilde{C}_a\). This concludes the proof of our theorem. \(\square \)

Recall that Distance-d Independent set on G is equivalent to Maximum Independent Set on \(G^{d-1}\). Since the latter problem is polynomial on \(\mathcal {G}_{{\text {poly}}}\) by Proposition 3, we deduce:

Theorem 2

For any even value d, and any polynomial \({\text {poly}}\), problem Distance-d Independent set is polynomially solvable on \(\mathcal {G}_{{\text {poly}}}\).

We remind that for any odd value d, problem Distance- d Independent set is NP-hard on chordal graphs [12], thus on \(\mathcal {G}_{{\text {poly}}}\) for any polynomial \({\text {poly}}\) asymptotically larger than n. The construction of [12] also shows that even powers of chordal graphs may contain exponentially many minimal separators.

4 On Connected Vertex Cover and Connected Feedback Vertex Set

Let us consider the problem of finding a maximum induced subgraph G[F] such that \({\text {tw}}(G[F])\le t\) and \(G - F\) is connected. One can easily observe that, for \(t=0\) (resp. \(t=1\)), this problem is equivalent to Connected Vertex Cover (resp. Connected Feedback Vertex Set), in the sense that if F is an optimal solution for the former, than \(V(G) - F\) is an optimal solution for the latter.

Our goal is to enrich the dynamic programming scheme described in Subsect. 2.2 in order to ensure the connectivity of \(G - F\). One should think of this dynamic programming scheme of Subsect. 2.2 as similar to dynamic programming algorithms for bounded treewidth. The difference is that the bags (here, the potential maximal cliques) are not small but polynomially many, and we parse simultaneously through a set of decompositions. Nevertheless, we can borrow several classical ideas from treewidth-based algorithms.

In general, for checking some property for the solution F, we add a notion of characteristics of partial solutions. Then, for a characteristic c, we update the Definition 2 in order to define partial solutions compatible with (SCWc) (resp. \((S,C,\varOmega ,W,c)\)), by requesting the partial solution to be compatible with characteristic c. Parameter c will also appear in the updated version of Eqs. 1 to 5.

As usual in dynamic programming, the characteristics must satisfy several properties: (1) we must be able to compute the characteristic for the base case, (2) the characteristic of a partial solution F obtained from gluing smaller partial solutions \(F_i\) must only depend on the characteristics of \(F_i\), and (3) the characteristic of a global solution should indicate whether it is acceptable or not. Moreover, for a polynomial algorithm, we need the set of possible characteristics to be polynomially bounded.

For checking connectivity conditions on \(G-F\), we define the characteristics of partial solutions in a natural way. Consider a block (SC) (resp. a good triple \((S,C,\varOmega )\)) and a subset W of S (resp. of \(\varOmega \)). Let F be a partial solution compatible with (SCW) (resp. \((S,C,\varOmega ,W)\)), see Definition 2. The characteristic c of F for (SCW) (resp. for \((S,C,\varOmega ,W)\)) is defined as the partition induced on \(S \setminus W\) (resp. on \(\varOmega \setminus W\)) by the connected components of \(G[S \cup C] - F\). More formally, let \(D_1, \dots , D_q\) denote the connected components of \(G[S \cup C] - F\), and let \(P_j = D_j \cap S\) (resp. \(P_j = D_j \cap \varOmega \)), for all \(1 \le j \le q\). Then \(c = \{P_1,\dots , P_q\}\). We decide that if \(S \ne \emptyset \), partial solutions F having some component \(D_j\) that does not intersect S (resp. \(\varOmega \)) are immediately rejected; indeed, for any extension \(F'\) of F, the graph \(G - F'\) remains disconnected. Hence we may assume that all sets \(P_j\) are non-empty.

We say that a partial solution F is compatible with (S, C, W, c) (resp. with \((S,C,\varOmega ,W,c)\)) if it satisfies the conditions of Definition 2, and c is the characteristic of F for (SCW) (resp. for \((S,C,\varOmega ,W)\)).

We also define functions \(\alpha (S,C,W,c)\), \(\beta (S,C,\varOmega ,W,c)\) and \(\gamma _i(S,C,\varOmega ,W,c)\) like in Subsect. 2.2, as the maximum size of partial solutions F compatible with the parameters. For further details refer to [17].

In general, the number of characteristics may be exponential. Nevertheless, there are classes of graphs with the property that each minimal separator S and each potential maximal clique \(\varOmega \) can be partitioned into at most a constant number of cliques. With this constraint, the number of characteristics is polynomial (even constant, for any given triple (SCW) or quadruple \((S,C,\varOmega ,W)\)).

This is the case for chordal graphs, where each minimal separator and each potential maximal clique induces a clique in G.

It is also the case for circular-arc graphs. Recall that each minimal separator corresponds to the set of arcs intersecting a pair of scanpoints [16]. Moreover, by [4, 16], each potential maximal clique corresponds to the set of arcs intersecting a triple of scanpoints. Since arcs intersecting a given scanpoint form a clique, we have that each minimal separator can be partitioned into two cliques, and each potential maximal clique can be partitioned into three cliques.

We deduce:

Theorem 3

On chordal and circular-arc graphs, problems Connected Vertex Cover and Connected Feedback Vertex Set are solvable in polynomial time. More generally, one can compute in polynomial time a maximum vertex subset F such that G[F] is of treewidth at most t and \(G - F\) is connected.

Note that Escoffier et al. [11] already observed that Connected Vertex Cover is polynomial for chordal graphs.

5 Independent Dominating Set and Variants

The Independent Dominating Set problem consists in finding a minimum independent set F of G such that F dominates G. Hence the solution F induces a graph of treewidth 0 and it is natural to ask if similar techniques work in this case. The fact that we have a minimization problem is not a difficulty: the general dynamic programming scheme applies in this case, and for any weighted problem with polynomially bounded weights, including negative ones [13, 14].

Independent Dominating Set is known to be NP-complete in chordal bipartite graphs [8] and in circle graphs [6]. Therefore, it is NP-hard on \(\mathcal {G}_{{\text {poly}}}\) for some polynomials \({\text {poly}}\). But, again, we can use our scheme in the case of circular-arc graphs, for this problem or any problem of the type minimum dominating induced subgraph of treewidth at most a constant t.

Let (SC) be a block an let \(F \subseteq S \cup C\) be a partial solution compatible with (SCW) for some \(W \subseteq S\) of size at most \(t+1\) (in the sense of Definition 2). The natural way for defining the characteristic of F is to specify which vertices of S are dominated by F and which are not (we already know that \(F \cap S = W\)). It is thus enough to memorize which vertices of S are dominated by \(F \cap C\). In circular-arc graphs, this information can be encoded using a polynomial number of characteristics. Indeed, a minimal separator S corresponds to arcs intersecting a scanline, between two scanpoints \(p_1\) and \(p_2\) of some intersection model of G. Moreover (see [16]), the vertices of component C correspond to the arcs situated on one of the sides of the scanline. Let \(s^1_1,s^1_2,\dots , s^1_{l_1}\) be the arcs of the model containing scanpoint \(p_1\), ordered by increasing intersection with the side of \(p_1p_2\) corresponding to C. Simply observe that if \(F \cap C\) dominates vertex \(s^1_i\), it also dominates all vertices \(s^1_j\) with \(j>i\). Therefore we only have to store the vertex \(s^1_{min_1}\) dominated by \(F \cap C\) which has a minimum intersection with the side of the scanline corresponding to component C, and proceed similarly for the arcs of S containing scanpoint \(p_2\). These two vertices of S will define the characteristic of F, and they suffice to identify all vertices of S dominated by \(F \cap C\).

These characteristics can be used to compute a minimum dominating induced subgraph of treewidth at most t, for circular-arc graphs, in polynomial time. We will not show, in details, how to do it, since the technique is quite classical. Problem Independent Dominating Set is already known to be polynomial for this class [7, 20]. The algorithm of Vatshelle [20] is more general, based on parameters called boolean-width and MIM-width, which are small (\(\mathcal {O}(\log n)\) for the former, constant for the latter) on circular-arc graphs and also other graph classes. Another problem of similar flavor, combining domination and independence, is Red-Blue Dominating Set. In this problem we are given a bipartite graph \(G=(R,B,E)\) with red and blue vertices, and an integer k, and the goal is to find a set of at most k blue vertices dominating all the red ones. Red-Blue Dominating Set can be reduced to Connected Vertex Cover as follows [10]. Let \(G'\) be the graph obtained from \(G=(R,B,E)\) by adding a new vertex u adjacent to all vertices of B and then, for each \(v \in R \cup \{u\}\), a pendant vertex \(v'\) adjacent only to v. Then G has a red-blue dominating set of size at most k if and only if \(G'\) has a connected vertex cover of size at most \(k+|B|+1\). Indeed any minimum connected vertex cover of \(G'\) must contain u, R, and a subset of B dominating R. It is not hard to prove that this reduction increases the number of minimal separators by at most \(\mathcal {O}(n)\).

Therefore, if Red-Blue Dominating Set is NP-hard on (bipartite) \(\mathcal {G}_{{\text {poly}}}\) for some poly, so is Connected Vertex Cover. There are two natural, well-studied classes of bipartite graphs with polynomial number of minimal separators, and it turns out that Red-Blue Dominating Set is polynomial for both. One is the class of chordal bipartite graphs (which are actually defined as the bipartite, weakly chordal graphs). For this class, Red-Blue Dominating Set is polynomial by [8]. Reference [8] considers the total domination problem for the class, but the approach is based on red-blue domination.

The second natural class is the class of circle bipartite graphs, i.e., bipartite graphs that are also circle graphs. They have an elegant characterization established by de Fraysseix [9]. Let \(H = (V,E)\) be a planar multigraph, and partition its edge set into two parts \(E_R\) and \(E_B\) such that \(T=(V,E_R)\) is a spanning tree of H. Let \(B(H, E_R) = (E_R, E_B, E')\) be the bipartite graph defined as follows: \(E_R\) is the set of red vertices, \(E_B\) is the set of blue vertices, and \(e_R \in E_R\) is adjacent to \(e_B \in E_B\) if the unique cycle obtained from the spanning tree T by adding \(e_B\) contains the edge \(e_R\). We say that \(B(H, E_R)\) is a fundamental graph of H. By [9], a graph is circle bipartite if and only if it is the fundamental graph \(B(H, E_R)\) of a planar multigraph H.

Consider now the Tree augmentation problem that consists in finding, on input G and a spanning tree T of G, a minimum set of edges \(D \subseteq E(G)-E(T)\) such that each edge in E(T) is contained in at least one cycle of \(G' = (V, E(T) \cup D)\). In [18] is shown that Tree augmentation is polynomial when the input graph is planar. Is direct to see that a set \(S \subseteq E_B\) is a solution of the Tree augmentation problem on input \(H = (V, E_R \cup E_B)\) and \(T = (V, E_R)\), if and only if S is a solution of Red-Blue Dominating Set on input \(B(H) = (E_R, E_B, E')\). This observation, together with [9] and [18], imply that Red-Blue Dominating Set is polynomial in circle bipartite graphs.

6 Discussion

We showed how the dynamic programming scheme of [13, 14] can be extended for other optimization problems, on subclasses of \(\mathcal {G}_{{\text {poly}}}\). Note that the algorithm of [13] allows to find in polynomial time, on \(\mathcal {G}_{{\text {poly}}}\), a maximum (weight) subgraph G[F] of treewidth at most t, satisfying some property expressible in CMSO. It also handles annotated versions, where the vertices/edges of G[F] must be selected from a prescribed set.

We have seen that Distance-d Independent Set can be solved in polynomial time on \(\mathcal {G}_{{\text {poly}}}\) for any even d. This also holds for the more general problem of finding an induced subgraph G[F] whose components are at pairwise distance at least d, and such that each component is isomorphic to a graph in a fixed family. E.g., each component could be an edge, to have a variant of Maximum Induced Matching where edges should be at pairwise distance at least d. For this we need to solve the corresponding problem on \(G^{d-1}\), using only edges from G, as in [13].

When seeking for maximum (resp. minimum) induced subgraphs G[F] of treewidth at most t such that \(G - F\) is connected (resp. F dominates G) on particular subclasses of \(\mathcal {G}_{{\text {poly}}}\), we can add any CMSO condition on G[F]. It is not unlikely that the techniques can be extended to other classes than circular-arc graphs (and chordal graphs, for connectivity constraints).

We also believe that the interplay between graphs of bounded MIM-width [20] and \(\mathcal {G}_{{\text {poly}}}\) deserves to be studied. None of the classes contains the other, but several natural graph classes are in their intersection, and they are both somehow related to induced matchings.

We leave as open problems the complexity of Connected Vertex Cover and Connected Feedback Vertex set in weakly chordal graphs, and on \(\mathcal {G}_{{\text {poly}}}\). We have examples showing that, even for weakly chordal graphs, the natural set of characteristics that we used in Sect. 4 is not polynomially bounded.