Structured Connectivity AugmentationThe two first authors have been supported by the Research Council of Norway via the projects “CLASSIS” and “MULTIVAL”. The third author has been supported by project “DEMOGRAPH” (ANR-16-CE40-0028). Emails of authors: {fedor.fomin, petr.golovach}@ii.uib.no, sedthilk@thilikos.info .

Structured Connectivity Augmentationthanks: The two first authors have been supported by the Research Council of Norway via the projects “CLASSIS” and “MULTIVAL”. The third author has been supported by project “DEMOGRAPH” (ANR-16-CE40-0028).
Emails of authors: {fedor.fomin, petr.golovach}@ii.uib.no, sedthilk@thilikos.info .

Fedor V. Fomin Department of Informatics, University of Bergen, Norway.    Petr A. Golovach00footnotemark: 0    Dimitrios M. Thilikos  AlGCo project, CNRS, LIRMM, France.Department of Mathematics National and Kapodistrian University of Athens, Greece.
Abstract

We initiate the algorithmic study of the following “structured augmentation” question: is it possible to increase the connectivity of a given graph by superposing it with another given graph ? More precisely, graph is the superposition of and with respect to injective mapping if every edge of is either an edge of , or is an edge of . Thus contains both and as subgraphs, and the edge set of is the union of the edge sets of and . We consider the following optimization problem. Given graphs , , and a weight function assigning non-negative weights to pairs of vertices of , the task is to find of minimum weight such that the edge connectivity of the superposition of and with respect to is higher than the edge connectivity of . Our main result is the following “dichotomy” complexity classification. We say that a class of graphs has bounded vertex-cover number, if there is a constant depending on only such that the vertex-cover number of every graph from does not exceed . We show that for every class of graphs with bounded vertex-cover number, the problems of superposing into a connected graph and to 2-edge connected graph , are solvable in polynomial time when . On the other hand, for any hereditary class with unbounded vertex-cover number, both problems are -hard when . For the unweighted variants of structured augmentation problems, i.e. the problems where the task is to identify whether there is a superposition of graphs of required connectivity, we provide necessary and sufficient combinatorial conditions on the existence of such superpositions. These conditions imply polynomial time algorithms solving the unweighted variants of the problems.

\setmarginsrb

1in1in1in1in0pt0pt0pt6mm

Keywords: connectivity augmentation, graph superposition, complexity.

1 Introduction

In connectivity augmentation problems, the input is a (multi) graph and the objective is to increase edge or vertex connectivity by adding the minimum number (weight) of additional edges, called links. This is a fundamental combinatorial problem with a number of important applications, we refer to the books of Nagamochi and Ibaraki [15] and Frank [6] for a detailed introduction to the topic. In this paper we initiate the study of a “structural” connectivity augmentation problem, where the set of additional edges should satisfy some additional constrains. For example, such constrains can be that all new edges should be visible from one vertex, i.e. the new set of edges forms a star, forms a cycle, or can be controlled from a small set of vertices, i.e. the graph formed by the additional edges has a small vertex cover.

It is convenient to model such an augmentation problem as a graph superposition problem. Let and be simple graphs (i.e. graphs without loops and multiple edges), , and let be an injective mapping of the vertices of to the set of vertices of . We say that a simple graph is the superposition of and with respect to and write if and two distinct vertices are adjacent in if and only if or and . See Fig. 1 for an example. Thus graph contains and as subgraphs, and the edge set of is the union of the edge sets of and .

Figure 1: For injective mapping such that , , and , we have .

We study the algorithmic problem of increasing the edge-connectivity of graph by superposing it with a graph . We are interested in the weighted variant of the problem, where for every pair of vertices and of , mapping the endpoints of an edge of to and has a specified weight . We consider the following problem.

Structured Connectivity Augmentation parameterized by

We also study the problem of obtaining a -edge connected graph by superposing graphs and . More precisely, we consider the following problem.

Structured -Connectivity Augmentation parameterized by

Our results. Our main result is the following “dichotomy” complexity classification of structured augmentation problems. We say that a class of graphs has bounded vertex-cover number, if there is a constant depending on only such that the vertex-cover number of every graph from does not exceed . We show that for every class of graphs with bounded vertex-cover number, Structured Connectivity Augmentation and Structured -Connectivity Augmentation are solvable in polynomial time when . We complement this result by showing that for any hereditary class with unbounded vertex-cover number, both problems are -complete when . Thus for any hereditary class both problems with are -complete if and only if has unbounded vertex-cover number.

