# Approximation Algorithms for Connected Graph Factors of Minimum Weight

## Abstract

Finding low-cost spanning subgraphs with given degree and connectivity requirements is a fundamental problem in the area of network design. We consider the problem of finding *d*-regular spanning subgraphs (or *d*-factors) of minimum weight with connectivity requirements. For the case of *k*-edge-connectedness, we present approximation algorithms that achieve constant approximation ratios for all *d*≥2⋅⌈*k*/2⌉. For the case of *k*-vertex-connectedness, we achieve constant approximation ratios for *d*≥2*k*−1. Our algorithms also work for arbitrary degree sequences if the minimum degree is at least 2⋅⌈*k*/2⌉ (for *k*-edge-connectivity) or 2*k*−1 (for *k*-vertex-connectivity). To complement our approximation algorithms, we prove that the problem with simple connectivity cannot be approximated better than the traveling salesman problem. In particular, the problem is *A**P**X*-hard.

### Keywords

Graph factors Edge-connectivity Vertex-connectivity Approximation algorithms## 1 Introduction

The traveling salesman problem (*Min*-*TSP*) is a basic combinatorial optimization problem: given a complete graph *G*=(*V*,*E*) with edge weights that satisfy the triangle inequality, the goal is to find a Hamiltonian cycle of minimum total weight. Phrased differently, we are looking for a subgraph of *G* of minimum weight that is 2-regular, connected, and spanning. While *M**i**n*-*T**S**P* is *N**P*-hard [11, ND22], omitting the requirement that the subgraph must be connected makes the problem polynomial-time solvable [21, 27]. In general, *d*-regular, spanning subgraphs (also called *d*-factors) of minimum weight can be found in polynomial time using Tutte’s reduction [21, 27] to the matching problem. Cheah and Corneil [2] have shown that deciding whether a given graph *G*=(*V*,*E*) has a *d*-regular connected spanning subgraph is *N**P*-complete for every *d*≥2, where *d*=2 is just the Hamiltonian cycle problem [11, GT37]. Thus, finding a connected *d*-factor of minimum weight is also *N**P*-hard for all *d*.

The problem of finding connected *d*-factors of minimum weight is a fundamental problem in network design, where the usual setting is that there are connectivity and degree requirements. Then the goal is to find a cheap subgraph that meets the connectivity requirements and the degree bounds. Beyond simple connectedness, higher connectivity, such as *k*-vertex-connectivity or *k*-edge-connectivity, has been considered in order to increase the reliability of the network. Most variants of such problems are *N**P*-hard. Because of this, finding good approximation algorithms for such network design problems has been the topic of a significant amount of research [1, 4, 6, 7, 8, 9, 10, 14, 16, 17, 18, 19, 20].

In this paper, we study the problem of finding low-cost spanning subgraphs with given degrees that meet connectivity requirements (they should be *k*-edge-connected or *k*-vertex-connected for a given *k*). Violation of the degree constraint is not allowed.

### 1.1 Problem Definitions and Preliminaries

#### 1.1.1 Graphs and Connectivity

All graphs in this paper are undirected and simple. Let *G*=(*V*,*E*) be a graph. In the following, *n*=|*V*| is the number of vertices.

For a subset \(X \subseteq V\) of vertices, let cut_{G}(*X*) be the number of edges in *G* with one endpoint in *X* and the other endpoint in \(\overline X = V \setminus X\). For two disjoint sets \(X, Y \subseteq V\) of vertices, let cut_{G}(*X*,*Y*) be the number of edges in *G* with one endpoint in *X* and the other endpoint in *Y*.

Two vertices *u*,*v*∈*V* are *locally**k*-edge-connected in *G* if there are at least *k* edge-disjoint paths from *u* to *v* in *G*. Equivalently, *u* and *v* are locally *k*-edge-connected in *G* if cut_{G}(*X*)≥*k* for all \(X \subseteq V\) with *u*∈*X* and *v*∉*X*. Local *k*-edge-connectedness is an equivalence relation as it is symmetric, reflexive, and transitive. A graph *G* is *k*-*edge-connected* if all pairs of vertices are locally *k*-edge-connected in *G*.

Let \(X \subseteq V\). We call *X* a *k*-*edge-connected component* of *G* if the subgraph induced by *X* is *k*-edge-connected. We call *X* a *locally k-edge-connected component* of *G* if all *u*,*v*∈*X* are locally *k*-edge-connected in *G*. Note that every *k*-*edge-connected component* of *G* is also a locally *k*-edge-connected component of *G*, but the reverse is not true.

A graph *G* is *k*-*vertex-connected*, if the graph induced by the vertices *V*∖*K* is connected for all sets \(K \subseteq V\) with |*K*|≤*k*−1. Equivalently, for any two non-adjacent vertices *u*,*v*∈*V*, there exist at least *k* vertex-disjoint paths connecting *u* and *v* in *G*.

We note that testing if two vertices are locally *k*-edge-connected, if a graph is *k*-edge-connected, or if a graph is *k*-vertex-connected can be done in polynomial time. For an overview of connectivity and algorithms for computing connectivity and connected components, we refer to two surveys [13, 15].

For a vertex *v*∈*V*, let *N*_{G}(*v*) = *N*(*v*)={*u*∈*V*∣{*u*,*v*}∈*E*} be the neighbors of *v* in *G*. The graph *G* is *d-regular* if |*N*(*v*)| = *d* for all *v*∈*V*. A *d*-regular spanning subgraph of a graph is called a *d-factor*. Instead of using the same value *d* for all vertices, we also consider spanning subgraphs where the degree of each vertex *v* is required to be *d*_{v} (Section 4).

By abusing notation, we identify a set \(X \subseteq V\) of vertices with the subgraph induced by *X*. Similarly, if the set of vertices is clear from the context, we identify a set *F* of edges with the graph (*V*,*F*).

#### 1.1.2 Problem Definitions

Let *G*=(*V*,*E*) be an undirected, complete graph with non-negative edge weights *w*. The edge weights are assumed to satisfy the triangle inequality, i.e., *w*({*u*,*v*})≤*w*({*u*,*x*}) + *w*({*x*,*v*}) for all distinct *u*,*v*,*x*∈*V*. For some set \(F \subseteq E\) of edges, we denote by \(w(F) = {\sum }_{e \in F} w(e)\) the sum of its edge weights. The weight of a subgraph is the weight of its edge set.

The problems considered in this paper are the following: as input, we are given *G* and *w* as above. Then *M**i**n*-*d**R**e**g*-*k**E**d**g**e* denotes the problem of finding a *k*-edge-connected *d*-factor of *G* of minimum weight. Similarly, *M**i**n*-*d**R**e**g*-*k**V**e**r**t**e**x* denotes the problem of finding a *k*-vertex-connected *d*-factor of *G* of minimum weight.

The two problems

*M**i**n*-*d**R**e**g*-1*E**d**g**e*and*M**i**n*-*d**R**e**g*-1*V**e**r**t**e**x*are identical for all*d*since 1-edge-connectedness and 1-vertex-connectedness are simply connectedness.For

*k*∈{1,2}, the problems*M**i**n*-2*R**e**g*-*k**E**d**g**e*and*M**i**n*-2*R**e**g*-*k**V**e**r**t**e**x*are identical to the traveling salesman problem (Min-TSP).For even

*d*and*k*, the problems*M**i**n*-*d**R**e**g*-(*k*−1)*E**d**g**e*and*M**i**n*-*d**R**e**g*-*k**E**d**g**e*are identical. For even*d*, every*d*-factor can be decomposed into*d*/2 2-factors. Thus, the size of every cut is even. Therefore, every*d*-regular (*k*−1)-edge-connected graph is automatically*k*-edge connected for even*k*.For

*k*∈{1,2,3}, the two problems*M**i**n*-3*R**e**g*-*k**E**d**g**e*and*M**i**n*-3*R**e**g*-*k**V**e**r**t**e**x*are identical since edge- and vertex-connectivity are equal in cubic graphs [28, Theorem 4.1.11].

We also consider the generalizations of *M**i**n*-*d**R**e**g*-*k**E**d**g**e* and *M**i**n*-*d**R**e**g*-*k**V**e**r**t**e**x* to arbitrary degree sequences: for *M**i**n*-*d**G**e**n*-*k**E**d**g**e*, we are given as additional input a degree requirement \(d_{v} \in \mathbb {N}\) for every vertex *v*. The parameter *d* is a lower bound for the degree requirements, i.e., we have *d*_{v}≥*d* for all vertices *v*. The goal is to compute a *k*-edge-connected spanning subgraph in which every vertex *v* is adjacent to exactly *d*_{v} vertices. Min-*d*Gen-*k*Vertex is analogously defined for *k*-vertex-connectivity. For the sake of readability, we restrict the presentation of our algorithms in Sections 2 and 3 to *M**i**n*-*d**R**e**g*-*k**V**e**r**t**e**x* and *M**i**n*-*d**R**e**g*-*k**E**d**g**e*, and we state the generalized results for *M**i**n*-*d**G**e**n*-*k**V**e**r**t**e**x* and *M**i**n*-*d**G**e**n*-*k**E**d**g**e* only in Section 4.

We use the following notation: OptE^{k} denotes a *k*-edge-connected subgraph of minimum weight. OptV^{k} denotes a *k*-vertex-connected subgraph of minimum weight. For both, no degree requirements have to be satisfied. OptF_{d} denotes a (not necessarily connected) *d*-factor of minimum weight. \(\text {optEF}_{d}^{k}\) and \(\text {OptVF}_{d}^{k}\) denote minimum-weight *k*-edge-connected and *k*-vertex-connected *d*-factors, respectively.

