Let be an undirected graph with vertices and edges and an integer edge capacity function. For disjoint , we use to denote the set of edges between and . We use for . For a vertex , we use for . We say that is -edge-connected if for all nonempty, proper
For all problems treated in this article, the version with capacities and the version without capacities can be easily reduced to each other by replacing an edge with a capacity by multiple edges and vice-versa. Yet, this does not mean algorithmic equivalence. All the running times we give hold for the case with edge capacities, assuming that all basic operations can be executed in constant time. For this reason, all technical statements starting from Section 2 will be given in the capacitated form. During the introduction, however, we first describe the problems in the non-capacitated form for the sake of simplicity.
The theory of graph connectivity augmentation has seen significant progress during the last decades. The basic problem, the global edge-connectivity augmentation of undirected graphs, can be defined as follows: Given an undirected graph and a positive integer , find a set of edges of minimum cardinality whose addition results in a -edge-connected graph. The problem was solved in terms of a min-max theorem by Cai and Sun CS and a polynomial time algorithm was provided by Watanabe and Nakamura WN . If we replace the minimum cardinality condition in the above problem by a minimum cost condition respecting a given arbitrary cost function on , the problem becomes -complete. For this reason, we only consider the minimum cardinality version for all augmentation problems treated in this article.
The method that is nowadays most commonly used when dealing with connectivity augmentation problems was introduced by Frank F . This method consists of two steps. In the first one a new vertex as well as edges connecting it to the given graph are added to have the required connectivity condition. A such graph with the minimum even number of new edges is called a minimal even extension. The second step applies an operation called splitting off. A splitting off is the deletion of two edges incident to the new vertex and adding an edge between the two corresponding neighbors. A minimum augmentation of can be obtained by repeatedly applying splitting offs maintaining the connectivity requirements and finally deleting the added vertex.
Besides the basic case, this method allows to handle several other versions of the problem such as the local edge-connectivity augmentation problem in undirected graphs and the global arc-connectivity augmentation problem for directed graphs. Frank F managed to provide both min-max theorems and efficient algorithms for these problems. Several further applications have been found, see for example BAB , BGJS , BJa , BJo , BF , BGS1 , BGS2 and S .
Vertex-connectivity augmentation problems are more complicated than edge-connectivity augmentation problems. For the global vertex-connectivity augmentation problem in undirected graphs, no min-max theorem is known, however, a polynomial time algorithm for constant was given by Jackson and Jordán JJ . For the global vertex-connectivity augmentation problem in directed graphs, a min-max theorem and an efficient algorithm for constant were given by Frank and Jordán FJ . The main contribution of FJ , besides the solution of the directed global vertex-connectivity augmentation problem, is the first application of bisets, a technique we also rely on in the present article.
Returning to the basic case of global undirected edge-connectivity augmentation, Frank F provided an algorithm based on the approach described above. In order to achieve this running time, he uses a slightly more sophisticated method for the splitting off part. Carefully choosing the pairs of edges to be split off, he manages to finish with a complete splitting off after a linear number of splitting off operations in while the obvious approach results in a quadratic number. Nagamochi and Ibaraki NI provided a more efficient implementation of the method described above. They managed to find a minimum -edge-connected augmentation in . An important ingredient in their work is an mincut algorithm. We also make use of this mincut algorithm as a subroutine.
The problem we deal with in this article is -connectivity augmentation. The concept of -connectivity is a mixed form of edge-connectivity and vertex-connectivity and was first introduced in a more general form by Kaneko and Ota KO . A graph is said to be -connected if , is -edge-connected and is -edge-connected for every vertex Bisets provide a convenient framework to treat this mixed-connectivity concept. The -connectivity augmentation problem was considered by Durand de Gevigney and Szigeti DgGSz , where a min-max theorem was proved. The authors characterized graphs admitting a complete splitting off maintaining -connectivity in terms of an obstacle. They also worked out the minimal even extension step for -connectivity. They showed that a minimal even extension exists so that the obtained graph contains no obstacle yielding a complete admissible splitting off. This allowed the application of Frank’s method to derive a min-max theorem. However, the problem of finding an efficient algorithm to construct an optimal solution remained open there.
The aim of the present article is to fill this gap. Given a graph and , a minimum -connected augmentation of is a -connected graph such that and is minimum. The main result of this article is the following:
Given a graph , we can compute a minimum -connected augmentation of in .
During the whole article we suppose that . For , observe that -connectivity is equivalent to -vertex-connectivity and an algorithm for -vertex-connectivity augmentation has been found in ET . We follow the proof technique of DgGSz and show how to turn it into an efficient algorithm with some more effort. It is easy to see that the minimal even extension step can be executed in polynomial time. The main difficulty so is to find the complete splitting off yielding a -connected augmentation of whose existence is guaranteed by DgGSz . In comparism to the problems in F , we seem to face another difficulty; graphs containing an obstacle need to be avoided during the splitting off process. We show that no obstacle can ever be created when splitting offs are executed from a minimal even extension, so the aforementioned difficulty does not actually exist. We first use the mincut algorithm of NI to compute the best splitting off for a given pair of edges incident to the new vertex in . Also, in order to speed up the algorithm, we choose the splitting offs in a way that linearizes the number of required splitting offs. This is inspired by the method that is used by Frank in F for the case of -edge-connectivity. The overall running time of our algorithm is .
This article is organized as follows: In Section 2, we give an overview of the results we use and show how to turn them into subroutines for our algorithm. In Section 3, we show how to efficiently compute a minimal even extension and give some of its important properties. In Section 4, we give key lemmas that will play a deceisive role in speeding up the splitting off algorithm. In Section 5, we give this algorithm and prove its correctness and running time.
2 Basic definitions and previous results
2.1 Capacitated graphs
All the graphs considered are undirected and loopless. On the other hand, our graphs have nonnegative integer edge capacities. Let be a capacitated graph, i.e. a graph with an integer edge capacity function . Given a set of edges, we will use for . Observe that we require all our capacitated graphs to have integer edge capacities, so we shall not create any capacitated graphs with non-integer capacities during our algorithm. We also do not consider capacitated graphs with multiple edges as they can easily be replaced by a single one with the sum of the corresponding capacities. For our algorithms, we will suppose that all basic operations can be executed in constant time.
2.2 Minimum cuts
Given a capacitated graph , the mincut problem consists of finding a set that minimizes . This problem has been widely studied. Due to the specific nature of our application, we are interested in a slight variation of this problem: given a capacitated graph with a distinguished vertex , we want to find a set that minimizes . In other words, we additionally require that no side of the cut consists of only. We denote the capacity of such a minimum cut by . We strongly rely on the following algorithmic result which is due to Nagamochi and Ibaraki NI .
Given a capacitated graph , we can compute and a set that minimizes in .
We say that is -edge-connected in for some positive integer if for all . We further require one well-known result of Lovász that can be found in FB in the proof of Exercise 6.53. For , we denote by the set of neighbors of .
Let be a capacitated graph that is -edge-connected in for some with even and with and . Then one of is empty.
Given a ground set , a biset consists of two sets with . We call the inner set of , the outer set of and the wall of . We also say . Given two bisets and , we define and . We say that if and . Given a biset , we define its complement by and . Observe that . Given two bisets and , we define .
Given a capacitated graph and a positive integer , we define a function on the bisets on by . Observe that . This function will play a crucial role throughout the article.
We can now rephrase the definition of -connectivity in terms of bisets. A capacitated graph with is -connected if for every biset on satisfying and , we have . During the article, we also need this slightly more advanced notion: A capacitated graph with is called -connected in if for every biset on satisfying and , we have . We say that a biset of is trivial if or , nontrivial otherwise.
We give a basic property of that is a direct consequence of in DgGSz :
For a capacitated graph , any two bisets and on satisfy the equation:
Next, we collect several consequences of Proposition 1 which prove useful throughout the article.
Let be a capacitated graph and let and be two bisets on such that and .
If , then .
If , then Moreover, if then
Let be a capacitated graph and let and be bisets on such that , and , then
if then .
2.4 Splitting off
Let be a capacitated graph. For and a positive integer , we denote by the capacitated graph obtained from by decreasing the capacity of by . If after the operation, we delete from . For that is -connected in , we denote , a set that will play a significant role later on. For a vertex , we denote by the capacitated graph where is the maximum integer such that is well-defined and -connected in .
For and a positive integer , we denote by the capacitated graph obtained from by decreasing and by and increasing by . We delete edges of capacity and create the edge if it does not exist yet. We also delete the arising loop if . We call this operation the -multiple splitting off of and and say that this -multiple splitting off contains and . We abbreviate -multiple splitting off for some arbitrary to splitting off. Suppose that is -connected in . We say that a pair is admissible if is -connected in . For , we denote by the graph where is the maximum integer such that is well-defined and -connected in .
We next give an important characterization of admissible pairs. Given a pair , a non-trivial biset with either and or and is said to block . The following result can be found as Lemma 3.1 in DgGSz and will be frequently used.
Given a capacitated graph that is -connected in and , is admissible if and only if there is no biset blocking it.
A biset that blocks a pair of edges with is called horrifying. Note that the wall of a horrifying biset contains at most one vertex.
While the following result is not explicitly proven in DgGSz , its proof is almost literally the same as the one of Lemma 3.4 in DgGSz . We therefore omit it. The result nevertheless plays a key role in our algorithm.
Let be a capacitated graph that is -connected in with even. Let be a horrifying biset, and . If the biset blocks , then either is horrifying or and have the same wall of size .
We also require the following result that can be found in DgGSz as Proposition 3.2.
Let be a capacitated graph that is -connected in and let be a horrifying biset. Then .
A series of splitting offs that results in a capacitated graph in which is an isolated vertex is called a complete splitting off of . It is easy to see that a complete splitting off exists if and only if is even. A complete splitting off is admissible if each of the splitting offs it contains is admissible in the current graph when being chosen. This is equivalent to the finally obtained capacitated graph being -connected after deleting . Finding such a complete admissible splitting off is the main difficulty in our algorithm. We strongly rely on a characterization of capacitated graphs having a complete admissible splitting off that can be found in DgGSz . Before stating it, we need the following definition:
Let be a capacitated graph that is -connected in and with even. An obstacle is a collection of bisets in and a vertex satisfying the following:
We say that is the special vertex of the obstacle. It is easy to see that a capacitated graph containing an obstacle does not have a complete admissible splitting off, as every splitting off of for some is blocked by the biset with and by Lemma 5. In DgGSz , it is proved that the converse is also true:
Let be a capacitated graph that is -connected in for some with even. Then has a complete admissible splitting off at if and only if does not contain an obstacle.
2.5 Basic algorithms
In this section, we show that we can efficiently compute the maximum decrease of the capacity of an edge and the maximum multiplicity of a splitting off of an edge pair that maintain certain connectivity requirements. We first show this for the case of edge-connectivity and then apply this for the case of -connectivity. All of these results are simple consequences of Lemma 1.
Given a capacitated graph that is -edge-connected in and a vertex , we can compute the maximal such that is -edge-connected in in . Further, if , we can compute a set with and in .
Let and . Obviously . The other condition needs to satisfy is that for every . If , we obtain . If , the condition is satisfied if and only if . It follows that . By Lemma 1, we can compute , and hence , and also a set with in . ∎
Given a capacitated graph that is -edge-connected in and vertices , we can compute the maximal such that is -edge-connected in in . Further, if , we can compute a set with and in .
Let and . Obviously . The other condition needs to satisfy is that for every . If , we obtain . If , the condition is satisfied if and only if . It follows that . By Lemma 1, we can compute , and hence , and also a set with , in . ∎
Given a capacitated graph that is -connected in and a vertex , we can compute in . Further, if , we can compute a nontrivial biset with and in .
Let be the maximum integer such that is -edge-connected in and is -edge-connected in for all . We first compute the maximum integer such that is -edge-connected in . Using Lemma 8, this can be done in . Next observe that for any , is always -edge-connected in by assumption. Now consider and observe that for any nonnegative integer , we have . It follows from Lemma 8 that we can compute the maximum integer such that is -edge-connected in in . We now can compute . The overall running time is .
Given a capacitated graph that is -connected in and vertices , we can compute in . Further, if , we can compute a biset blocking in in .
By definition, where is the maximum integer such that is -edge-connected in and is -edge-connected in for all . We first compute the maximum integer such that is -edge-connected in . Using Lemma 9, this can be done in . For , we can compute, by Lemma 9, the maximum integer such that is -edge-connected in in . We can compute, by Lemma 8, the maximum integer such that is -edge-connected in in . We similarly compute . We now can compute . The overall running time is .
Now suppose that . If , that is , then, by Lemma 9, a set with and can be found in . We obtain that is a biset blocking in . If for some , that is , then, by Lemma 9, a set with and can be found in . We obtain that is a biset blocking in . Finally, if or say that is , then, by Lemma 8, a set with and can be found in . We obtain that is a biset blocking in . ∎
3 Minimal even extensions
In this section, we introduce minimal even extensions, the capacitated graphs obtained by applying the first step of our algorithm. We define them, show how to compute them and give some properties of them.
Given a capacitated graph , we call a minimal even extension of a capacitated graph satisfying the following properties:
The crucial reason for considering minimal even extensions is the following direct relation to minimum augmentations that can be found in DgGSz .
Let be a capacitated graph, a minimal even extension of and a complete admissible splitting off of . Then is a minimum -connected augmentation of .
The remainder of this section shows how to compute a minimal even extension efficiently and determines some of its basic properties. We first show the algorithm to compute it:
Given a capacitated graph, a minimal even extension can be computed in .
It is clear that the output capacitated graph satisfies (6), (7) and (8). To prove (9), we may suppose that , so is defined in line 8. We denote by the capacitated graph defined in line 6 in iteration . Since line 6 is executed, for , there exists a biset such that and If and , then since and , it follows that Thus and for all with Let be the set of indices such that Note that Let . We obtain , so . It follows, by the previous argument, that , and hence, by the definition of , is even.
We prove one more important result that shows that when finding a complete admissible splitting off from a minimal even extension, we do not need to worry about obstacles.
Let be a minimal even extension of and let be obtained from by a series of admissible splitting offs. Then contains no obstacle.
Suppose that contains an obstacle with special vertex . By (2), is odd and and, by (9), is even, so was split off with an edge . Let be the capacitated graph such that . We next show that contains no obstacle. Otherwise, its special vertex cannot be by even and (2). It follows, by (5) and (3), that for some with which contradicts that by (2), . Therefore, by Theorem 2 and , there exist (possibly ) such that