The running times of our algorithms solving Structured Connectivity Augmentation and Structured -Connectivity Augmentation are of the form , where is some function and is the vertex cover of . Thus our algorithms are not fixed-parameter tractable when is the parameter. We show that from the perspective of parameterized complexity, this situation is unavoidable. More precisely, we show that both problems are -hard when parameterized by . We refer to the book of Downey and Fellows [3] for an introduction to parameterized complexity.

We also consider the unweighted variants of Structured Connectivity Augmentation and Structured -Connectivity Augmentation. In these cases, the weight is for every pair of vertices of and . The task is to identify whether there is a superposition of graphs and of edge connectivity or , correspondingly. Here we obtain necessary and sufficient combinatorial conditions of the existence of an injective function such that is edge -connected provided that is edge -connected, . These conditions imply polynomial time algorithms solving the unweighted variants of the problems.

Related work. The problem of increasing graph connectivity by adding additional edges is the classic and well-studied problem. It was first studied by Eswaran and Tarjan [4] and Plesnik [16] who showed that increasing the edge connectivity of a given graph to 2 by adding minimum number of additional augmenting edges is polynomial time solvable. Subsequent work in [18, 5] showed that this problem is also polynomial time solvable for any given target value of edge connectivity to be achieved. However, if the set of augmenting edges is restricted, that is, there are pairs of vertices in the graph which do not constitute a new edge, or if the augmenting edges have (non-identical) weights on them, then the problem of computing the minimum size (or weight) augmenting set is NP-complete [4]. Augmentation problems with constraints like simplicity-preserving augmentations, augmentations with partition constraints, or planarity requirements can be found in the literature, see the book of Nagamochi and Ibaraki [15] for further references.

Strongly relevant to structural augmentation is the Minimum Star Augmentation problem, see e.g. [15, Section 3.3.3] and [12]. Here one wants to increase the edge-connectivity of a given graph by adding a new vertices and connecting it with a small number of edges to the remaining vertices of the graph. In our setting this corresponds to the case of graph having an isolate vertex, and graph being a star (a tree with vertex-cover number ). Tibor and Szigeti [12] studied a generalization of this problem where one wants to make a graph edge -connected by attaching stars of specified degrees. In particular, they provided combinatorial conditions which are necessary and sufficient for such an augmentation. Again, this problem can be seen as a special case of structural augmentation, where graph has isolated vertices and graph is the union of stars of specified degrees.

2 Preliminaries

We consider only finite undirected graphs. For a graph , denotes the set of unordered pairs of distinct vertices of . For uniformity, we denote the elements of in the same way as edges, i.e., we write . A subgraph of is spanning if . For a graph and a subset of vertices, we write to denote the subgraph of induced by . We write to denote the graph . Let for a graph . By we denote by the graph obtained by the deletion of the edges of . We write instead of for an edge . For a vertex , we denote by the (open) neighborhood of , i.e., the set of vertices that are adjacent to in . Two nonadjacent vertices and are (false) twins if . A set of edges with pairwise distinct end-vertices is called a matching. A matching is induced if the end-vertices of are pairwise nonadjacent. A vertex is saturated in a matching if is incident to an edge of . We say that the disjoint union of copies of is a matching graph. A graph class is said to be hereditary if for every and every induced subgraph of , . A set of vertices is a vertex cover of a graph if every edge of has at least one of its end-vertices in . The minimum size of a vertex cover is called the vertex-cover number of and is denoted by .

Let be a positive integer. A graph is (edge) -connected if for every with , is connected. Since we consider only edge connectivity, whenever we say that a graph is -connected, we mean that is edge -connected. We assume that every graph is -connected. A set of edges of a connected graph is an edge separator if is disconnected. An edge of a connected graph is a bridge if is a separator. Clearly, a connected graph is 2-connected if and only if it has no bridge. Let be the set of bridges of a connected graph . We call a component of a biconnected component of . In other words, a biconnected component is an inclusion-wise maximal induced 2-connected subgraph of . We say that a biconnected component of a graph is a pendant biconnected component (or simply a pendant) if a unique bridge of is incident to . A biconnected component is trivial if it has a single vertex. For a graph , we denote by the number a components of , and for a connected graph , is the number of pendants. We also denote by the number of isolated vertices of .