We have \(w(\text {OptF}_{d}) \leq w(\text {optEF}_{d}^{k}) \leq w(\text {OptVF}_{d}^{k})\) since every *k*-vertex-connected graph is also *k*-edge-connected. Both \(w(\text {optEF}_{d}^{k})\) and \(w(\text {OptVF}_{d}^{k})\) are monotonically increasing in *k*. Furthermore, \(w(\text {OptE}^{k}) \leq w(\text {optEF}_{d}^{k})\) for every *d* and \(w(\text {OptV}^{k}) \leq w(\text {OptVF}_{d}^{k})\) for every *d*.

We denote by MST a minimum-weight spanning tree of *G*.

### 1.2 Previous and Related Results

Without the triangle inequality, the problem of computing minimum weight *k*-vertex-connected spanning subgraphs can be approximated within a factor of \(O(\log k)\) [3], and the problem of computing minimum weight *k*-edge-connected spanning subgraphs can be approximated with in a factor of 2 [16]. However, no approximation at all seems to be possible without the triangle inequality if we ask for specific degrees. This follows from the inapproximability of non-metric TSP [29, Section 2.4].

With the triangle inequality, we obtain the same factor of 2 for *k*-edge-connected subgraphs of minimum weight without degree requirements [16]. For *k*-vertex-connected spanning subgraphs of minimum weight without degree constraints, Kortsarz and Nutov [17, Theorem 4.2] gave a \(\bigl (2 + \frac {k-1}n\bigr )\)-approximation algorithm.

*M*

*i*

*n*-

*k*

*R*

*e*

*g*-

*k*

*V*

*e*

*r*

*t*

*e*

*x*and

*M*

*i*

*n*-

*k*

*R*

*e*

*g*-

*k*

*E*

*d*

*g*

*e*admit constant factor approximations for all

*k*≥1 [1]. We refer to Tables 1 and 2 for an overview of results on

*k*-vertex-connected and

*k*-edge-connected

*d*-factors.

Overview of approximation ratios for *M**i**n*-*d**R**e**g*-*k**V**e**r**t**e**x*

Fukunaga and Nagamochi [8] considered the problem of finding a minimum-weight *k*-edge-connected spanning subgraph with given degree requirements. Different from the problem that we consider, they allow multiple edges between vertices. This considerably simplifies the problem as one does not have to take care to avoid multiple edges when constructing the approximate solution. For this relaxed variant of the problem, they obtain approximation ratios of 2.5 for even *k* and \(2.5 + \frac {1.5}k\) for odd *k* if the minimum degree requirement is at least 2. We remark that, although an optimal solution with multiple edges cannot be heavier than an optimal solution without multiple edges, an approximation algorithm for the variant with multiple edges does not imply an approximation algorithm for the variant without multiple edges and vice versa.

In many cases of algorithms for network design with degree constraints, only bounds on the degrees are given or some violation of the degree requirements is allowed to simplify the problem. Fekete et al. [7] devised an approximation algorithm for the bounded-degree spanning tree problem. Given lower and upper bounds for the degree of every vertex, spanning trees can be computed that violate every degree constraint by at most 1 and whose weight is no more than the weight of an optimal solution [26]. Often, network design problems are considered as bicriteria problems, where the goal is to simultaneously minimize the total costs and the violation of the degree requirements [9, 10, 18, 19, 20]. In contrast, our goal is to meet the degree requirements exactly.

Recently [23], *M**i**n*-*d**R**e**g*-1*E**d**g**e* has been considered for the case that *d* grows with the number *n* of vertices. It turns out that the problem becomes simpler for large enough *d*, admitting a PTAS for *d*≥*n*/*c* for any constant *c*.

### 1.3 Our Contribution

We devise polynomial-time approximation algorithms for *M**i**n*-*d**R**e**g*-*k**V**e**r**t**e**x* (Section 2) and for *M**i**n*-*d**R**e**g*-*k**E**d**g**e* (Section 3). Our algorithms can be generalized to arbitrary degree sequences, as long as the minimum degree requirement is at least 2*k*−1 for vertex connectivity or at least 2⌈*k*/2⌉ for edge connectivity (Section 4).

Roughly, we obtain an approximation ratio of about 5 for *M**i**n*-*d**R**e**g*-*k**V**e**r**t**e**x* for *d*≥2*k*−1, an approximation ratio of roughly 4 for *M**i**n*-*d**R**e**g*-*k**E**d**g**e* for odd *d*≥*k*+1 and a ratio of 2.5 for *M**i**n*-*d**R**e**g*-*k**E**d**g**e* for even *d*≥*k*. The precise approximation ratios are summarized in Tables 1 and 2.

As far as we are aware, there do not exist any approximation results for the problem of finding subgraphs with exact degree requirements. The only exception that we are aware of is the work by Fukunaga and Nagamochi [8]. However, they allow multiple edges in their solutions, which seems to make the problem simpler to approximate.

The high-level ideas of our algorithms are as follows. For vertex-connectivity, the idea is to compute a *k*-vertex-connected *k*-regular graph and a (possibly not connected) *d*-factor. We iteratively add edges from the *k*-vertex-connected graph to the *d*-factor while maintaining the degrees until we obtain a *k*-vertex-connected *d*-factor. This works for *d*≥2*k*−1 (Lemma 2.1).

For edge-connectivity, our initial idea was to iteratively increase the connectivity from *k*−1 to *k* by considering the *k*-edge-connected components of the current solution and adding edges carefully. However, this does not work as *k*-edge-connected components are not guaranteed to exist in (*k*−1)-edge-connected graphs. Instead, we introduce *k*-special components (Definition 3.2). By connecting the *k*-special components carefully, we can increase the edge-connectivity of the graph (Lemma 3.11). Every increase of the edge-connectivity costs at most a fraction *O*(1/*k*) of the weight of the optimal solution (Lemma 3.18), yielding constant factor approximations for all *k*.

Finally, we prove that *M**i**n*-*d**R**e**g*-1*E**d**g**e* is *A**P**X*-hard. We extend this result and the *N**P*-hardness of finding connected *d*-factors to the case where *d* grows with the number *n* of vertices.

## 2 Vertex Connectivity

In this section, we consider *M**i**n*-*d**R**e**g*-*k**V**e**r**t**e**x* for *d*≥2*k*−1. The basis of the algorithm (Algorithm 1) is the following: Assume that we have a *k*-vertex connected *k*-factor *H* and a *d*-factor *F* that lacks *k*-vertex-connectedness. Then we iteratively add edges from *H* to *F* to make *F**k*-vertex-connected as well. More precisely, we try to add an edge *e*∈*H*∖*F* to increase the connectivity of *F*. To maintain that *F* is *d*-regular, we have to add another edge and remove two edges of *F*. If, in the course of this process, we never have to remove an edge of *H* from *F*, then the algorithm terminates with a *k*-vertex-connected *d*-regular graph.

*d*-factor OptF

_{d}can be computed in polynomial time (line 1) by Tutte’s reduction to the matching problem [21, 27]. Kortsarz and Nutov showed that we can compute a

*k*-vertex-connected spanning subgraph

*K*whose total weight is at most a factor of \(2 + \frac {k-1}n\) larger than the weight of a

*k*-vertex-connected graph of minimum weight (line 2). Chan et al. [1] devised an algorithm that turns

*k*-vertex-connected graphs

*K*into

*k*-regular

*k*-vertex-connected graphs

*H*at the expense of an additive

*w*(OptV

^{k})/

*k*.

With this initialization, we iteratively add edges from *H* to *F* while maintaining *d*-regularity of *F*. This works as long as *d* is sufficiently large according to the following lemma. We parametrize the maximum degree of *H* by *ℓ* in order to be able to get a slight improvement for larger *d* (Corollary 2.3).

**Lemma 2.1**

*Let k,ℓ≥2 and d≥k+ℓ−1. Let G=(V,E) be an undirected complete graph. Let F be a d-factor of G that is not k-vertex connected, and let H be a k-vertex connected subgraph of G that has a maximum degree of at most ℓ.*

*Then there exists an edge e={u*

_{1}

*,u*

_{2}

*}∈H∖F and vertices v*

_{1}

*,v*

_{2}

*∈V with v*

_{1}

*≠v*

_{2}

*with the following properties*:

- 1.
*The vertices u*_{1}*and u*_{2}*are not connected via k vertex-disjoint paths in F*. - 2.
{

*u*_{1}*,v*_{1}*},{u*_{2}*,v*_{2}}*∈F∖H*. - 3.
{

*v*_{1}*,v*_{2}}∉F.

*Proof 1*

Since *F* is not *k*-vertex-connected, there exists a subset \(X \subseteq V\) of vertices with |*X*|≤*k*−1 such that the subgraph \(\tilde G_{F}\) of *F* induced by *V*∖*X* is not connected. Since *H* is *k*-vertex-connected, the subgraph \(\tilde G_{H}\) of *H* induced by *V*∖*X* is connected. This means that there exists an edge *e*={*u*_{1},*u*_{2}} in \(\tilde G_{H}\) that connects two different components of \(\tilde G_{F}\). In particular, *e*∈*H*∖*F* and *u*_{1} and *u*_{2} are not connected via *k* vertex-disjoint paths in *F*.

Let \({e_{1}^{1}}, \ldots , {e_{d}^{1}}\) be the edges of *F* incident to *u*_{1}. Since *H* has a maximum degree of at most *ℓ* and the edge *e* is incident to *u*_{1}, at most *ℓ*−1 of these *d* edges are contained in *H*. Because of this and since *d*≥*k* + *ℓ*−1, at least *k* of these edges are not contained in *H*. Let \({e_{1}^{1}}, \ldots , {e_{k}^{1}}\) be *k* such edges.

In the same way, let \({e_{1}^{2}}, \ldots , {e_{k}^{2}}\) be *k* edges of *F*∖*H* incident to *u*_{2}.

Let \({e_{i}^{j}} = \{u_{j}, z_{j,i}\}\). We call *z*_{1,i} and \(z_{2, i^{\prime }}\) connected if \(z_{1,i} = z_{2, i^{\prime }}\) or if they are connected with an edge in *F*. If all endpoints *z*_{1,1},…,*z*_{1,k} were connected to all endpoints *z*_{2,1},…,*z*_{2,k}, then this would give us *k* vertex-disjoint paths from *u*_{1} to *u*_{2}, contradicting the assumption of the lemma. Thus, there exist \({e_{i}^{1}} = \{u_{1}, z_{1, i}\}\) and \(e_{i^{\prime }}^{2} = \{u_{2}, z_{2, i^{\prime }}\}\) such that *z*_{1,i} and \(z_{2, i^{\prime }}\) are not connected. We set *v*_{1} = *z*_{1,i} and \(v_{2} = z_{2, i^{\prime }}\). These vertices have the desired properties. □

With this lemma, we can prove the main result of this section.

**Theorem 2.2**

*For*\(k, d \in \mathbb {N}\)*with k≥2 and d≥2k−1, Algorithm 1 is a polynomial-time approximation algorithm for**M**i**n*-d*R**e**g*-k*V**e**r**t**e**x* with an approximation ratio of \(5 + \frac {2k-2}n + \frac 2k\).

*Proof 2*

Because of Lemma 2.1 with *ℓ* = *k*, we can always find vertices *v*_{1} and *v*_{2} as required in line 6, and such vertices can be found in polynomial time. Since no edge of *H* is ever removed from *F* and every iteration adds one or two edges of *H* to *F*, the while loop runs through at most |*H*| iterations. Thus, the overall running-time is bounded by a polynomial.

Let us analyze the approximation ratio. If we add an edge *e*∈*H* to *F*, then we add in fact *e*={*u*_{1},*u*_{2}} and \(e^{\prime } = \{v_{1}, v_{2}\}\). On the other hand, we remove {*u*_{1},*v*_{1}} and {*u*_{2},*v*_{2}} from *F*. By the triangle inequality, \(w(e^{\prime }) \leq w(e) + w(\{u_{1}, v_{1}\}) + w(\{u_{2}, v_{2}\})\). Thus, if we add *e* and \(e^{\prime }\), then the weight of *F* increases by at most 2*w*(*e*). Therefore, the total weight of *R* is bounded by *w*(*R*)≤*w*(OptF_{d})+2*w*(*H*).

*w*(

*H*)≤

*w*(

*K*) +

*w*(OptV

^{k})/

*k*[1]. Moreover, \(w(K) \leq (2 + \frac {k-1}n)\cdot w(\text {OptV}^{k})\) [17] and \(w(\text {OptV}^{k}) \leq w(\text {OptVF}_{d}^{k})\). Thus,

Algorithm 1 also works for *k*=1, but for this case, there already exist better approximation algorithms (see Table 1).

With the slightly stronger assumption *d*≥2*k*, we can get a slightly better approximation ratio.

**Corollary 2.3**

*For*\(k, d \in \mathbb {N}\)*with k≥2 and d≥2k, there exists a polynomial-time approximation algorithm for**M**i**n*-d*R**e**g*-k*V**e**r**t**e**x**with an approximation ratio of *\(5 + \frac {2k-2}n\).

*Proof 3*

In line 3 of Algorithm 1, we compute a *k*-vertex-connected graph *H* of maximum degree *k*+1 instead of a *k*-regular *k*-vertex-connected graph. According to Chan et al. [1], this can be done in polynomial time with *w*(*H*)≤*w*(*K*). Now we use Lemma 2.1 with *ℓ* = *k*+1. □

## 3 Edge-Connectivity

In this section, we present an approximation algorithm for *M**i**n*-*d**R**e**g*-*k**E**d**g**e* for all combinations of *d* and *k*, provided that *d*≥2⌈*k*/2⌉. This means that the algorithm works for all *d*≥*k* with the only exception being the case of odd *d* = *k*. It includes the case of simple connectivity, i.e., the case of *k*=1.

The main idea of our algorithm is as follows: We start by computing a *d*-factor (without requiring any connectedness). Then we iteratively increase the connectivity as follows: First, we identify edges that we can safely remove without decreasing the connectivity. Second, we find edges that we can add in order to increase the connectivity while repairing the *d*-regularity that we have destroyed in the first step.

One might be tempted to use the *k*-edge-connected components of the *d*-factor in order to increase the edge-connectivity from *k*−1 to *k*. This works for *k*=1 and *k*=2. However, for larger *k*, the catch is that there need not be enough *k*-edge-connected components, and it is in fact possible to find (*k*−1)-edge-connected graphs that are *d*-regular with *d*≥*k* that do not contain any non-trivial *k*-edge-connected component. To circumvent this problem, we introduce the notion of *k*-special components, which have the desired properties.

### 3.1 Graph-Theoretic Preparation

Different from the rest of the paper, the graph *G*=(*V*,*E*) is not necessarily complete in this section.

**Lemma 3.1**

*Let*\(k \in \mathbb {N}\)

*, and let G=(V,E) be a graph of minimum degree at least k. Let*\(X \subseteq V\)

*be a non-empty subset of vertices. Then at least one of the following two properties hold*:

|X|≥k+1.

*cut*_{G}*(X)≥k*.

*Proof 4*

Let *ℓ*=|*X*|. Every vertex in *X* can be adjacent to at most |*X*|−1 = *ℓ*−1 other vertices of *X*. Since *G* has a minimum degree of at least *k*, every vertex of *X* must have at least *k*−*ℓ*+1 neighbors outside of *X*. This shows cut_{G}(*X*)≥(*k*−*ℓ*+1)⋅*ℓ*. For *ℓ*=1 and *ℓ* = *k*, this last expression evaluates to *k*. Since it is a concave function of *ℓ*, we have cut_{G}(*X*)≥*k* for 1≤*ℓ*≤*k*. □

The following definition of *k*-special components is crucial for the whole Section 3. As far as we are aware, this definition has not appeared yet in the literature.

**Definition 3.2**

Let \(k \in \mathbb {N}\), and let *G*=(*V*,*E*) be a graph. We call \(L \subseteq V\) a *k*-*special component in**G* if cut_{G}(*L*)≤*k*−1 and *L* is locally *k*-edge connected in *G*.

For *k*=1, the *k*-special components are the connected components of *G*. For *k*=2, the *k*-special components are the leaves of the following graph: we have a node for every 2-edge-connected component. Two nodes of this graph are connected if the corresponding 2-edge-connected components are connected via a single edge. This graph is a tree. The 2-special components of *G* correspond to the leaves of this tree.

Let us collect some facts about *k*-special components.

**Lemma 3.3**

*Let G have a minimum degree of at least k, and let L be a k-special component in G. Then |L|≥k+1.*

*Proof 5*

This follows immediately from Lemma 3.1 and Definition 3.2. □

**Lemma 3.4**

*Let G be a graph. If L is a k-special component, then L is a maximal locally k-edge-connected component. If L and*\(L^{\prime }\)*are k-special, then either*\(L = L^{\prime }\)*or*\(L \cap L^{\prime } = \emptyset \).

*Proof 6*

If *L* were not maximal, then we would have cut_{G}(*L*)≥*k*. If *L* and \(L^{\prime }\) intersect but are not identical, then cut_{G}(*L*)≥*k* or \(\text {cut}_{G}(L^{\prime }) \geq k\). Hence, if *L* and \(L^{\prime }\) intersect, then they must be identical. □

The following lemma is crucial as it proves the existence of *k*-special components.

**Lemma 3.5**

*Let k≥1. Let G=(V,E) be a (k−1)-edge-connected graph. Then every non-empty vertex set*\(X \subsetneq V\)*either contains a k-special component or satisfies cut*_{G}*(X)≥k.*

*Proof 7*

Assume to the contrary that there exists a set *X* with cut_{G}(*X*)≤*k*−1 that does not contain a *k*-special component. We choose *X* minimal in the sense such that no non-empty proper subset \(Y \subsetneq X\) with cut_{G}(*Y*)≤*k*−1 does not contain a *k*-special component.

Now consider any \(Y \subsetneq X\). If *Y* contains a *k*-special component \(L \subseteq Y\), then also *X* contains a *k*-special component. We can conclude that cut_{G}(*Y*)≥*k* for all non-empty \(Y \subsetneq X\).

If *X* itself is locally *k*-edge-connected, then *X* is a *k*-special component because cut_{G}(*X*)≤*k*−1 by assumption. Thus, we can conclude that *X* is not locally *k*-edge-connected. Hence, there exist vertices *u*,*v*∈*X* and a set \(U \subseteq V\) with *u*∈*U* and \(v \in V \setminus U = \overline U\) such that cut_{G}(*U*)≤*k*−1.

*X*is a proper subset of

*V*. We denote the number of edges between the four parts of the graph by

*k*

_{1},…,

*k*

_{6}according to Fig. 1.

We consider three cases. The first case is that \(\overline X \cap U = \emptyset \). We only have to deal with *k*_{2}, *k*_{3}, and *k*_{5}. Among others, we have the constraint *k*_{3} + *k*_{5}≥*k* since \(X \cap U\) is a proper subset of *X*, which implies \(\text {cut}_{G}(X \cap U) \geq k\). And we have the constraint *k*_{3} + *k*_{5}≤*k*−1 since cut_{G}(*U*)≤*k*−1 and \(\overline X \cap U = \emptyset \). These two cannot be satisfied simultaneously.

The second case is that \(\overline X \cap \overline U = \emptyset \). In the same way as in Case 2, we have *k*_{3} + *k*_{6}≥*k* and *k*_{3} + *k*_{6}≤*k*−1, which cannot be satisfied simultaneously.

The last and general case is that both \(\overline X \cap U \neq \emptyset \) and \(\overline X \cap \overline U \neq \emptyset \). Since \(X \cap U\) and \(X \cap \overline U\) are proper subsets of *X*, we have \(\text {cut}_{G}(X \cap U), \text {cut}_{G}(X \cap \overline U) \geq k\). This translates to *k*_{1} + *k*_{3} + *k*_{5}≥*k* and *k*_{2} + *k*_{3} + *k*_{6}≥*k*.

We have cut_{G}(*X*)≤*k*−1, which implies *k*_{1} + *k*_{2} + *k*_{5} + *k*_{6}≤*k*−1. And we have cut_{G}(*U*)≤*k*−1, we implies *k*_{3} + *k*_{4} + *k*_{5} + *k*_{6}≤*k*−1.

Finally, the graph *G* is (*k*−1)-edge-connected. Thus, there are at least *k*−1 edge-disjoint paths from \(\overline X \cap U\) to \(\overline X \cap \overline U\). This translates to \(k_{4} + k_{5} + k_{6} + \min (k_{1}, k_{2}, k_{3}) \geq k-1\). The latter corresponds to three inequalities: *k*_{i} + *k*_{4} + *k*_{5} + *k*_{6}≥*k*−1 for *i*∈{1,2,3}.

*k*

_{1},…,

*k*

_{6}that satisfy all inequalities simultaneously. We have

*k*

_{4}=

*k*−1−

*k*

_{3}−

*k*

_{5}−

*k*

_{6}. We plug this into

*k*

_{i}+

*k*

_{4}+

*k*

_{5}+

*k*

_{6}≥

*k*−1 for

*i*=1,2 and obtain

*k*

_{3}≤

*k*

_{1}and

*k*

_{3}≤

*k*

_{2}.

*k*

_{1}+

*k*

_{3}+

*k*

_{5}≥

*k*and

*k*

_{2}+

*k*

_{3}+

*k*

_{6}≥

*k*yields

*k*

_{1}+

*k*

_{2}+

*k*

_{5}+

*k*

_{6}≤

*k*−1. Multiplying this with 2 and combining it with

*k*

_{3}≤

*k*

_{1}and

*k*

_{3}≤

*k*

_{2}yields

*k*

_{5}and

*k*

_{6}, we thus must have

*k*

_{1}+

*k*

_{2}+2

*k*

_{3}+

*k*

_{5}+

*k*

_{6}≥2

*k*derived above. □

The purpose of the next few lemmas is to show that we can always remove an edge from a *k*-special component without decreasing the connectedness of the whole graph. In the following, let *m*=⌈*k*/2⌉+1. It turns out that the graph induced by a *k*-special component contains a locally *m*-edge-connected component (Lemma 3.7). The next lemma is useful for this.

**Lemma 3.6**

*Let k≥1, let G=(V,E) be a (k−1)-edge-connected graph, and let*\(L \subseteq V\)*be a k-special component of G. Then L is (⌊k/2⌋+1)-edge-connected.*

*Proof 8*

Consider *u*,*v*∈*L*. As *u* is locally *k*-edge-connected to *v*, there are at least *k* edge-disjoint paths from *u* to *v*. Since *L* is *k*-special, we have cut_{G}(*L*)≤*k*−1. Thus, at most \(\lfloor \frac {k-1}2\rfloor \) of these edge-disjoint paths can leave *L*. Hence, there are at least \(k - \lfloor \frac {k-1}2\rfloor = \lfloor k/2 \rfloor +1\) paths running solely through vertices in *L*. □

**Lemma 3.7**

*Let k≥1, and let m=⌈k/2⌉+1. Let G=(V,E) be a (k−1)-edge-connected graph of minimum degree at least 2⌈k/2⌉, and let L be a k-special component of G. Then there exists an*\(X \subseteq L\)*such that X is a locally m-edge-connected component in L and |X|≥k+1.*

*Proof 9*

For even *k*, Lemma 3.6 implies that we can choose *X* = *L*. We have |*X*|≥*k*+1 by Lemma 3.3.

For *k*=1, we have *m*=2, and *G* has a minimum degree of 2. The *k*-special components are just the connected components of *G*. Every connected component in a graph of minimum degree 2 contains a 2-edge-connected component, which satisfies |*X*|≥2.

Now let *k*≥3 be odd. The minimum degree in this case is 2⌈*k*/2⌉ = *k*+1. By Lemma 3.6, we know that *L* is (*m*−1)-edge-connected. If *L* is also *m*-edge-connected, then we can choose *X* = *L*. We have |*X*|≥*k*+1 by Lemma 3.3.

Otherwise, there exists a set \(Y \subseteq L\) with cut_{L}(*Y*)≤*m*−1. Lemma 3.5 implies the existence of an *m*-special component \(X \subseteq Y\) of *L*. This implies that *X* is locally *m*-edge-connected in *L*. To finish the proof, we have to show that *ℓ*=|*X*|≥*k*+1. We have cut_{L}(*X*)≤*m*−1 since *X* is *m*-special within *L*.

*X*. Since cut

_{G}(

*L*)≤

*k*−1, the number of edges that connect

*X*to

*L*∖

*X*is at least

*m*−1≤

*k*since

*X*is

*m*-special within

*L*. For

*ℓ*=2, we obtain −4+2

*k*+4−

*k*+1 =

*k*+1. For

*ℓ*=

*k*, we obtain −

*k*

^{2}+

*k*

^{2}+2

*k*−

*k*+1 =

*k*+1. Since

*g*is a concave function of

*ℓ*, we have

*g*(

*ℓ*)≥

*k*+1 for 2≤

*ℓ*≤

*k*. We have to rule out

*ℓ*=1 to show that

*ℓ*=|

*X*|≥

*k*+1, which finishes the proof.

*X*|=1, and let

*X*={

*x*}. The situation is depicted in Fig. 2, where

*a*denotes the number of edges between

*X*and

*V*∖

*L*,

*b*denotes the number of edges between

*L*∖

*X*and

*V*∖

*L*, and

*c*denotes the number of edges between

*X*and

*L*∖

*X*.

We have cut_{G}(*L*) = *a* + *b*≤*k*−1 since *L* is a *k*-special component in *G*. We have cut_{L}(*X*) = *c*≤*m*−1 since *X* is an *m*-special component in *L*. We have cut_{G}(*X*) = *a* + *c*≥*k*+1 because *x* has a degree of at least *k*+1. The first two inequalities imply *a* + *b* + *c*≤*k* + *m*−2. From this and the third one, we obtain *b*≤*m*−3. Choose any *v*∈*L*∖*X*. Since *L* is a *k*-special component in *G*, we have at least *k* edge-disjoint paths from *x* to *v* in *G*. At most *c*≤*m*−1 of these paths can run solely through *L*. Thus, *b*≥*k*−*c*≥*k*−*m*+1. Together with the previously derived *b*≤*m*−3, we obtain *k*−*m*+1≤*m*−3. This is equivalent to *k*+4≤2*m*, which does not hold since \(m = \lceil k/2 \rceil +1 = \frac {k+3}2\). We can conclude that |*X*|=1 is impossible. □

Given Lemma 3.7, the next lemma follows. The edges {*u*_{i},*v*_{i}} mentioned in this lemma are the edges that we can safely remove. The resulting graph will remain (*k*−1)-edge-connected (Lemma 3.10). The vertices *u*_{i} and *v*_{i} in the next lemma will be chosen from \(X_{i} \subseteq L_{i}\), where *X*_{i} is a locally *m*-edge-connected component in *L*_{i} as in Lemma 3.7.

**Lemma 3.8**

*Let k≥1, and let m=⌈k/2⌉+1. Let G=(V,E) be a (k−1)-edge-connected graph of minimum degree at least 2⌈k/2⌉. Let L*

_{1}

*,…,L*

_{s}

*be the k-special components of G. Then there exist vertices u*

_{i}

*,v*

_{i}

*∈L*

_{i}

*for all i∈{1,…,s} such that the following properties are met*:

{

*u*_{i}*,v*_{i}*}∈E for all i*.{

*u*_{i}*,v*_{j}*}∉E for all i≠j*.*There exist at least m edge-disjoint paths from u*_{i}*to v*_{i}*in the graph induced by L*_{i}*for every i*.

*Proof 10*

Consider any *i*∈{1,…,*s*}. According to Lemma 3.7, there exists a locally *m*-edge-connected set \(X_{i} \subseteq L_{i}\) with |*X*_{i}|≥*k*+1. Since |*X*_{i}|≥*k*+1 and cut_{G}(*L*_{i})≤*k*−1 (because *L*_{i} is *k*-special), there must be a vertex *u*_{i}∈*X*_{i} with \(N(u_{i}) \subseteq L_{i}\).

We choose *v*_{i} to be another vertex in the locally *m*-edge-connected component *X*_{i} contained in *L*_{i} such that {*u*_{i},*v*_{i}}∈*E*. If such a *v*_{i} exists, then there are *m* edge-disjoint paths from *u*_{i} to *v*_{i} in *L*_{i} since *u*_{i},*v*_{i}∈*X*_{i} and *X*_{i} is locally *m*-edge-connected in *L*_{i}.

Such vertices *v*_{i} exist because of the construction of the sets *X*_{i} in Lemma 3.7: Either *X*_{i} = *L*_{i}. Then this follows since \(N(u_{i}) \subseteq L_{i} = X_{i}\). Or \(X_{i} \subsetneq L_{i}\). In this case, we have \(\text {cut}_{L_{i}}(X_{i}) \leq m-1 = \lceil k/2\rceil \) since *X*_{i} is an *m*-special component in *L*_{i}. Since *u*_{i} has at least 2⌈*k*/2⌉ neighbors, all of which are in *L*_{i}, at least one *v*_{i}∈*X*_{i} that is adjacent to *u*_{i} must exist. □

**Lemma 3.9**

*Let G=(V,E) be a (k−1)-edge-connected graph of minimum degree at least 2⌈k/2⌉ with k-special components L*_{1}*,…,L*_{s}*. Let u*_{1}*,…,u*_{s}*and v*_{1}*,…,v*_{s}*be chosen as in Lemma 3.8. Let*\(Q = \bigl \{\{u_{i}, v_{i}\} \mid 1 \leq i \leq s\bigr \}\).

*For all i and j with i≠j, there does not exist a set*\(C \subseteq E\)*with |C|≤k−1 such that u*_{i}*is disconnected from v*_{i}*and u*_{j}*is disconnected from v*_{j}*in G−Q−C.*

*Proof 11*

Within *L*_{i}, there are *m* edge-disjoint paths from *u*_{i} to *v*_{i} by Lemma 3.8. After removing *Q* from *G*, there remain at least *m*−1=⌈*k*/2⌉ edge-disjoint paths within *L*_{i}.

The same holds for *L*_{j} with *u*_{j} and *v*_{j}. Thus, any set *C* of edges that simultaneously disconnects *u*_{i} from *v*_{i} and *u*_{j} from *v*_{j} must satisfy |*C*|≥2⋅⌈*k*/2⌉≥*k*. □

**Lemma 3.10**

*Let G=(V,E) be a (k−1)-edge-connected graph of minimum degree at least 2⌈k/2⌉ with k-special components L*_{1}*,…,L*_{s}*, and let u*_{1}*,…,u*_{s}*and v*_{1}*,…,v*_{s}*be chosen as in Lemma 3.8. Let*\(Q = \bigl \{\{u_{i}, v_{i}\} \mid 1 \leq i \leq s\bigr \}\)*. Then G−Q is (k−1)-edge-connected.*

*Proof 12*

We have to show that cut_{G−Q}(*X*)≥*k*−1 for all non-empty \(X \subsetneq V\). To do this, we distinguish two cases: In the first case, for every *i*, either *u*_{i},*v*_{i}∈*X* or *u*_{i},*v*_{i}∉*X*. In this case, cut_{G−Q}(*X*)=cut_{G}(*X*)≥*k*−1 since no edges between *X* and *V*∖*X* are removed.

In the second case, there exists an *i* such that \(|\{u_{i}, v_{i}\} \cap X| = 1\). If there are two or more *i* with this property, then cut_{G−Q}(*X*)≥*k*−1 follows from Lemma 3.9.

Now assume that there is only a single *i* with \(|\{u_{i}, v_{i}\} \cap X| = 1\). Without loss of generality, we assume that *u*_{i}∈*X* and *v*_{i}∉*X*. Since *u*_{i} and *v*_{i} are locally *k*-edge-connected in *G*, we have cut_{G}(*X*)≥*k*. Only the edge {*u*_{i},*v*_{i}} is removed from this cut, thus cut_{G−Q}(*X*)≥*k*−1. □

By removing the edges {*u*_{i},*v*_{i}}∈*Q* and adding the edges {*u*_{i},*v*_{i+1}}∈*S*, we construct a *k*-edge-connected graph from the (*k*−1)-edge-connected graph *G* according to the following lemma.

**Lemma 3.11**

*Let G=(V,E) be a (k−1)-edge-connected graph of minimum degree at least 2⌈k/2⌉ with k-special components L*_{1}*,…,L*_{s}*, and let u*_{1}*,…,u*_{s}*and v*_{1}*,…,v*_{s}*be chosen as in Lemma 3.8. Let*\(Q = \bigl \{\{u_{i}, v_{i}\} \mid 1 \leq i \leq s\bigr \}\)*, and let*\(S = \bigl \{\{u_{i}, v_{i+1}\} \mid 1 \leq i \leq s\bigr \}\)*, where arithmetic is modulo s.*

*Then the graph*\(\tilde G = G - Q + S\)*is k-edge-connected.*

*Proof 13*

We prove the lemma by a series of claims. In the following, arithmetic is modulo *s*.

**Claim 3.12**

*For every i, the vertices u*_{i}*and v*_{i+1}*are locally k-edge-connected in*\(\tilde G\).

*Proof 14*

The graph *G*−*Q* is (*k*−1)-edge-connected and *S* contains the edge {*u*_{i},*v*_{i+1}}. □

**Claim 3.13**

*For all i and j, the vertices u*_{i}*and u*_{j}*are locally k-edge-connected in*\(\tilde G\).

*Proof 15*

Without loss of generality, we assume *i*<*j*.

Assume to the contrary that there is a set *C* of at most *k*−1 edges such that *C* disconnects *u*_{i} from *u*_{j}. Since *G*−*Q* is (*k*−1)-edge-connected by Lemma 3.10, we must have \(C \cap S = \emptyset \).

Lemma 3.9 says that if *C* disconnects *u*_{a} from *v*_{a} for some *a*, then it cannot disconnect *u*_{b} from *v*_{b} for *a*≠*b*. Thus, *C* can disconnect at most one pair *u*_{a}, *v*_{a}. Consider the paths from *u*_{i} to *u*_{j} via *v*_{i+1},*u*_{i+1},*v*_{i+2},*u*_{i+2},…,*v*_{j−1},*u*_{j−1},*v*_{j} or via *v*_{i},*u*_{i−1},*v*_{i−1},*u*_{i−2},…,*v*_{j+2},*u*_{j+1},*v*_{j+1} after adding *S*. The set *S* contains all the connections between *u* and *v* vertices in these paths. Since *C* can disconnect at most one pair *u*_{a},*v*_{b} by Lemma 3.9, one of these paths must still exist. Thus, *u*_{i} and *v*_{i} are still connected in \(\tilde G\) after removing at most *k*−1 edges. □

**Claim 3.14**

*For all i and j, vertices u*_{i}*, v*_{i}*, u*_{j}*, and v*_{j}*are pairwise locally k-edge-connected in*\(\tilde G\).

*Proof 16*

This follows by transitivity of local *k*-edge-connectedness and Claims 3.12 and 3.13 above. □

**Claim 3.15**

*For all i, the vertices in L*_{i}*are locally k-edge-connected in*\(\tilde G\).

*Proof 17*

We show that every *x*∈*L*_{i} is locally *k*-edge-connected to *u*_{i} in \(\tilde G\). Then the claim follows by transitivity of local *k*-edge-connectedness.

Let \(X \subsetneq V\) with *x*∈*X* and *u*_{i}∉*X*. If *v*_{j}∈*X* (including the case *j* = *i*) or *u*_{j}∈*X* for some *j*≠*i*, then \(\text {cut}_{\tilde G}(X) \geq k\) by Claim 3.14. Thus, the case *u*_{1},…,*u*_{s},*v*_{1},…,*v*_{s}∉*X* remains to be considered. Since *L*_{i} is locally *k*-edge-connected in *G*, we have cut_{G}(*X*)≥*k*. This cut does not change by removing *Q*. Hence, \(\text {cut}_{\tilde G}(X) \geq k\). □

Transitivity of local *k*-edge-connectedness, Claim 3.14, and Claim 3.15 imply that \(L = \bigcup _{i=1}^{s} L_{i}\) is locally *k*-edge-connected in \(\tilde G\). The vertices that are not part of any *k*-special component in *G* remain to be considered.

Consider an arbitrary non-empty \(X \subsetneq V\). If we can show that \(\text {cut}_{X}(\tilde G) \geq k\), then we have completed the proof of this lemma. If \(X \cap L \neq \emptyset \) and \((V \setminus X) \cap L \neq \emptyset \), then \(\text {cut}_{\tilde G}(X) \geq k\) because *L* is locally *k*-edge-connected in \(\tilde G\). Thus, \(L \subseteq X\) or \(L \subseteq V \setminus X\). By symmetry, we restrict ourselves to the second case. Then we have \(\text {cut}_{G}(X) = \text {cut}_{\tilde G}(X)\) because no edge connecting *X* to *V*∖*X* is in *Q* or *S*.

If cut_{G}(*X*)≤*k*−1, then *X* contains a *k*-special component by Lemma 3.5, contradicting our assumption. Thus, we have cut_{G}(*X*)≥*k*. □

To conclude this section, we remark that the *k*-special components of a graph can be found in polynomial-time: local *k*-edge-connectedness can be tested in polynomial time. Thus, we can find locally *k*-edge-connected components in polynomial time. Since *k*-special components are maximal locally *k*-edge-connected components, we just have to compute a partition of the graph into locally *k*-edge-connected components and check whether less than *k* edges leave such a component. Therefore, the sets *L*_{i} and \(X_{i} \subseteq L_{i}\) as well as the vertices *u*_{i} and *v*_{i} with the properties as in Lemmas 3.7 and 3.8 can be computed in polynomial time.

Finally, we need the following lemma for improving the approximation ratios in the next section. It basically implies that we can jump from disconnected graphs directly to 2-edge-connected graphs in one iteration.

**Lemma 3.16**

*Let G=(V,E) be any undirected graph (not necessarily connected) of minimum degree 2. Let L*

_{1}

*,…,L*

_{s}

*be the 2-special components of G. Then we have the following properties*:

- 1.
*There exists a set of edges*\(Q = \bigl \{\{u_{i}, v_{i}\} \mid 1 \leq i \leq s\bigr \}\)*such that {u*_{i}*,v*_{i}*}∈E, u*_{i}*,v*_{i}*∈L*_{i}*, and neither u*_{i}*nor v*_{i}*are connected to any vertex outside L*_{i}. - 2.
*The graph*\(G^{\prime } = G - Q\)*contains exactly the same connected components as G*. - 3.
*Let*\(S = \bigl \{\{u_{i}, v_{i+1}\} \mid 1 \leq i \leq s\bigr \}\)*, where arithmetic is modulo s. Then the graph*\(\tilde G = G - Q + S\)*is 2-edge-connected*.

*Proof 18*

Every 2-special component is 2-edge-connected. Consider any 2-special component *L*_{i} of *G*. We have cut_{G}(*L*_{i})≤1 by definition. If cut_{G}(*L*_{i})=0, then *L*_{i} contains at least three vertices since *G* has minimum degree 2. Hence, the existence of an edge {*u*_{i},*v*_{i}}∈*E* with *u*_{i},*v*_{i}∈*L*_{i} follows. If cut_{G}(*L*_{i})=1, then there is one vertex *x*_{i} that connects *L*_{i} to the rest of the graph. This vertex must be incident to at least two other vertices of *L*_{i} as *L*_{i} is 2-edge-connected. Now a similar argument as for the case cut_{G}(*L*_{i})=0 applies. This proves Item (1).

Since every 2-special component is 2-edge-connected, removal of *Q* does not cause any 2-special component to split. Thus, we have Item (2).

Let us now prove Item (3). The graph \(\tilde G\) is connected: any two connected components of *G*, which are still connected in \(G^{\prime }\), contain 2-special components *L*_{i} and *L*_{j}, respectively. These are connected via a path that passes through *u*_{i},*v*_{i+1},*u*_{i+1},…,*u*_{j−1},*v*_{j}. We have to show that \(\tilde G\) remains connected after the removal of any edge.

First, if we remove an edge {*u*_{i},*v*_{i+1}}∈*S*, then we still have a path from *u*_{i} to *v*_{i+1} via *v*_{i},*u*_{i−1},*v*_{i−1},…,*v*_{i+2},*u*_{i+1}. Second, if we remove a bridge edge *e*={*x*,*y*} of *G* (a bridge edge of a graph is an edge whose removal increases the number of connected components), then there still must exist a path from *x* to some *u*_{i} that does not visit *y*. Similarly, there must exist a path from *y* to some *u*_{j} that does not visit *x*. Now *u*_{i} and *u*_{j} are connected as in the first case. Third, if we remove any other edge *e*={*x*,*y*} of \(\tilde G\), then *x* and *y* belong to the same 2-edge-connected component *C* of *G*. If *C* = *L*_{i} is 2-special, then there is a path from *x* to *y* in *G*−*e*. If this path uses {*u*_{i},*v*_{i}}, we can reroute it via *v*_{i+1},*u*_{i+1},…,*v*_{i−1},*u*_{i−1} to obtain a path in \(\tilde G\). If this path does not use {*u*_{i},*v*_{i}}, then it still exists in \(\tilde G\). If *C* is not equal to a 2-special component, then *C* is a 2-edge-connected component of \(\tilde G\) and, thus, remains connected after removal of *e*. □

### 3.2 Algorithm and Analysis

*M*

*i*

*n*-

*d*

*R*

*e*

*g*-

*k*

*E*

*d*

*g*

*e*(Algorithm 2) starts with any

*d*-factor

*F*

_{0}without requiring connectivity. Then it iteratively uses a subroutine (Algorithm 3) that increases the connectivity.

We analyze correctness and approximation ratio using a series of lemmas.

**Lemma 3.17**

*Let k≥1 be arbitrary, and let p∈{0,2,3,4,…,k−1,k}. Let F*_{p}*be computed by Algorithm 2. Then F*_{p}*is d-regular and p-edge-connected.*

*Proof 19*

By construction of *F*_{0} and *F*_{2},…,*F*_{k}, all these graphs are *d*-regular. The graph *F*_{2} is 2-edge-connected by Lemma 3.16 or *F*_{0} was already 2-edge-connected. Now assume that the lemma holds for some *p*−1 for *p*≥3. We know that *F*_{p−1} is (*p*−1)-edge-connected and *d*-regular by induction hypothesis.

*F*

_{p−1}is already

*p*-edge-connected. In this case,

*F*

_{p}=

*F*

_{p−1}(line 16). Or

*F*

_{p−1}is not

*p*-edge-connected. Then we apply Algorithm 3. By Lemma 3.11,

*F*

_{p}is

*p*-edge-connected. All degrees are maintained. Thus,

*F*

_{p}is

*d*-regular. □

In our approximation algorithm, we use Christofides’ algorithm [29, Section 2.4] to compute TSP tours. In order to analyze the approximation ratio and to achieve a constant approximation for all *k*, we exploit a result that Fukunaga and Nagamochi [8] attributed to Goemans and Bertsimas [12] and Wolsey [30]. It relates the weight of the tour computed by Christofides’ algorithm to the objective value of the relaxation of the integer linear program for *k*-edge-connected graphs of minimum weight. Fukunaga and Nagamochi state the following result only for the case *k*=2. We obtain the result below that we need for our purposes by scaling the right-hand side of their linear program by a factor of *k*/2.

**Lemma 3.18** (Fukunaga, Nagamochi [8, Theorem 2])

*Let T be the TSP tour obtained from Christofides’ algorithm. Then*\(w(T) \leq \frac 3k \cdot w(\text {OptE}^{k})\).

We also need the following lemma. (Otherwise, we have to replace Christofides’ algorithm by the spanning tree heuristic for the case of *k*=1.)

**Lemma 3.19**

*Let T be the TSP tour obtained from Christofides’ algorithm. Then w(T)≤2⋅w(MST).*

*Proof 20*

The weight *w*(*T*) can be bounded from above by the sum of an MST plus the weight of a minimum-weight perfect matching on the odd-degree nodes of this tree. The weight of this minimum-weight perfect matching can be bounded from above by the weight of the MST using the triangle inequality. □

**Lemma 3.20**

*If, in Algorithm 2, we enter line 14 and call Algorithm 3, then*

*Proof 21*

*Q*,

*S*,

*T*, and

*T*

^{′}be as in the corresponding call of Algorithm 3. We have

*w*(

*F*

_{p}) =

*w*(

*F*

_{p−1})−

*w*(

*Q*) +

*w*(

*S*). By construction, the triangle inequality, Lemma 3.18, and \(w(\text {OptE}^{k}) \leq w(\text {optEF}_{d}^{k})\), we have

*w*({

*u*

_{i},

*v*

_{i+1})≤

*w*({

*u*

_{i},

*u*

_{i+1}}) +

*w*({

*u*

_{i+1},

*v*

_{i+1}}), we have \(w(S) \leq w(T^{\prime }) + w(Q)\). The overall weight added is

*w*(

*S*)−

*w*(

*Q*), thus at most \(w(T^{\prime })\). Hence, the lemma holds. □

**Lemma 3.21**

*In Algorithm 2, we have*\(w(F_{2}) \leq w(F_{0}) + \frac 3k \cdot w(\text {optEF}_{d}^{k})\).

*Proof 22*

The proof is almost identical to the proof of Lemma 3.20. □

**Lemma 3.22**

*If Algorithm 2 calls Algorithm 3 q times, then*

*Proof 23*

The lemma follows by immediately applying Lemma 3.20. □

**Theorem 3.23**

*For k≥1 and d≥2⌈k/2⌉, Algorithm 2 is a polynomial-time approximation algorithm for*

*M*

*i*

*n*-d

*R*

*e*

*g*-k

*E*

*d*

*g*

*e*. It achieves an approximation ratio of

2.5 for even d,

\(4 - \frac 3k\) for odd d and k≥2, and

3 for odd d and k=1.

*Proof 24*

First, let *d* be even. We can restrict ourselves to consider even *k* as discussed in Section 1.1.2. Algorithm 2 calls Algorithm 3 at most *k*/2−1 times as every call increases the connectivity by at least two. The approximation ratio follows from Lemmas 3.21 and 3.22 and \(w(F_{0}) \leq w(\text {optEF}_{d}^{k})\).

Second, let *d* be odd and *k*≥2. We need at most *k*−2 calls of Algorithm 3 to obtain a *k*-edge-connected *d*-factor. Thus, we obtain \(w(F_{k}) \leq \frac {3k-6}k \cdot w(\text {optEF}_{d}^{k}) + w(F_{2}) \leq \bigl (4 - \frac 3k\bigr ) \cdot w(\text {optEF}_{d}^{k})\) by Lemmas 3.21 and 3.22.

Finally, consider odd *d* and *k*=1. In this case, the approximation ratio follows from Lemma 3.19. (Lemma 3.20 yields a worse bound for this case.) □

Algorithm 2 works also for the case of even *d* = *k*, but there exists already an approximation algorithm with a ratio of \(2+ \frac 1k\) for this special case [1].

*Remark 3.24*

We observe that even for *M**i**n*-*d**R**e**g*-1*E**d**g**e* for odd *d*, Algorithm 2 always outputs a 2-edge-connected graph that weighs at most \(3 \cdot w(\text {OptEF}_{d}^{1})\). This limits the approximation ratio of the approximation algorithm as there are instances with \(3 \cdot w(\text {OptEF}_{d}^{1}) = w(\text {OptEF}_{d}^{2})\) (see Proposition 3.5 below). Directly computing a 1-edge-connected solution might result in an improved approximation ratio, but we do not see how to achieve this.

**Proposition 3.25**

*For every odd d≥3, there are instances with*\(3 \cdot w(\text {OptEF}_{d}^{1}) = w(\text {OptEF}_{d}^{2})\).

*Proof 25*

The set of vertices of the instance consists of a vertex *v* plus *d* sets *V*_{1},…,*V*_{d} that consist of *d*+2 vertices each. We set the distance of *v* to each of the other vertices equal to 1. The distance between each pair of vertices from the same set *V*_{i} is 0. Finally, the distance between all pairs of vertices from different sets *V*_{i} and *V*_{j} is 2. The triangle inequality is satisfied.

An optimal connected *d*-factor connects *v* to one vertex of each *V*_{i}. Since each *V*_{i} has an odd number of vertices and *d* is odd as well, we can complete the connected *d*-factor without any further cost. Thus, the total cost is *d*.

An optimal 2-edge-connected *d*-factor has a weight of 3*d*: Because each *V*_{i} has an odd number of vertices and *d* is odd, any 2-edge-connected *d*-factor must have at least three edges leaving each set *V*_{i}. If such an edge *e* is incident with *v*, then we charge its weight to *V*_{i}. The other possibility is that *e* is incident with a vertex from some *V*_{j}, where *j*≠*i*. In this case *e* has a weight of 2 and we charge a weight of 1 to both *V*_{i} and *V*_{j}. The total charge of all sets *V*_{i} equals the total weight of the 2-edge-connected *d*-factor. Since each *V*_{i} is charged at least 3, the total weight of any 2-edge-connected *d*-factor is at least 3*d*. □

## 4 Generalization to Arbitrary Degree Sequences

Both algorithms of Sections 2 and 3 do not exploit *d*-regularity, but only that the degree of each vertex is at least *d*. Thus, we immediately get approximation algorithms for *M**i**n*-*d**G**e**n*-*k**V**e**r**t**e**x* and *M**i**n*-*d**G**e**n*-*k**E**d**g**e*, where we have a degree requirement of at least *d* for each vertex.

For *k*-vertex-connectivity, we require that the minimum degree requirement is at least 2*k*−1. (For minimum degree at least 2*k*, we get a small improvement similarly to Corollary 2.3.) For *k*-edge-connectedness, we require that the minimum degree requirement is at least 2⌈*k*/2⌉.

**Theorem 4.1**

*For k*≥2, *Min*-(2k−1)*G**e**n*-k*V**e**r**t**e**x**can be approximated in polynomial time with an approximation ratio of*\(5 + \frac {2k-2}n + \frac 2k\).

*M**i**n*-(2k)*G**e**n*-k*V**e**r**t**e**x**can be approximated in polynomial time with an approximation ratio of*\(5 + \frac {2k-2}n\).

**Theorem 4.2**

*For k≥2,*\(\mathsf {Min}\text {-}{(2 \lceil \frac k2 \rceil )}\mathsf {Gen}\text {-}k\mathsf {Edge}\)*can be approximated in polynomial time with an approximation ratio of*\(4 - \frac 3k\).

*M**i**n*-2*G**e**n*-1*E**d**g**e**can be approximated in polynomial time with an approximation ratio of 3.*

## 5 Hardness Results

### 5.1 TSP-Inapproximability

In this section, we prove that *Min*-*d**R**e**g*-1*E**d**g**e* cannot be approximated better than *Min*-*T**S**P*.

**Theorem 5.1**

*For every d*≥2, *if**M**i**n*-d*R**e**g*-1*E**d**g**e* can be approximated in polynomial time within a factor of r, then *M**i**n*-*T**S**P**can be approximated in polynomial time within a factor of r.*

*Proof 26*

*M*

*i*

*n*-

*d*

*R*

*e*

*g*-1

*E*

*d*

*g*

*e*can be used to approximate

*M*

*i*

*n*-

*T*

*S*

*P*. Let the instance of

*M*

*i*

*n*-

*T*

*S*

*P*be given by a complete graph

*G*=(

*V*,

*E*) and edge weights

*w*=(

*w*

_{e})

_{e∈E}that satisfy the triangle inequality. Let

*n*=|

*V*|. We construct an instance of

*M*

*i*

*n*-

*d*

*R*

*e*

*g*-1

*E*

*d*

*g*

*e*as follows: The instance consists of a complete graph \(H = (V^{\prime }, E^{\prime })\). Here \(V^{\prime } = \bigcup _{v \in V} V_{v}\), where

*V*

_{v}={

*v*

_{1},

*v*

_{2},…,

*v*

_{d+1}}, i.e.,

*H*contains (

*d*+1)⋅

*n*vertices. We assign edge weights \(\tilde w\) as follows:

\(\tilde w_{\{v_{i}, v_{j}\}} = 0\) for all

*v*∈*V*,*i*≠*j*,\(\tilde w_{\{u_{i}, v_{j}\}} = w_{\{u,v\}}\) for all

*u*≠*v*,*i*and*j*.

*T*of

*G*maps to a connected

*d*-factor

*R*of

*H*of the same weight: We give

*T*an orientation. For an edge from

*u*to

*v*in

*T*, we include {

*u*

_{1},

*v*

_{2}} in

*R*. Adding all edges except {

*v*

_{1},

*v*

_{2}} to

*R*within each

*V*

_{v}yields a connected

*d*-factor

*R*. Clearly, \(\tilde w(F) = w(T)\).

Now assume that we have a connected *d*-factor *R* of *H*. We claim that we can construct a TSP tour *T* of *G* with \(w(T) \leq \tilde w(R)\). We construct a multiset \(T^{\prime }\) of edges of *G* as follows: For each edge {*u*_{i},*v*_{j}} of *R*, if *u*≠*v*, we add an edge {*u*,*v*} to \(T^{\prime }\). Otherwise, if *u* = *v*, we ignore the edge. The sum of the degrees in *R* of all vertices in each set *V*_{v} is equal to (*d*+1)*d* and is therefore even. Thus, for each *v*, the number of edges leaving *V*_{v} in *R*, which equals the number of edges incident to *v* in \(T^{\prime }\) by construction, is even as well. Since *R* is connected, the multigraph \(G^{\prime }=(V,T^{\prime })\) is connected as well. By construction, \(w(T^{\prime }) = \tilde w(R)\). Since \(G^{\prime }\) is connected and all its vertices have even degree, \(G^{\prime }\) is Eulerian. Therefore, we can obtain a TSP tour *T* from \(T^{\prime }\) by taking shortcuts. By the triangle inequality, \(w(T) \leq w(T^{\prime }) = \tilde w(R)\). □

The same construction as in the proof of Theorem 5.1 yields the same inapproximability result for *M**i**n*-*d**R**e**g*-2*E**d**g**e*.

*M**i**n*-*T**S**P* is *A**P**X*-hard [25]. Furthermore, the reduction from *M**i**n*-*T**S**P* to *M**i**n*-*d**R**e**g*-1*E**d**g**e* (and also to *M**i**n*-*d**R**e**g*-2*E**d**g**e*) is in fact an L-reduction [24] (see also Shmoys and Williamson [29, Section 16.2]). This proves the *A**P**X*-hardness of *M**i**n*-*d**R**e**g*-1*E**d**g**e* and *M**i**n*-*d**R**e**g*-2*E**d**g**e* for all *d*≥2.

### 5.2 Hardness for Growing *d*

In this section, we generalize the *N**P*-hardness proof by Cheah and Corneil [2] for the decision problem if a graph contains a connected *d*-factor to the case that *d* grows with *n*. We also extend Theorem 5.1 and the *A**P**X*-hardness to growing *d*.

*d*-expansion of a vertex

*v*, which is obtained as follows:

- 1.
We construct a gadget

*G*_{d+1}by removing a matching of size \(\lceil \frac {d}{2}\rceil -1\) from a complete graph on*d*+1 vertices. - 2.
We connect each vertex whose degree has been decreased by one to

*v*.

The reduction itself takes a graph *G* for which we want to test if *G* contains a Hamiltonian cycle and maps it to a graph *R*_{d}(*G*) as follows: For even *d*, *R*_{d}(*G*) is the graph obtained by performing a *d*-expansion for every vertex of *G*. For odd *d*, the graph *R*_{d}(*G*) is obtained by doing the following for each vertex *v* of *G*: add vertices *u*_{1},*u*_{2},…,*u*_{d−2}; connect *v* to *u*_{1},…,*u*_{d−2}; perform a *d*-expansion on *u*_{1},…,*u*_{d−2}. We have that *G* contains a Hamiltonian cycle if and only if *R*_{d}(*G*) contains a connected *d*-factor.

We note that *R*_{d}(*G*) has (*d*+2)⋅*n* vertices for even *d* and Θ(*d*^{2}*n*) vertices for odd *d* and can easily be constructed in polynomial time since *d*<*n*.

**Theorem 5.2**

*For every fixed δ∈[0,1), there is a function d=d(n)=Θ(n*^{δ}) *that maps to even integers such that checking if an n-vertex graph contains a connected d(n)-factor is**N**P*-*hard.*

*For every fixed*\(\delta \in [0, \frac 12)\)*, there is a function d=d(n)=Θ(n*^{δ}) *that maps to odd integers such that checking if an n-vertex graph contains a d(n)-factor is**N**P*-*hard.*

*Proof 27*

We first present the proof for the case that we map to even integers. After that, we briefly point out the difference for odd integers.

Let \(f = f(n) = 2 \lceil n^{\frac {\delta }{1-\delta }} \rceil \) and apply *R* = *R*_{f}(*G*). The graph *R* has *g*(*n*) = *n*⋅(*f*+2) vertices. since *f* is even. We have \(g = {\Theta }(n^{\frac 1{1-\delta }})\). Now we determine *d*. We require *d*(*g*(*n*)) = *f*(*n*). This can be achieved because *g* = *ω*(*n*) is an injective function. From this, *d*=Θ(*n*^{δ}) follows. For natural numbers that are not images of *g*, we interpolate *f* to maintain the growth bound.

Let us now point out the differences for functions *f* mapping to odd integers. In this case, since the reduction for *d* maps to graphs of size Θ(*d*^{2}*n*), we have to choose \(d = {\Theta }(n^{\frac {\delta }{1 - 2\delta }})\). This, however, works only up to *δ*<1/2. □

In the same way as the *N**P*-completeness, the inapproximability can be transferred. The reduction creates graphs of size (*d*+1)⋅*n*. The construction is the same as in Section 5.1, and the proof follows the line of the proof of Theorem 5.2. Here, however, we do not have to distinguish between odd and even *d* for the symmetric variant, as the reduction in Section 5.1 is the same for both cases.

**Theorem 5.3**

*For every fixed δ∈[0,1), there exists a function d=Θ(n*^{δ}) *such that**M**i**n*-d*R**e**g*-1*E**d**g**e* and *M**i**n*-d*R**e**g*-2*E**d**g**e* are *A**P**X*-*hard and cannot be approximated better than**Min*-*TSP*.

Complementing Theorems 5.2 and 5.3, *M**i**n*-*d**R**e**g*-1*E**d**g**e* admits a PTAS for *d*≥*n*/3 and finding a connected *d*-factor can be done in polynomial time for *d*≥*n*/3 [23].

## 6 Conclusions and Open Problems

We conclude this paper with two questions for further research.

First, for edge-connectivity, we require *d*≥2⌈*k*/2⌉. Since there exists an approximation algorithm for *M**i**n*-*k**R**e**g*-*k**E**d**g**e* (for *k*≥2) [1], the only case for which it is unknown if a constant factor approximation algorithm exists is the generalized problem *M**i**n*-*k**G**e**n*-*k**E**d**g**e* for odd values of *k*. We are particularly curious about approximation algorithms for *M**i**n*-1*G**e**n*-1*E**d**g**e*, where we want to find a cheap connected graph with given vertex degrees. To get such algorithms, vertices with degree requirement 1 seem to be bothersome. (This seems to be a more general phenomenon in network design, as, for instance, the approximation algorithms by Fekete et al. [7] for bounded-degree spanning trees and by Fukunaga and Nagamochi [8] for *k*-edge-connected subgraphs with multiple edges both require that the minimum degree requirement is at least 2.) Still, we conjecture that constant factor approximation algorithms exist for these problems as well.

Second, we would like to see constant factor approximation algorithms for *M**i**n*-*d**R**e**g*-*k**V**e**r**t**e**x* for the case *k*+1≤*d*≤2*k*−2 and for the general problem *M**i**n*-*d**G**e**n*-*k**V**e**r**t**e**x* for *k*≤*d*≤2*k*−2. We conjecture that constant factor approximation algorithms exist for these problems.

## Notes

### References

- 1.Chan, Y H, Fung, W S, Lau, L C, Yung, C K: Degree bounded network design with metric costs. SIAM J. Comput.
**40**(4), 953–980 (2011)MathSciNetCrossRefMATHGoogle Scholar - 2.Cheah, F., Corneil, Derek G.: The complexity of regular subgraph recognition. Discret. Appl. Math.
**27**(1–2), 59–68 (1990)MathSciNetCrossRefMATHGoogle Scholar - 3.Cheriyan, J., Vempala, S., Vetta, A.: An approximation algorithm for the minimum-cost
*k*-vertex connected subgraph. SIAM J. Comput.**32**(4), 1050–1055 (2003)MathSciNetCrossRefMATHGoogle Scholar - 4.Cheriyan, J., Vetta, A.: Approximation algorithms for network design with metric costs. SIAM J. Discret. Math.
**21**(3), 612–636 (2007)MathSciNetCrossRefMATHGoogle Scholar - 5.Cornelissen, K., Hoeksma, R., Manthey, B., Narayanaswamy, N S, Rahul, C S: Approximability of connected factors. In: Kaklamanis, C., Pruhs, K. (eds.) Proc. of the 11th Workshop on Approximation and Online Algorithms (WAOA 2013), volume 8447 of Lecture Notes in Computer Science, pp 120–131. Springer (2014)Google Scholar
- 6.Czumaj, A., Lingas, A.: Minimum
*k*-connected geometric networks. In: Kao, M.-Y. (ed.) Encyclopedia of Algorithms, pp 536–539. Springer (2008)Google Scholar - 7.Fekete, S. P., Khuller, S., Klemmstein, M., Raghavachari, B., Young, N. E.: A network-flow technique for finding low-weight bounded-degree spanning trees. J. Algo.
**24**(2), 310–324 (1997)Google Scholar - 8.Fukunaga, T., Nagamochi, H.: Network design with edge-connectivity and degree constraints. Theory Comput. Syst.
**45**(3), 512–532 (2009)MathSciNetCrossRefMATHGoogle Scholar - 9.Fukunaga, T., Nagamochi, H.: Network design with weighted degree constraints. Discret. Optim.
**7**(4), 246–255 (2010)MathSciNetCrossRefMATHGoogle Scholar - 10.Fukunaga, T., Ravi, R.: Iterative rounding approximation algorithms for degree-bounded node-connectivity network design. In: Proc. of the 53rd Ann. IEEE Symp. on Foundations of Computer Science (FOCS), pp. 263–272. IEEE Computer Society (2012)Google Scholar
- 11.Garey, M. R., Johnson, D. S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman and Company (1979)Google Scholar
- 12.Goemans, M. X., Bertsimas, D.: Survivable networks, linear programming relaxations and the parsimonious property. Math. Program.
**60**, 145–166 (1993)MathSciNetCrossRefMATHGoogle Scholar - 13.Kammer, F., Täubig, H.: Connectivity. In: Brandes, U., Erlebach, T. (eds.) Network Analysis: Methodological Foundations, volume 3418 of Lecture Notes in Computer Science, pp 143–177. Springer (2005)Google Scholar
- 14.Khandekar, R., Kortsarz, G., Nutov, Z.: On some network design problems with degree constraints. J. Comput. Syst. Sci.
**79**(5), 725–736 (2013)MathSciNetCrossRefMATHGoogle Scholar - 15.Khuller, S., Raghavachari, B.: Graph connectivity. In: Kao, M.-Y. (ed.) Encyclopedia of Algorithms, pp 371–373. Springer (2008)Google Scholar
- 16.Khuller, S., Vishkin, U.: Biconnectivity approximations and graph carvings. J. ACM
**41**(2), 214–235 (1994)MathSciNetCrossRefMATHGoogle Scholar - 17.Kortsarz, G., Nutov, Z.: Approximating node connectivity problems via set covers. Algorithmica
**37**(2), 75–92 (2003)MathSciNetCrossRefMATHGoogle Scholar - 18.Lau, L. C., Naor, J., Salavatipour, M. R., Singh, M.: Survivable network design with degree or order constraints. SIAM J. Comput.
**39**(3), 1062–1087 (2009)MathSciNetCrossRefMATHGoogle Scholar - 19.Lau, L. C., Singh, M.: Additive approximation for bounded degree survivable network design. SIAM J. Comput.
**42**(6), 2217–2242 (2013)MathSciNetCrossRefMATHGoogle Scholar - 20.Lau, L C, Zhou, H: A unified algorithm for degree bounded survivable network design. In: Lee, J., Vygen, J. (eds.) Proc. of the 17th Int. Conf. on Integer Programming and Combinatorial Optimization (IPCO), volume 8494 of Lecture Notes in Computer Science, pp 369–380. Springer (2014)Google Scholar
- 21.Lovász, L, Plummer, M D.: Matching Theory, volume 121 of North-Holland Mathematics Studies. Elsevier (1986)Google Scholar
- 22.Manthey, B, Waanders, M: Approximation algorithms for
*k*-connected graph factors. In: Sanitá, L., Skutella, M (eds.) Proc. of the 13th Workshop on Approximation and Online Algorithms (WAOA 2015), volume 9499 of Lecture Notes in Computer Science, pp 1–12. Springer (2016)Google Scholar - 23.Narayanaswamy, N. S., Rahul, C. S.: Approximation and exact algorithms for special cases of connected
*f*-factors. Proc. of the 10th Int. Computer Science Symp. in Russia (CSR), volume 9139 of Lecture Notes in Computer Science, pp. 350–363. Springer (2015)Google Scholar - 24.Papadimitriou, C. H., Yannakakis, M: Optimization approximation, and complexity classes. J. Comput. Syst. Sci.
**43**(3), 425–440 (1991)MathSciNetCrossRefMATHGoogle Scholar - 25.Papadimitriou, C. H., Yannakakis, M.: The traveling salesman problem with distances one and two. Math. Oper. Res.
**18**(1), 1–11 (1993)MathSciNetCrossRefMATHGoogle Scholar - 26.Singh, M., Lau, L. C.: Approximating minimum bounded degree spanning trees to within one of optimal. J. ACM
**62**(1), 1,1–1,19 (2015)MathSciNetCrossRefGoogle Scholar - 27.Tutte, W. T.: A short proof of the factor theorem for finite graphs. Can. J. Math.
**6**, 347–352 (1954)MathSciNetCrossRefMATHGoogle Scholar - 28.West, D B.: Introduction to Graph Theory, 2nd edn. Prentice-Hall (2001)Google Scholar
- 29.Williamson, DP., Shmoys, DB.: The Design of Approximation Algorithms. Cambridge University Press (2011)Google Scholar
- 30.Wolsey, L. A.: Heuristic analysis, linear programming and branch and bound. In: Rayward-Smith, V. J. (ed.) Combinatorial Optimization II, volume 13 of Mathematical Programming Studies, pp 121–134. Springer (1980)Google Scholar

## Copyright information

**Open Access**This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.