Let be an inclusion-wise minimal edge separator of a connected graph . Then has exactly two components and . Let be a spanning subgraph of . We say that an edge covers a minimal separator of if has its end-vertices in and . The following observation about separators is useful.

Observation 1.

Let be an integer and let a -connected graph be a spanning subgraph of . Then is -connected if and only if for each edge separator of with , has an edge that covers it.

We also need some additional terminology and folklore observations for the augmentation of a connected graph to a 2-connected graph. Let be a connected graph and let and be distinct vertices of . We say that a bridge of belongs to an -path if . Similarly, a biconnected component is crossed by if . The following observation show that the choice of an -path is irrelevant if the biconnected components containing the end-vertices are given.

Observation 2.

Let distinct and be pairs of distinct vertices of a connected graph such that are in the same biconnected component of and, similarly, are in the same biconnected component of . Let also and be and -paths respectively. Then the following holds:

  • a bridge of belongs to if and only if belongs to ,

  • a biconnected component is crossed by if and only if is crossed by .

Observation 3.

Let and be distinct nonadjacent vertices of a connected graph and let be a graph obtained from by the addition of the edge . Then covers all bridges that belongs to a -path in , and for the biconnected components that are crossed by , is a biconnected component of .

In the remaining part of the paper, we will be always assuming that in the instance of the structured augmentation problem, we have

  • ;

  • Graph has no isolated vertices.

Indeed, if , then there is no superposition of and , and thus such an instance is a no-instance. For (), it is sufficient to observe that mapping of isolated vertices of to vertices of does not influence the connectivity of the superposition. Another technical detail should be mentioned here. In Theorems 1 and  2, we evaluate the running times of algorithms as a function of and the vertex cover number of . In order to do this, we should be able to recognize within this time the (trivial) no-instances, where . We can verify this condition in time just by refuting the instances of size more than after reading the first bits.

3 Augmenting by graphs with small vertex cover.

In this section we consider the situation when graph is from a graph class with bounded vertex-cover number. In Subsection 3.1 we show that in this case Structured Connectivity Augmentation and Structured -Connectivity Augmentation are solvable in polynomial time. In Subsection 3.2 we show that this condition is tight by proving that for any hereditary graph class with unbounded vertex-cover number, both problems are NP-hard.

3.1 Algorithms

We start with a solution for Structured Connectivity Augmentation, which is simpler than the solution for Structured -Connectivity Augmentation.

Structured Connectivity Augmentation. We need the following lemma.

Lemma 1.

Let and be graphs and let be an injection such that is connected. Let also be a vertex cover of of size . Then there is a set of size at most such that for graph and mapping , the vertices of are in the same connected component of .

Proof.

If , then the claim of the lemma is trivial. Assume that .

Let be an inclusion-wise maximal set such that there is a set of size at most such that for and , the vertices of are in the same component of . Notice that every one-element subset of satisfies this property and therefore such a set exists. If , then the claim of the lemma holds. Suppose that . Let . We show that in this case we can extend which will contradict its maximality.

More precisely, we claim that there is such that for , there is a set of size at most such that for and , the vertices of are in the same component of .

If there is such that is in the same component of with the vertices of , then the claim holds for and . Suppose that it is not so, that is, for every , does not belong to the component of with the vertices of . Recall that is connected. We select and a path joining and a vertex of in in such a way that contains the minimum number of vertices of .

Let be a -path for . Notice that has no internal vertex in . Otherwise (if there is such a vertex ) then either , or . In the first case the -subpath of connects with a vertex of , and in the second case, the -subpath of connects a vertex of with . In both cases this contradicts the choice of . We obtain that .

This implies that contains at most 2 edges that are not edges of . Moreover, because is a vertex cover of , every such edge is incident either with , or with . Denote by the set of endpoints of these edges distinct from and . We have that and . Let and . We obtain that and . Let . Observe that is a path in . It implies that the vertices of are in the same component of .

We obtain a contradiction that proves that and the lemma holds. ∎

Let us remind, that, given a positive integer , a graph class has vertex-cover number at most if every graph has a vertex cover of size at most . We are ready to prove the main theorem about Structured Connectivity Augmentation.

Theorem 1.

Let be a positive integer and be a graph class of vertex-cover number at most . Then for any , Structured Connectivity Augmentation is solvable in time .

Proof.

Let and be graphs and let be a weight function. We show that we can find in time an injective mapping such that is connected and is minimum if exists.

Let us remind that without loss of generality, we can assume that and has no isolated vertices.

We start from finding a vertex cover of size at most in . Since we aim for an algorithm with running time , vertex cover can be found by brute-force checking of all subsets of of size at most . If we fail to find of size at most , it means that , in this case we return the answer NO and stop. Assume that exists.

Suppose that there is an injective mapping such that is connected and assume that for , is minimum. By Lemma 1, there is a set of size at most such that for and , the vertices of are in the same component of . Considering all possibilities, we guess in time .

Now we consider all possible injective mapping such that the vertices of are in the same connected component of , where . Notice that there are at most such mappings that can be generated in time . If we fail to find , we reject the current choice of . Otherwise, for every , we try to extend it to an injection such that is connected, and among all extensions we choose one that provides the minimum weight .

Let . The vertices of are in the same component of . Denote this component by and denote by the other components of this graphs. Recall that is an independent set of and each vertex of has an incident edge with one endpoint in . It follows that for an injection such that , is connected if and only if for every , there is such that . Hence, if , we cannot extend . In this case we discard the current choice of .

Assume from now that and are fixed, is connected and . For and , we define the weight of mapping to as

that is, is the weight of edges that is added to the weight of mapping if we decide to extend by mapping to . Let . We construct the weighted auxiliary bipartite graph with the bipartition of its vertex set and the weight function as follows.

  • Set .

  • Construct a set of vertices of size and sets of size for .

  • Set .

  • For each and , construct an edge and set .

  • For each and , construct an edge and set .

  • For each , do the following: for each and , construct an edge and set .

We find a matching in that saturates every vertex of and has the minimum weight using the Hungarian algorithm [8, 13] in time .

Observe that a matching that saturates every vertex of exists, because . We can construct such a matching by selecting one vertex in for each and matching it with a vertex of . Then we complement this set of edges to a matching saturating by adding edges incident to . For the matching that has minimum weight, we can also observe the following.

First, note that

(1)

Indeed, targeting towards a contradiction, assume that is not saturated. Since , there is such that and . We replace by in . Because , we obtain a matching with a smaller weight. This contradicts the choice of .

Next, we claim that

(2)

Indeed, this is because the vertices of are adjacent to vertices of and all other their neighbors are in .

Finally, we have that among all matching saturating , is a matching satisfying (1) and (2) such that for , is minimum. To see it, observe that for . Hence, , because by (1). Therefore, .

For every , we define , where and for . Clearly, is an extension of . By (1), is an injective mapping of to . By (2) and the choice of and , we obtain that is connected. We claim that is an extension of such that is connected that has the minimum total weight .

Recall that by the definition of the weight function , for and , and in this case. Let . It follows that

(3)

Suppose that is an injection that extends such that is connected. We construct the matching in as follows. For every , we include in . Denote by the obtained matching. Notice that every vertex of is saturated in and, therefore, has saturated in vertices. Hence, satisfies (1). Since is connected, at least one vertex of is saturated for and, therefore, satisfies (2). Then we complement to : for every nonsaturated vertex , we arbitrarily pick a nonsaturated neighbor and include in . This choice is possible, because and for . Since and, therefore, satisfies (1) and (2), we obtain that and . In the same way as in (3.1), we have that . Then by (3.1) and this proves the claim.

Recall that we try all possible choices of and for every choice of , we consider all possible choices of . If we fail to find an injection such that is an extension of and is connected we return the answer NO. Otherwise, we return that provides the minimum weight.

To complete the proof, observe that the total running time of the algorithm is . ∎

Structured -Connectivity Augmentation. The algorithm for Structured -Connectivity Augmentation is more technical. We start with a lemma, which is similar to Lemma 1.

Lemma 2.

Let and be graphs such that is connected, and let be an injection such that is connected. Suppose that is a vertex cover of and . Then there is a set of size at most such that for and , the vertices of are in the same biconnected component of .

Proof.

For lemma is trivial, so we assume that .

Let be an inclusion-wise maximal set among all sets with the following property: there is a set of size at most such that for and , the vertices of are in the same biconnected component of . Since every one-element subset of satisfies this property such a set exists.

In order to prove the lemma, we prove that .

Targeting towards a contradiction, suppose that is a proper subset of . Let be the size of . We show that then we can extend contradicting its maximality. More precisely, we claim that there is such that for , there is a set of size at most such that for and , the vertices of are in the same biconnected component of .

If there is such that is in the same biconnected component of with the vertices of , then the claim holds for and . Suppose that it is not so, that is, for every , does not belong to the biconnected component of with the vertices of .

Recall that is connected. Therefore, is connected as well. Since the vertices of do not belong to the same biconnected component, is not 2-connected. Let be the set of bridges of .

Suppose that there is an edge with such that there is a biconnected component of that is crossed by a -path in and contains a vertex . Let . Consider and . Clearly, and . Let and . Then by Observation 3, the vertices of are in the same biconnected component of . This contradicts the choice of .

Suppose now that there is an edge with such that the biconnected component of that contains the vertices of is crossed by a -path in . Consider and . We have that and . Let and . Then again by Observation 3, we have that the vertices of are in the same biconnected component of . Again, this contradicts the choice of .

Now we assume that the two previous cases do not hold. In particular, in this situation, not all bridges of are covered by edges with or and not all bridges of are covered by edges with or . Since is 2-connected, by Observation 1 all bridges of should be covered by edges of . Hence, there are distinct such that for some biconnected component of , is covered by with and is covered by with . Let , and . Consider and . Clearly, and . Let and . By Observation 3, the vertices of are in the same biconnected component of , which, again, this contradicts the choice of .

Hence and the lemma holds. ∎

Theorem 2.

Let be a positive integer and be a graph class of vertex-cover number at most . Then for any , Structured -Connectivity Augmentation is solvable in time .

Proof.

Let and be graphs such that is connected and . Let be a weight function. Similarly to the proof of Theorem 1 we show that we can find in time the minimum value of for an injective mapping such that is connected if such a mapping exists.

The first steps of our algorithm are the same as in the proof of Theorem 1. Again, we remind that and that has no isolated vertices.

Next, we find a vertex cover of minimum size in of size at most in time . If we fail to find of size at most , then . We return NO and stop. From now on we assume that exists.

Suppose that there is an injective mapping such that is 2-connected and assume that for , is minimum. By Lemma 2, there is a set of size at most such that for and , the vertices of are in the same biconnected component of . Considering all possibilities, we guess in time .

Now we consider all possible injective mapping such that the vertices of are in the same biconnected component of where . Notice that there at most such mappings that can be generated in time . If we fail to find , we reject the current choice of . Otherwise, for every , we try to extend it to an injection such that is 2-connected, and among all extensions we choose one that provides the minimum weight .

Let . The vertices of are in the same biconnected component of . Denote this biconnected component by and denote by the pendant biconnected components of that are distinct from . Recall that is an independent set of and each vertex of has an incident edge with one endpoint in . By Observation 1, we obtain the following crucial property.

For an injection such that , is 2-connected if and only if

  • for every , there is such that , and

  • if is the unique element of and is incident to a bridge of , then there is such that and is adjacent to in .

Similarly to the proof of Theorem 1, we solve auxiliary matching problems to find the minimum weight of but now, due the condition (ii), the algorithm becomes more complicated and we are using dynamic programming.

For and , we define the weight of mapping to as

(4)

that is, is the weight of edges that is added to the weight of mapping if we decide to extend by mapping to . Our aim is to find the extension of that satisfies (i) and (ii) such that the total weight of the mapping of the vertices of to verices of by is minimum.

Since is a vertex cover of of size , the set can be partitioned into classes of false twins . Let for . We exploit the following property of false twins in : if , then for .

For each -tuple of integers such that , for and each , we define

(5)

where such that for and the minimum is taken over all injective mappings such that the following conditions are satisfied:

  • for every , there is such that , and

  • if is a unique element of for some and is incident to a bridge of , then there is such that and is adjacent to in .

If such a mapping does not exist, then we assume that . Recall that if