Correlation Clustering and Two-Edge-Connected Augmentation for Planar Graphs

We study two problems. In correlation clustering, the input is a weighted graph, where every edge is labelled either ⟨+⟩\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\langle +\rangle $$\end{document} or ⟨-⟩\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\langle -\rangle $$\end{document} according to whether its endpoints are in the same category or in different categories. The goal is to produce a partition of the vertices into categories that tries to respect the labels of the edges. In two-edge-connected augmentation, the input is a weighted graph and a subset R of edges of the graph. The goal is to produce a minimum weight subset S of edges of the graph, such that for every edge in R, its endpoints are two-edge-connected in R∪S\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$R\cup S$$\end{document}. In this paper, we study these problems under the restriction that the input graph must be planar. We give an approximation-preserving reduction from correlation clustering on planar graphs to two-edge-connected augmentation on planar graphs. We give a polynomial-time approximation scheme (PTAS) for the latter problem, yielding a PTAS for the former problem as well. The approximation scheme employs brick decompositions, which have been used in previous approximation schemes for planar graphs, but the way it uses brick decompositions is fundamentally different from previous uses.


Introduction
An α-approximation algorithm for a minimization problem is an algorithm that, given any instance, outputs a solution whose cost is at most α times the optimal cost.We consider only polynomial-time algorithms.
An approximation scheme for a minimization problem is a family of approximation algorithms; for each > 0, there is a 1 + -approximation algorithm in the family.An approximation scheme is a polynomial-time approximation scheme (a.k.a.PTAS) if every algorithm in the family is a polynomial-time algorithm.
We consider two problems in planar graphs: correlation clustering and two-edgeconnected augmentation.As we shall show, they are related via planar duality.

Correlation Clustering
Correlation clustering is defined as follows.The input is a graph each of whose edges is labeled either + or − .A + edge represents evidence that its endpoints belong to the same cluster, and a − edge represents evidence that its endpoints belong to different clusters.Each edge has a non-negative weight reflecting the strength of the evidence.The goal is to find a partition of the vertices into clusters that minimizes the total weight of the edges inconsistent with that evidence.See Fig. 1.
This problem was first considered by Ben-Dor, Shamir, and Yakhini [10], motivated by some questions in computational biology.Bansal, Blum, and Chawla [7] also independently formulated and considered this problem, motivated by machine learning problems concerning document classification.This problem on general graphs is APX-hard [7,15,19].
Bansal, Blum, and Chawla [7] studied the problem in an unweighted complete graph, i.e., every pair of vertices has a label of either + or − .They gave a constantfactor approximation algorithm where the constant is large.Charikar, Guruswami, and Wirth [15] gave a 4-approximation algorithm and showed APX-hardness.Chawla, Makarychev, Schramm, and Yaroslavtsev [16] designed a (2.06 − )-approximation for some fixed > 0. The current best approximation ratio is 1.994 + due to Cohen-Addad, Lee, and Newman [17].In the weighted setting, for each pair of vertices, we require that the weight of the + edge and the weight of the − edge sum to one.Again, Bansal, Blum, and Chawla [7] gave a constant-factor approximation algorithm where the constant is large.Ailon, Charikar, and Newman [1] gave an algorithm that achieves expected approximation ratio 5.If in addition the weights obey the triangular inequality, they showed that the same algorithm achieves expected approximation ratio 2. In this special setting, an algorithm of worst case approximation ratio 3 was obtained by Gionis, Mannila, and Tsaparas [24].
Fig. 1 In this example, the instance is an unweighted grid graph.The + edges are solid, and the − edges dashed.Dotted lines indicate an optimal partition of vertices with inconsistent edges e 1 , e 2 , and e 3 Giotis and Guruswami [25] studied the variant when the number of clusters is limited to a constant.They showed that both minimizing disagreement and maximizing agreement admit a PTAS and are NP-hard.
Mathieu and Schudy [37] studied the problem with noisy input, where the similarity information of each vertex pair is corrupted with some probability.

Correlation Clustering in Planar Graphs
In this paper, we study the case when the graph is planar.The motivation for this case comes from image segmentation, which is the process of partitioning a digital image into segments.Each segment is a region of the image, and the segments are supposed to correspond to meaningful parts of the scene.Often the image is represented by a two-dimensional grid graph whose vertices correspond to pixels.Sometimes image segmentation is preceded by a more rudimentary form of partitioning into regions, called superpixels [2,36]; if so, the resulting graph is no longer a grid graph but remains a planar embedded graph.
Researchers [3-5, 31, 41] have studied the use of correlation clustering as a criterion for image segmentation.This motivates our study of the approximability of correlation clustering in planar graphs.Bachrach et al. [6] showed that the problem remains NPhard under this restriction. 1Prior to our work, the best performance guarantee proved for a polynomial-time algorithm was a constant, given by Demaine et al. [19] for any family of graphs excluding a fixed minor (e.g. the family of planar graphs).
Fig. 2 2-edge-connected augmentation and related problems.Arrows mean that the head problem is a special case of the tail problem.Since tree augmentation is APX-hard, 2-edge-connected augmentation is also APX-hard.Since survivable network design has a 2-approximation algorithm, 2-edge-connected augmentation also has a 2-approximation algorithm

Two-Edge-Connected Augmentation
In the field of telecommunications, an important task is to ensure that the network is resilient against link failures.Since link failures are rare, it is often sufficient for the network to be resilient against single-link failures.This motivated the study of twoedge-connectivity problems.We say two vertices u and v in a graph G are two-edgeconnected if G contains two edge-disjoint u-to-v paths.Thus the u-to-v connection in G is resilient against single-link failures if and only if u-to-v are two-edge-connected in G.
We define the two-edge-connected augmentation problem as follows.The input is a two-edge-connected graph G = (V , E) (possibly with parallel edges) with nonnegative edge-weights and a subset R of edges of the graph.The goal is to find a minimum-weight subset S of E − R such that for every edge uv ∈ R, u and v are twoedge-connected in the subgraph R ∪ S. In this paper, we study two-edge-connected augmentation in planar graphs (Fig. 2).
The well-studied tree augmentation problem is the special case when R is a spanning tree of G. Frederickson and Ja'Ja' [22] gave a polynomial-time 2-approximation algorithm, see also [23,29].Kortsarz, Krauthgamer, and Lee [35] showed that tree augmentation is APX-hard.This implies that two-edge-connected augmentation is also APX-hard.
In the problem of survivable network design, the input is a graph G with nonnegative edge-weights, and a requirement r u,v ∈ Z for each pair (u, v) of vertices, and the goal is to find a minimum-weight subgraph of G such that, for each pair (u, v), the subgraph has at least r u,v edge-disjoint paths between u and v.For the special case where every requirement is at most two (which is a generalization of the twoedge-connected augmentation problem), Klein and Ravi [34] gave a 3-approximation algorithm.For the more general problem in which the requirements are unlimited, after some results were obtained with worse approximation ratios, [26,27,40] Jain [27] gave a 2-approximation algorithm.In Sect.3.1, we discuss the simple reduction from two-edge-connected augmentation to this problem.
A closely related problem is two-edge-connected spanning subgraph.Given a graph G with edge-weights, the goal is to find a minimum-weight subgraph of G in which every pair of vertices of G is two-edge-connected.This problem in general graphs was shown to be Max-SNP-hard by Czumaj and Lingas [18].Frederickson and Ja'Ja' [22] gave a 3-approximation algorithm.The approximation ratio was improved to 2 (and 3/2 for unweighted graphs) by Khuller and Vishkin [30], and to 5/4 by Jothi, Raghavachari, and Varadarajan [28].Under the restriction that the input graph G is planar, Berger and Grigni [11] gave a PTAS.One might think that this would lead to a PTAS for two-edge-connected augmentation, but this is not the case; note that the weight of a two-edge-connected augmentation can be much smaller than the weight of a two-edge-connected spanning subgraph.
A generalization of two-edge connected spanning subgraph is the problem of twoedge-connected Steiner subgraph.The input is a graph with edge-weights and a subset Q ⊆ V of terminals, and the goal is to find a minimum-weight subgraph of G in which every pair of vertices of Q is two-edge-connected.This problem can be reduced to survivable network design with requirements no greater than two.Under the restriction that the input graph is planar and contains two copies of each edge, Borradaile and Klein [13] gave a PTAS.However, their approach does not work for two-edge-connected augmentation; indeed, as we discuss later, the structure property in [13] does not hold for two-edge-connected augmentation.
Another related problem is the two-edge-connected subgraph augmentation.The input is a graph with edge-weights, a connected subgraph R, and for each pair of vertices (u, v) in R, a requirement r u,v ∈ Z.The goal is find a minimum weight subgraph S such that the connectivity in R ∪ S between every pair (u, v) of vertices in R is at least r u,v .When the graph is planar and when r u,v ≤ 2 for all pairs (u, v) in R, this problem can be solved in polynomial time [38].

Our Results
First we show that, in planar graphs, correlation clustering can be reduced to two-edgeconnected augmentation (Theorem 1.1).The proof of Theorem 1.1 is elementary and is based mainly on planar duality.Theorem 1.1 There is a polynomial-time approximation-preserving reduction from correlation clustering in weighted planar graphs to two-edge-connected augmentation in weighted planar graphs.
Next, we give a PTAS for two-edge-connected augmentation when the graph is planar (Theorem 1.2).The approximation scheme in Theorem 1.2 employs brick decompositions, which have been used in previous approximation schemes for planar graphs, but the way it uses brick decompositions is fundamentally different from previous uses.Theorem 1.2 For every > 0, there is a polynomial-time (1 + )-approximation algorithm for two-edge-connected augmentation in weighted planar graphs.
As a corollary of Theorems 1.1 and 1.2, we immediately obtain a PTAS for correlation clustering (Theorem 1.3).

Theorem 1.3
For every > 0, there is a polynomial-time (1 + )-approximation algorithm for correlation clustering in weighted planar graphs.

Remark
In practice, in addressing correlation clustering in planar graphs, one might use the reduction of Theorem 1.1 together with an alternative algorithm for two-edgeconnected augmentation, e.g.Jain's algorithm.

Notation and Definitions
Let G be a graph and let weight(•) be a function assigning nonnegative weights to its edges.Let V [G] (or simply V ) be its vertex set, and let E[G] (or simply E) be its edge set.We allow G to have parallel edges.For a subset of edges H ⊆ E[G], we identify H with the subgraph induced by the edges from H .The weight of H is defined to be e∈H weight(e).For a subset of vertices Let E 1 and E 2 be two subsets of E. We use E 1 ⊕ E 2 to denote their symmetric difference, i.e the set of edges e such that e belongs to exactly one of E 1 and E 2 .
A plane graph is a planar graph together with a planar embedding.We use the phrases plane graph and planar graph interchangeably.Corresponding to a plane graph G is another plane graph, the dual2 of G. (In this context, G is then referred to as the primal.)The edges of G and its dual correspond one-to-one, and in this paper we identify corresponding edges.It is well-known that the edges of a cut δ(U ) in G form a (possibly nonsimple) cycle in the dual of G.
We recall the definitions of two related optimization problems.
In the Steiner tree problem, we are given a weighted planar graph G = (V , E) and a set Q ⊆ V , and the goal is to find a minimum-weight connected subgraph connecting all of Q.
In the Steiner forest problem, we are given a weighted planar graph G = (V , E) and a set D of demands (s, t) ∈ V 2 , and the goal is to find a minimum-weight forest F of G such that, for every demand (s, t) ∈ D, s and t are connected in F.
For a given optimization problem, we use O PT (I) to denote the weight of an optimal solution for this problem on the instance I.The parameter I is omitted when it is clear from the context.

Organization
In Sect.2, we show the reduction from correlation clustering to two-edge-connected augmentation in planar graphs (Theorem 1.1).
In Sect.3, we review various techniques for approximation schemes in planar graphs.In Sects.3.1 and 3.2, we review the techniques of prize-collecting partition [9] and brick decomposition [14], respectively.In Sect.3.3, we survey the framework of approximation schemes based on brick decomposition.In Sect.3.4, we present the boundary-doubling operation, which is used in two-edge-connected augmentation.In Sect.3.5, we review the sphere-cut decomposition technique [21].
Section 4 contains the main contribution of this paper.In this section, we design an approximation scheme for two-edge-connected augmentation in planar graphs (The-orem 1.2).We describe a preprocessing step in Sect.4.1.We give high-level ideas of the approximation scheme in Sect.4.2.The difficulty in using the brick decomposition is that the structure property on bricks that was used to design previous approximation schemes does not hold for two-edge-connected augmentation.Hence the novelty of our work: we show a new structure property on bricks in Sect.4.3.Using this property, we give a dynamic program to compute a near-optimal solution in Sect.4.4.We complete the analysis of the approximation scheme in Sect.4.5.

Reduction from Clustering to Augmentation
In this section, we prove Theorem 1.1.
We define an intermediate problem as follows.The input is a graph G 1 with edge weights and a set R of edges.The goal is to find a minimum-weight subset S 1 of edges such that R ⊕ S 1 is a collection of two-edge-connected components in G 1 .
Let G 0 be a plane graph with edge-weights and edge-labels and let R be a set of edges.We interpret G 0 and R as forming an instance of correlation clustering; we interpret R as the set of edges labeled − .A set S 0 of edges of G 0 is a feasible solution if there is a clustering of the vertices of G 0 such that the labeling of edges not in S 0 agrees with the clustering, i.e. such that, for every edge uv not in S 0 , uv is labeled − if and only if u and v are in different clusters.
Let G 1 be the planar dual of G 0 .As stated in Sect.1.5, we identify corresponding edges of primal and dual graphs.Thus R is a subset of the edges of G 1 .Therefore G 1 and R form an instance of the intermediate problem.Let OPT 1 be the minimum weight of a solution.
Let G 2 be the edge-weighted plane graph obtained from G 1 as follows: for each edge e ∈ R, add a copy e of e, and assign e the same weight as e.We interpret G 2 and R as an instance of two-edge-connected augmentation.Let OPT 2 be the minimum weight of a solution.

First Stage
The first stage of the reduction of Theorem 1.1 is captured by the following lemma.

Lemma 2.1 A set of edges of G 0 is a minimal feasible solution for the instance (G 0 , R) of correlation clustering iff it is a feasible solution for the instance (G 1 , R) of the intermediate problem.
Proof It suffices to show that a set of edges S ⊆ E[G 0 ] is the disagreements of some clustering in G 0 if and only if R ⊕ S is a collection of two-edge-connected components in G 1 .
( ⇒) Let {V i } i be a clustering of G 0 , and let S be the set of edges e such that the labeling of e disagrees with the clustering, i.e. such that e is in R iff the endpoints of e belong to the same cluster.Then R ⊕ S = i δ(V i ).By planar duality, every simple cycle of a planar graph corresponds to a minimal cutset in the dual of that graph, and Fig. 3 In this example, G 0 is represented by the grid graph.In its dual, the subgraph R ⊕ S 1 is represented by the dotted edges.These edges separate the plane into four faces, which define four clusters of the vertices of G 0 (indicated by the gray areas) vice versa.Thus for each cluster V i the edges of δ(V i ) form a cycle in G 1 .Therefore the edges of i δ(V i ), i.e.R ⊕ S 1 , consist of a collection of two-edge-connected components in G 1 .
(⇐ ) Suppose the edges of R ⊕ S consist of a collection of two-edge-connected components in G 1 .For every face F of the subgraph of G 1 formed by R ⊕ S, define Again by planar duality, R ⊕ S = F δ(V F ). (See Fig. 3.) Therefore S is the set of edges e such that e is in R iff the endpoints of e belong to the same cluster.

Second Stage
The following two lemmas refers to the construction of G 2 described above.

Lemma 2.2 Consider the instance (G 1 , R) of the intermediate problem, and let S 1 be a feasible solution. Define a subset of edges of the graph G 2 as follows:
Proof Let e be any edge of R. If e is in S 1 then its copy e is in S 2 , so in the graph R ∪ S 2 the endpoints of e are connected by e and by e , two edge-disjoint paths.Suppose e is not in S 1 ; then e is in R ⊕ S 1 , so e lies in some two-edge-connected component of R ⊕ S 1 .Therefore the endpoints of e are connected by two edge-disjoint paths in R ⊕ S 1 .One such path is e itself; let P be another such path.Every edge of P is either in R or in S 1 − R; in either case, the edge of P is in R ∪ S 2 .
R) of the two-edge-connected augmentation problem, and let S 2 be any minimal feasible solution.Define a subset of edges of G 1 as follows: Assume for a contradiction that e is a bridge in the subgraph.Since S is a two-edge-connected augmentation for (G 2 , R), e cannot belong to R, so e ∈ S 2 .However, in this case S 2 − {e} is also a two-edge-connected augmentation, contradicting the minimality of S 2 .This proves the claim.
Because S 2 is minimal, it contains no edges in R, but it could contain copies e of edges e in R. Let e 1 , . . ., e k be the edges in R such that S 2 contains e 1 , . . ., e k .For i = 1, . . ., k, let A i = S 2 −{e 1 , . . ., e i } ∪ {e 1 , . . ., e i }.
We show by induction that A i is a feasible solution to the instance (G 2 , R) of the intermediate problem, i.e. that A i ⊕ R consists of two-edge-connected components.
Because A 0 ∩ R = ∅, the above claim implies that the basis holds.Consider i ≥ 1.By minimality of S 2 , the endpoints of e i lie in different two-edge-connected components of S 2 − {e i } and hence in different connected components of S 2 − {e i , e i }, and hence in different connected components of S 2 −{e 1 , e 1 , e 2 , e 2 , . . ., e i , e i }, which is equal to A i ⊕ R. By the inductive hypothesis, A i−1 ⊕ R consists of two-edgeconnected components, from which we infer (see Fig. 4) that the same holds of A i ⊕ R.This completes the induction step.
We have shown that the subgraph A k ⊕ R of G 2 consists of two-edge-connected components.Note that A k equals the set S 1 defined in the lemma statement.Furthermore, because A k contains no edge copies, the subgraph We can now prove Theorem 1.1.Lemma 2.1 shows that correlation clustering in edge-weighted planar graphs can be reduced to the intermediate problem in edgeweighted planar graphs.Lemmas 2.2 and 2.3 show that an instance of the intermediate problem can be transformed in polynomial time into an instance of two-edge-connected augmentation with the same optimum value, and that a solution to the latter instance can be transformed in polynomial time into a solution of equal weight for the former instance.
φ v ← 1/ times the weight of the component corresponding to v 5: Apply PC clustering of [9] on G and {φ v } v , and obtain a forest F 6:

Techniques
In this section, we review various techniques that will be used for designing the approximation scheme.

Prize-Collecting Partition
The prize-collecting partition (PC partition) technique helps to obtain approximation schemes in planar graphs, such as for Steiner forest [9] and multiway cut [8].It was introduced by Bateni, Hajiaghayi, and Marx [9] as a preprocessing step to break the input instance into separate subinstances such that the optimal solution of each subinstance is connected.
In order to apply the PC Partition technique to two-edge-connected augmentation, we first compute a 2-approximate solution to two-edge-connected augmentation based on Jain's algorithm for survivable network design [27].Let (G, R) be an instance of two-edge-connected augmentation.Without loss of generality, we assume that edges from R have weight 0, since a minimal two-edge-connected augmentation for (G, R) cannot contain edges from R. We construct an instance of survivable network design: the graph G remains the same; for every pair of vertices (u, v) ∈ V 2 , r u,v is set to 2 if uv ∈ R and to 0 otherwise.The two problems are equivalent.Since there is a polynomial-time 2-approximation algorithm for survivable network design [27], we then have a polynomial-time 2-approximation algorithm for two-edge-connected augmentation.
The PC partition algorithm for two-edge-connected augmentation is given in Algorithm 1.It is almost identical to that for Steiner forest [9].Using the same argument as for Theorem 3.1 from [9], we obtain the following theorem for two-edge-connected augmentation.

. , T k with the following properties:
• For every edge uv ∈ R, there is some T i containing the edge uv; , where R i is the set of edges uv ∈ R that are in T i .

Brick Decomposition
For non-local problems in weighted planar graphs in which the weight of the optimal solution can be much smaller than the weight of the graph, the brick decomposition technique by Borradaile, Klein, and Mathieu [14] has proved to be quite versatile: a planar embedded subgraph M (called the mortar graph) is selected, and the bricks are the subgraphs of G embedded in the faces of M. This technique has been used for designing approximation schemes for problems such as Steiner tree [12,14], Steiner forest [9], two-edge-connected survivability [12,13], 3 TSP [12], and multiway cut [8].
In the construction of the brick decomposition for two-edge-connected augmentation, we take special care of the edges of R.Here is our variant of the brick decomposition of [14].Definition 3.2 (Mortar Graph and Bricks) Let G be a plane graph with edge-weights.Let R be a subset of E [G].Let > 0 be a parameter.Let M be a subgraph of G.For each face F of M, we define a brick B as the planar subgraph of G embedded inside the face, including the boundary edges of F. We denote the interior of B as the brick without the boundary edges of F. We call M a mortar graph of G if, for every brick B, its boundary in counter-clockwise order is the concatenation of four paths West B , South B , East B , North B (the subscript B is omitted when it is clear from the context), such that: 1.The interior of B is non-empty; 2. Every edge of R that is in B is on North; 3. South is a path of minimum weight in B, and every proper subpath of North is a path of almost minimum weight in B, i.e., its weight is at most (1 + ) times the minimum weight of a path in B between its endpoints; 4.There exist an integer k and vertices s 0 , . . ., s k ordered from left to right along South such that, for any vertex x on the segment South[s i , s i+1 ), the weight of the segment South[s i , x] is less than times the minimum weight of a path in B between x and North.

Lemma 3.3 (Mortar-Graph Lemma) Let G be a planar graph with edge-weights. Let R be a subset of E[G]. Let T be a connected subgraph of G that contains every edge of R. Let > 0 be a parameter. There is a polynomial-time algorithm that computes a mortar graph M of G such that:
1. for every brick, the parameter k is O(1/ 4 ); Remark There are several differences between the brick decomposition here and that from [14], but they are minor and the proof from [14] can be easily extended.

Framework of Approximation Schemes
The approximation schemes in planar graphs for Steiner tree [12,14], Steiner forest [9], two-edge-connected survivability [12,13], TSP [12], and multiway cut [8] all use the brick decomposition technique, and have a similar framework which we now summarize.First, the algorithm finds an O(1)-approximate solution and builds a mortar graph.Next, it performs Breadth-First Search (BFS) on the dual of the mortar graph, and selects a mod-η residue j * such that edges whose levels are congruent to j * have total weight at most 1/η times the weight of the mortar graph.It commits to including these edges in the ultimate solution; this decomposes the graph into subinstances each consisting of at most η levels of bricks.Note that a planar graph consisting of at most η BFS levels has branchwidth at most 2η, i.e., can be recursively decomposed into clusters of edges such that each cluster has at most 2η boundary vertices.For each subinstance, it finds a near-optimal solution by dynamic programming.Finally, it returns the union of the solutions for all subinstances.

Remark
In the approximation scheme for Steiner forest [9] or for multiway cut [8], there is an additional preprocessing step of PC partition (see Sect. 3.1), which reduces an instance to subinstances.This step ensures that each subinstance admits a connected subgraph with relatively small weight, on which a mortar graph is built.The above framework is then applied to each subinstance.

Doubling Brick Boundaries
In this section, we describe the operation of doubling brick boundaries, which consists of adding to the graph artificial copies of the South, East, and West boundaries of bricks, and zero-weight edges between corresponding vertices.This is a technical detail to prevent special cases in the Structure Theorem (Theorem 4.2).
Let G be a plane graph with edge-weights.Let M be its mortar graph.Let P = p 0 , • • • , p ( ≥ 1) be any boundary of a brick B. The operation of doubling the boundary P is defined as follows.For every vertex u ∈ P−{ p 0 , p }, create a copy u , and add an edge uu of weight 0 4 ; for every edge uv on P, add an edge u v of the same weight as that of uv; and for every edge uv ∈ P × (B − P), replace the edge uv by an edge u v of the same weight.The result of doubling the West, South, and East boundaries of a brick B is given in Fig. 5.We denote West , South , and East as the copies of West, South, and East.
Let H be the graph obtained from G by doubling the West, South, and East boundaries of every brick.By the definition of mortar graph (Definition 3.2), West, South, and East do not contain edges of R, so no edge of R is duplicated.We observe that the mortar graph of H is inherited from that of G. Lemma 3.4 (Boundary-Doubling Lemma) A two-edge-connected augmentation for (G, R) can be transformed into a two-edge-connected augmentation for (H , R) in linear time without increasing the weight, and vice versa.
Proof A solution for (G, R) can be transformed into a solution for (H , R) by including all edges vv , which have weight 0. Conversely, a solution S for (H , R) can be transformed into a solution S for (G, R) by contracting every edge vv .In particular, for any boundary edge uv of a brick, uv belongs to S if at least one of uv and u v belongs to S .Observe that the doubling boundary operation is applied only to the West, South, and East boundaries, which do not contain edges in R according to Definition 3.2.Therefore, S is a feasible solution for (G, R).

Sphere-Cut Decomposition
We consider a special kind of branch decomposition of plane graphs, called a spherecut decomposition.Dorn et al. [21] introduced this technique and used it to designe algorithms for planar Hamiltonian cycles and planar graph TSP.
A noose of a plane graph is a Jordan curve that intersects only vertices of the graph and not edges.A sphere-cut decomposition of width w is a family of noncrossing nooses each intersecting at most w vertices; the nooses form a binary tree by the enclosure relation, each leaf noose encloses exactly one edge, and each edge is enclosed by a leaf noose.For each noose in the sphere-cut decomposition, we refer to the set of edges enclosed as a cluster.Lemma 3.5 (Sphere-Cut Lemma) Let G be a plane graph whose dual graph has diameter k.Then G has a sphere-cut decomposition of width at most 2k and such a decomposition can be computed in linear time.
The proof of this lemma is a straightforward adaptation from the proof of Lemma 14.6.1 in [33]: We only need to replace the branch decomposition by the sphere-cut decomposition in that proof.

Approximation Scheme
In this section, we prove Theorem 1.2.More specifically, let G be a plane graph with edge-weights, let R be a subset of E[G], and let > 0 be a parameter.We will prove that the algorithm Augment(G, R, ) (Algorithm 2) computes in polynomial time a two-edge-connected augmentation S for (G, R) such that weight(S) Fig. 6 In the example, G consists of the edges e 1 , . . ., e 8 and R = {e 1 , e 2 , e 3 , e 4 }.Suppose that weight(e 7 ) and weight(e 8 ) are much larger than weight(e 5 ) and weight(e 6 ).The optimal two-edge-connected augmentation would be {e 5 , e 6 }.However, any Steiner tree connecting the edges of R must include one of the edges e 7 and e 8 Algorithm 2 Augment(G, R, )

Preprocessing
We reduce the instance of two-edge-connected augmentation to subinstances such that every subinstance admits a connected skeleton of relatively small weight, and that the subinstances can be solved independently.To prove Theorem 1.2, it is then sufficient to prove a related version (Theorem 4.1), where we are given in addition a connected subgraph T that contains every edge of R.
We defer the proof of the Augmentation Theorem, and first show how it implies Theorem 1.2.We note that a connected subgraph containing every edge of R might be much more expensive than OPT (see Fig. 6).Applying the Augmentation Theorem to the initial instance would not lead to an approximation scheme.That is why we need to reduce the instance to almost independent subinstances.To achieve this, we use the PC-Partition subroutine (Sect.3.1).
Proof of Theorem 1.2 using the Augmentation Theorem First, we apply the Partition Theorem (Theorem 3.1) on G, R, /7 and obtain connected subgraphs T 1 , . . ., T k .Next, for each i ∈ [1, k], we apply the Augmentation Theorem on G, R i , T i , /7.From both theorems, the output of Algorithm 2 is a two-edge-connected augmentation for (G, R).
Summing the above inequality over i, and again using the Partition Theorem, we deduce that the weight of the output solution is at most In the rest of Sect.4, we prove the Augmentation Theorem (Theorem 4.1).

New Use of Brick Decomposition
For all previous approximation schemes using the brick decomposition, the key was the structure property, which says that there exists a near-optimal solution that crosses the boundary of any brick only a bounded number of times. 5However, that property is not achievable for two-edge-connected augmentation, and this is the main difficulty in using the brick decomposition.
Instead, we show that, after a transformation of the instance (namely, the boundary doubling operation in Sect.3.4), we have: New Structure Property There exists a near-optimal solution such that, for any brick and any two vertices u, v on the boundary of the brick, there is a u-to-v Jordan curve inside the brick that crosses the near-optimal solution only a bounded number of times. 6o prove the new structure property, we add boundary cycles and reduce nesting inside each brick.See Sect.4.3.
To make use of the new structure property, we combine it with the sphere-cut decomposition (Sect.3.5).Recall that in the general framework of approximation schemes (Sect.3.3), each subinstance contains a bounded number of brick levels, so its mortar graph has a branch decomposition of bounded width.We observe that the branch decomposition here has the special form of a sphere-cut decomposition: each cluster of edges is precisely the set of edges enclosed by a Jordan curve J that intersects the mortar graph a bounded number of times.This is where the new structure property comes in: each segment of J traversing a brick can be replaced by a curve that intersects the near-optimal solution a bounded number of times.This yields a new Jordan curve J that has a bounded number of intersections with the near-optimal solution.
The above properties enable us to design a dynamic program (DP), see Sect.4.4.For each cluster of the sphere-cut decomposition, the DP enumerates all possible intersections of the unknown near-optimal solution with the partially unknown Jordan curve J .The DP also enumerates all possible connectivity structures of the part of the near-optimal solution inside J .Note that there may be some edges of the graph that are in the parent cluster but not in the child clusters, so the DP must do a bit of extra work to go from tables for the children to the table for the parent (see Sect. 2: Let H be the graph obtained from G by doubling East, South, and West boundaries of every brick (See Sect.3.4).3: Do BFS in the planar dual M * starting from an arbitrary vertex r .Define the level of a vertex of M * as its hop distance from r .Let E i denote the set of edges of M * whose two endpoints are at level i and level i + 1, respectively.Let η = 1/ 3 .For every j ∈ [0, η − 1], let E j be the union of E i over all levels i such that i ≡ j (mod η).Let j * ∈ [0, η − 1] be the index which minimizes weight E j .4: For every connected component C of M * − E j * , let H C be the subgraph of H consisting of the bricks corresponding to V [C].Find a near-optimal two-edge-connected augmentation in H C by dynamic programming (Sect.4.4).5: Return the union of all two-edge-connected augmentations in the previous step.Fig. 7 The rectangle is a brick.The solid lines represent the modified solution S inside the brick.The u-to-v Jordan curve (dashed) has few crossings with S

Structure Theorem
The Structure Theorem is the key to the approximation scheme for two-edge-connected augmentation.It is a slight generalization of the New Structure Property in Sect.4.2.

Theorem 4.2 (Structure Theorem) Let G be a plane graph with edge-weights. Let R be a subset of E[G]. Let > 0 be a parameter. Let M be the mortar graph of G. Let H be the graph obtained from G by doubling the South, East, and West boundaries of every brick.
For any two-edge-connected augmentation S 0 for (H , R), there is a two-edgeconnected augmentation S * for (H , R) such that: • weight(S * ) ≤ (1 + )weight(S 0 ) + 4 brick B weight(East B ∪ West B ); • For any brick B and any two vertices u, v on the boundary of B, there is a uto-v Jordan curve inside B that has O(1/ 4 ) crossings with S * , all occurring at vertices.
The proof of the Structure Theorem consists in modifying the initial solution so that any two vertices u, v on the boundary of a brick can be connected by a curve that has few crossings with the modified solution.Figure 7 shows the kind of curve we use.It starts at the given vertex u on the brick boundary, traverses the nesting containing u to reach the South boundary, then goes eastwards towards v, bypassing most South-to-North connections using the South cycles (cycles formed by parts of the South boundary and their duplicates), and finally traverses the nesting containing v to reach the given vertex v on the brick boundary.In order to achieve a small number of crossings, we must ensure that the depth of a nesting is small and that only a small number of South cycles are used to bypass the South-to-North connections.
The construction of the solution S * works on each brick in turn, modifying the initial solution S 0 inside that brick.The key is the following Structure Proposition, which can be viewed as a local version of the Structure Theorem.

Proposition 4.3 (Structure Proposition) Let S be any two-edge-connected augmentation for (H , R). Let B be a brick in H . Let F be the set of edges of S that are in the interior of B. Then there is a set of edges F 3 in B with the following properties:
• Feasibility: (S − F) ∪ F 3 is a two-edge-connected augmentation for (H , R); • Bounded Crossings: For any two vertices u, v on the boundary of the brick B, there is a u-to-v Jordan curve inside the brick that has O(1/ 4 ) crossings with F 3 , all occurring at vertices.

Proof of the Structure Theorem using the Structure Proposition
Let S be initialized as S 0 .For each brick B of H in turn, we update S using (S − F) ∪ F 3 , where F is the set of edges of S that are in the interior of B, and F 3 is the set of edges obtained from the Structure Proposition.Let S * be the final S. Then S * remains a two-edge-connected augmentation for (H , R), and the Bounded-Crossings property is satisfied in every brick.The weight of S * is at most (1 + )weight(S 0 ) + 4 brick B weight(East B ∪ West B ), since the sets F's during the transformation are disjoint subsets of S 0 .
In the rest of Sect.4.3, we prove the Structure Proposition.

Construction of F 3
We focus on a brick B in H .To construct F 3 in the Structure Proposition, there are three steps as follows.
Step 1: Modify F into F 1 by Adding East and West Cycles.We add to F all the edges on the two cycles East •East and West •West , where East and West are the copies of the East and West boundaries during the boundary doubling operation (see Sect. 3.4), and we remove from F all the edges inside the two cycles.Prune the result by removing unnecessary edges that are in the interior of the brick.
Thus we obtain a forest.Let F 1 be the result.
Step 2: Modify F 1 into F 2 by Adding South Cycles.First, we greedily define a collection of disjoint South-to-North paths P 0 , . . ., P t using the approach in [14]: Let s 0 , . . ., s k be the vertices along South defined in Definition 3.2.Let P 0 be the Fig. 8 Adding South cycles (in bold) into the solution easternmost path in F 1 from South to North.For any i ≥ 0, assume P i is a path from some segment South[s j , s j+1 ) to North.Then P i+1 is defined to be the easternmost path in F 1 from South[s 0 , s j ) to North that does not go through any vertices of P i .Let t be the last index for which P t is defined.Note that t ≤ k = O(1/ 4 ).Some associated notations: x i is the start vertex of P i ; k i is the integer j such that x i ∈ South[s j , s j+1 ); x i and s k i are the copies of x i and s k i on South ; H i is the subgraph of F 1 that is strictly enclosed by P i , P i+1 , and the segments of South and North in between.
For each i ∈ [0, t], we add to F 1 the cycle , and we remove from F 1 all the edges inside C i .The cycles {C i } i are called South cycles.See Fig. 8. Prune the result by removing unnecessary edges that are in the interior of the brick and do not belong to any P i .Thus we obtain a forest.Let F 2 be the result.
Step 3: Modify F 2 into F 3 by Reducing Nesting.A South arch A is a path in F 2 whose endpoints u and v are on South and whose other vertices are all strictly in the interior of the brick.The u-to-v path along South is called the base of A.
We define the subgraph enclosed (resp.strictly enclosed) by A as the subgraph induced by the edges of F 2 that are inside (resp.strictly inside) the cycle A • base(A).For a South arch A, the South arch-emptying operation is to add to F 2 the edges on the base of A, and to remove from F 2 the edges in subgraph strictly enclosed by A. We define the depth of South arches by induction: For every maximally enclosing South arch, its depth is 0; For every South arch A of depth d (d ≥ 0), consider the subgraph strictly enclosed by A, and define the depth of every maximally enclosing South arch in this subgraph to be d + 1.In the construction of the solution, we apply the South arch-emptying operation to every South arch at depth κ := 1/ .See Fig. 9. Similarly, we define North arch and North arch-emptying operation, except that since the North boundary may contain edges from R, in the North arch-emptying operation, instead of adding all the edges of the u-to-v path along North, we add the edges of the u-to-v path along North that are not in R (since the solution is supposed to be an augmentation of R).Again, we apply the North arch-emptying operation to every North arch at depth κ.
Prune the result by removing unnecessary edges that are in the interior of the brick.
Thus we obtain a forest.Let F 3 be the result.We similarly define arch and depth in the subgraph F 3 .
Fig. 9 Reducing nesting: when the solution contains more than 1/ nested paths, we add a piece of the South boundary (in bold) and empty the cycle thus created

Proof of Feasibility
The edges that are removed during the construction of F 3 are either unnecessary edges or edges inside cycles.From the following lemma, (S−F)∪F 3 is a two-edge-connected augmentation for (H , R).

Proof of Near-Optimality
The following lemma bounds the costs of arch-emptying operations with respect to some maximally enclosing arch A 0 .
Lemma 4.5 Let A 0 be a maximally enclosing arch in F 2 .Let F 2 (A 0 ) (resp.F 3 (A 0 )) be the subgraph of F 2 (resp.F 3 ) enclosed by A 0 .We have: Proof For every 1 ≤ i ≤ κ, define A i as the set of depth-i arches in F 2 (A 0 ).Let A = 1≤i≤κ A i .Since the arch emptying operations are applied to arches of depth κ, weight(F 3 (A 0 )) − weight(F 2 (A 0 )) is at most A∈A κ weight(base(A)).We only need to bound the latter term by at most 2 • weight(F 2 (A 0 )).Every A ∈ A κ is enclosed by exactly κ arches from A: one from each A i .We charge the weight of base(A) to each of the κ arches.Thus the total charge for all A ∈ A κ is κ A∈A κ weight(base(A)).
On the other hand, an arch A ∈ A receives a charge of weight(base(A)) due to each arch A ∈ A κ in the subgraph enclosed by A .Notice that the bases of these arches are disjoint sub-segments of base(A ).Thus the total charge received by A is at most the weight of base(A ), which is at most (1 + )weight A by the definition of mortar graph (Definition 3.2).Since κ = 1/ , we have: Therefore, A∈A κ weight(base(A)) ≤ 2 • weight(F 2 (A 0 )), as required.Now we bound the weight of F 3 .First, since F 1 is obtained from F by adding the East and West boundaries and their copies East and West , we have: ( Next, from the definition of mortar graph, for every i, weight South[s k i , x i ] ≤ • weight(P i ).Thus the weight of the South cycle C i is at most 2 • weight(P i ).Since {P i } i are disjoint paths in F 1 , i weight(P i ) ≤ weight(F 1 ).Therefore, we have: Finally, we apply Lemma 4.5 to all maximally enclosing arches.Observe that every edge of F 2 is enclosed by at most one maximally enclosing North arch and by at most one maximally enclosing South arch.Therefore, we have: Combining Eqs.(1) to (3), we have: The statement follows by replacing by = /7.

Proof of Bounded Crossings
Definition 4.6 For any two vertices u, v of the brick, consider a u-to-v Jordan curve inside the brick that has the minimum number of crossings with F 3 , all occurring at vertices.Define the distance δ(u, v) as the number of crossings between F 3 and this curve (excluding u and v).For a vertex u of the brick and a subset X of vertices of the brick, define δ(u, X ) = min v∈X δ(u, v).For two subsets X and Y of vertices of the brick, define δ(X , Y ) = min u∈X ,v∈Y δ(u, v).
It suffices to show that, for every vertices u, v on the boundary of the brick, δ(u, v) = O(1/ 4 ).Step 1 of the construction enables us to reduce the general case that u, v ∈ South ∪ West ∪ North ∪ East to the case that u, v ∈ South ∪ North.To see this, let u, v be any boundary vertices.We note that u is on the same face as some vertex from South ∪ North: when u is on East (resp.West), from Fact 4.8, u is on the same face as the intersection vertex of East (resp.West) and South, so δ(u, South ∪ North) = 0. Similarly, δ(v, South∪North) = 0. Thus δ(u, v) is at most 2 plus the distance between a pair of vertices from South ∪ North.It only remains to prove the following lemma (Lemma 4.9).Lemma 4.9 For any vertices u, v on South ∪ North, δ(u, v) = O(1/ 4 ).
To prove Lemma 4.9, we need Lemmas 4.11, 4.13 and 4.14.Lemmas 4.11 and 4.14 are based on Lemma 4.10, and Lemmas 4.13 and 4.14 are based on Lemma 4.12.

Lemma 4.10 Let A be any arch in F 3 . Let u be any vertex on the base of A. We have δ(u, A) = O(1/ ).
Proof Consider a set of arches {A i } 0≤i≤ in F 3 defined as follows: A 0 is A, and for every i ≥ 1, A i is the maximally enclosing arch in the subgraph strictly enclosed by A i−1 such that u ∈ base(A i ).Let be the last index for which A is defined.From Step 3 of the construction, ≤ 1/ .We observe that there exists some vertex in A that is on the same face in F 3 as u; let this vertex be u .Similarly, for every i = − 1, . . ., 0, there exists some vertex in A i that is on the same face in F 3 as u i+1 ; let this vertex be u i .The vertex u 0 is such that u 0 ∈ A and δ(u, Proof If u is not on the base of any North arch, then u is on the same face in F 3 as some vertex from South, because there is no path in F 3 that starts at an internal vertex of East or West (from Step 1 of the construction).Thus δ(u, South) = 0.
If u is on the base of some North arch, let A be the maximally enclosing North arch in F 3 such that u ∈ base(A).By Lemma 4.10, there exists some vertex v on the arch A such that δ(u, v) = O(1/ ).Then v is on the same face in F 3 as some vertex from South, because there is no path in F 3 that starts at an internal vertex of East or West (from Step 1 of the construction).Therefore, δ(u, South) = O(1/ ).Lemma 4.12 For every i < t, every vertex w on P i has δ(w, x i ) ≤ 1.
Proof Consider the w-to-x i Jordan curve that follows P i on the east side.See Fig. 10.By definition of P i , the curve has at most one crossing of a P i -to- 11a and b for the configurations forbidden by the definition of P i .) Proof From definition of P i+1 , we observe that x i+1 is on the same face in H i as some vertex from South[s k i , x i ] ∪ P i (Figs. 11b and c are forbidden cases), let this vertex be w.If w ∈ South[s k i , x i ], then w is on the same face in F 3 as x i (Fact 4.8), so δ(x i+1 , x i ) ≤ 1; and if w ∈ P i , then δ(w, x i ) ≤ 1 (Lemma 4.12), so δ(x i+1 , x i ) ≤ 2.
Fig. 10 The w-to-x i curve has at most one crossing with the near-optimal solution Fig. 11 The dashed paths are forbidden from the construction of P i+1 123 Fig. 12 The arch A defined in the proof of Lemma 4.14 is drawn in bold.Any node on A can reach either x i or x i+1 with at most 1 crossing (dashed curve) and By Lemma 4.14, δ(u 1 , x i ) = O(1/ ) and δ(x j , v 1 ) = O(1/ ).By Lemma 4.13, δ(x , x +1 ) ≤ 2 for every .Recall that < t = O(1/ 4 ).Therefore, δ(u 1 , v 1 ) = O(1/ 4 ).
We complete the proof of the Structure Proposition (Proposition 4.3).Thus we obtain the Structure Theorem (Theorem 4.2).

Dynamic Programming
In this section, we design a dynamic program (DP) to solve the two-edge-connected augmentation problem when the dual of the mortar graph has bounded diameter.From the Structure Theorem, in order to get a near-optimal solution, we may restrict attention to solutions that satisfy the property defined there.A dynamic program computes the best among all such solutions.Theorem 4.15 (Dynamic-Programming Theorem) Let G be a plane graph with edgeweights.Let R be a subset of E [G].Let > 0 be a parameter.Let M be the mortar graph of G. Let H be the graph obtained from G by doubling the South, East, and West boundaries of every brick.
Assume that the dual graph of M has diameter O(1/ 3 ).Then there is an algorithm that computes in polynomial time a two-edge-connected augmentation S for (H , R) such that:

Specification of DP Table
We define the index of the DP table and the value at an index.
By the Sphere-Cut Lemma (Lemma 3.5), M has a sphere-cut decomposition SC of width O(1/ 3 ) which can be computed in linear time.The first index of the DP table is a cluster E of SC, which is a subset of edges of M.
Let S 0 ⊆ E[H ] be the optimal two-edge-connected augmentation for (H , R).We apply the Structure Theorem (Theorem 4.2) on S 0 and obtain a two-edge-connected augmentation S * ⊆ E[H ].We remove unnecessary edges from S * to make it minimal.We observe that every connected component in R ∪ S * is two-edge-connected. 7For every cluster E of SC, let J * be the noose enclosing E that has the minimum number of crossings with R ∪ S * (all occurring at vertices), breaking ties by choosing the minimally enclosing one. 8It is easy to see that the nooses J * for all clusters E ∈ SC are non-crossing.Lemma 4.16 J * has O(1/ 7 ) crossings with R ∪ S * , all occurring at vertices.Proof Since SC has width O(1/ 3 ), there is a noose enclosing E that has O(1/ 3 ) intersections with M, all occurring at vertices.From one intersection to the next, it goes across a single brick, and by the Structure Theorem (Theorem 4.2), the part inside this brick can be replaced by a curve that has O(1/ 4 ) crossings with S * (all occurring at vertices), hence O(1/ 4 ) crossings with R ∪ S * , since no edge of R is in the interior of a brick.This results in a noose enclosing E that has O(1/ 7 ) crossings with R ∪ S * , all occurring at vertices.
Next, we need a concise representation of the connectivity structure of the part of R ∪ S * inside J * .Let R E (resp.S * E ) denote the set of edges of R (resp.S * ) that are inside J * .Define a forest F * 0 as the result of contracting every two-edge-connected component of R E ∪ S * E into a node.A node of F * 0 is called internal if its corresponding two-edge-connected component in R E ∪ S * E does not contain any node from Q * , i.e., the component is strictly inside J * .We then define a forest F * from F * 0 by removing internal nodes that are singletons and splicing out internal nodes of degree 2. 9 By the construction, F * has at most |Q * | non-internal nodes, and every internal node has degree at least 3. 10 Thus F * has at most 2|Q * | − 2 nodes.The third index of the DP table is a forest F of at most 2|Q| − 2 nodes.Moreover, there is a map ψ * giving the natural many-to-one map from To summarize, an index of the DP table, also called a DP index, contains the following: • E: a cluster of the sphere-cut decomposition SC; • F: a forest of size at most 2|Q| − 2; • ψ: The triple (Q, F, ψ) is also called a partial DP index.
To simplify the presentation, we include a Jordan curve J in the (partial) DP index.Later in Sect.4.4.3,we will show how to remove J from the DP index in order to obtain a polynomial-time dynamic program.
We We observe that for every cluster E, S * E is consistent with (E, Q * , F * , ψ * , J * ), and that any S that is consistent with the root DP cell 11 is a two-edge-connected augmentation for (H , R).
For every DP index (E, Q, F, ψ, J ), define its value D P(E, Q, F, ψ, J ) as the minimum weight among a family F of solutions with the following properties: The goal of the dynamic program is to fill in the DP table and to output the value at the root DP cell.12

From Children to Parent
Let E be a cluster of SC.Let E 1 and E 2 be its child clusters.Let J * , J * 1 , J * 2 be the Jordan curves enclosing E, E 1 , E 2 , and let The hole region in J * is the area inside J * but outside J * 1 and J * 2 in the plane. 13Let Ĵ * be the boundary of the hole region.14See Fig. 13.We observe that the hole region does not contain any edge of the mortar graph.Since any edge from R belongs to the mortar graph, the hole region cannot contain edges from R.
Let Ŝ * denote the set of edges of S * in the hole region.Let Q * denote the set of intersections of S * with the boundary of the hole region.We have We use a side table T to compute solutions in hole regions.This table is indexed by a partial DP index ( Q, F, ψ, Ĵ ).The concept of consistency (Definition 4.17) can be extended to the hole region by setting (E, Q, F, ψ, J ) := (∅, Q, F, ψ, Ĵ ).The value T ( Q, F, ψ, Ĵ ) is defined as the minimum weight among all consistent solutions.
the area enclosed by J can be decomposed into the areas enclosed by J 1 , J 2 , and Ĵ ; and that F and ψ are the results of the following construction: Step 1. F is initialized as Step 2. For every vertex u ∈ Q 1 ∩ Q 2 , merge the nodes ψ 1 (u) and ψ 2 (u) in F. Idem for every vertex u ∈ Q 1 ∩ Q and for every vertex u ∈ Q 2 ∩ Q.Let ψ : Q → F be the natural extension from ψ 1 , ψ 2 , and ψ.Step 3. Contract two-edge-connected components in F. Update ψ accordingly.
Step 4. Modify F by removing internal nodes that are singletons and splicing out internal nodes15 of degree 2. In this step, ψ is unchanged.
Proof For each i ∈ {1, 2}, since S i is consistent with (E i , Q i , F i , ψ i , J i ), we obtain two families H i and I i of subgraphs according to Definition 4.17.Similarly, since Ŝ is consistent with (∅, Q, F, ψ, Ĵ ), we obtain two families Ĥ and Î of subgraphs.From the definition of compatibility, F and ψ are the results of the construction in Definition 4.18.We build two families H and I of subgraphs along the line of that construction as follows.
1. H is initialized as H 1 ∪ H 2 ∪ Ĥ, and I is initialized as Now we prove that S is consistent with (E, Q, F, ψ, J ) using H and I.The nontrivial part is to show that, for every edge uv ∈ R E such that u and v are not twoedge-connected in R E ∪ S, it belongs to exactly one subgraph in I. Assume without loss of generality that uv ∈ R E 1 .Obviously, u and v are not two-edge-connected in R E 1 ∪ S 1 , so uv belongs to exactly one subgraph I e ∈ I 1 for some e ∈ E[F 1 ].In Step 1 of the construction, we have I e ∈ I.We claim the following: I e is not merged into any subgraph H in Step 3 of the construction.This claim then implies the lemma statement, because from the claim, in the end of the construction, either I e ∈ I or there is some (unique) I bc ∈ I that is the concatenation of I e and other segments (according to Step 4 of the construction).Therefore, uv belongs to exactly one subgraph in I.
It only remains to show the above claim.We prove by contradiction.Suppose there is some subgraph H in Step 3 of the construction that contains I e .Let A be the corresponding two-edge-connected component in F. Both endpoints of e are in A, so there exists a cycle in A that contains the edge e; let it be a 1 , . . ., a k .(Define a k+1 = a 1 for convenience.)We construct a simple cycle C in H that contains the edge uv as follows.For every i ∈ [1, k], let I a i a i+1 be the path connecting H a i and H a i+1 , and let y i and x i+1 be its endpoints.For every i ∈ [2, k+1], let P i be a x i -to-y i path in H a i .Define a cycle C in H to be the concatenation of I a 1 a 2 , P 2 , I a 2 a 3 , P 3 , • • • , I a k ,a k+1 , P k+1 .We make C simple by removing unnecessary edges.The edge uv remains in the resulting simple cycle since it appears exactly once on C: it appears in exactly one I a i a i+1 for some i.Therefore, u and v are two-edge-connected in H ⊆ R E ∪ S, contradiction.Thus the claim holds, and hence we conclude the proof of the lemma.

Obtaining a Polynomial-Time DP
Actually, there are too many possibilities for the Jordan curve J .Thus we remove J from the (partial) DP index and do not require that S E is inside J .However, S E might share some edges with the solution S E for another cluster E ∈ SC, in which case the combined solution might contain bridge edges, see Fig. 14.To solve this issue, we include a postprocessing step in the end of the algorithm to ensure that the result is a collection of two-edge-connected components.
Fig. 14 The solid curves represent the unknown Jordan curves.S E ∪ R E is represented by the dashed u-to-v path.S E ∪ R E is represented by the dotted u-to-v path.The union of the two paths contains bridge edges (left figure).Observe that any bridge edge in this union belongs to both S E ∪ R E and S E ∪ R E .Since S E and S E do not contain any edge from R, any bridge edge must belong to both S E and S E .We trim the solution by removing all of the bridge edges from both S E and S E (right figure ) Preprocessing First, the algorithm fills in the side table T during the preprocessing.Note that any minimal Ŝ ⊆ E[H ] that is consistent with ( Q, F, ψ) contains no cycle.Therefore, for every node a ∈ V [ F], the subgraph H a (see Definition 4.17 Recursive Case in DP The algorithm fills in the DP table in the order of the index E from bottom up in SC.Consider a cluster E = E 1 ∪ E 2 , where E 1 , E 2 ∈ SC.To compute the value at a DP index (E, Q, F, ψ), the algorithm enumerates every combination of (Q 1 , F 1 , ψ 1 ), (Q 2 , F 2 , ψ 2 ), and ( Q, F, ψ) that are compatible with The bound in Eq. ( 4) follows when replacing by = /K for some absolute constant K that is large enough.

Conclusion
For planar graphs, we have provided a reduction from correlation clustering to twoedge-connected augmentation, mainly based on planar duality.Next, we have designed a polynomial-time approximation scheme for the latter problem.The scheme is based on the brick decomposition from [14].The main novelty of our work is a new structure property on bricks (Theorem 4.2).
There are many problems for which approximation schemes in planar graphs are unknown, such as two-edge-connected Steiner subgraph, vehicle routing, vertexweighted Steiner tree, and directed Steiner tree.It would be interesting to see whether other structure properties can be developed to design approximation schemes for such problems.

Fig. 4
Fig. 4 Each connected component of A i−1 ⊕ R is two-edge-connected.The endpoints of e i (and of e i ) are in different connected components of the subgraphA i−1 ⊕ R, which implies that each connected component of A i−1 ⊕ R−{e i , e i } is two-edge-connected.Moreover, A i−1 ⊕ R−{e i , e i } = A i ⊕ R

Theorem 3 . 1 (
Partition Theorem) Let G be a graph with edge-weights.Let R be a subset of E[G].Let > 0 be a parameter.The algorithm PC-Partition(G, R, ) (Algorithm 1) computes in polynomial time a set of connected subgraphs T 1 , . .

Fig. 5
Fig. 5 Doubling the West, South, and East boundaries of B. The new edges between vertices and their copies have weight 0

Theorem 4 . 1 (
Augmentation Theorem) Let G be a plane graph with edge-weights.Let R be a subset of E[G].Let T be a connected subgraph of G that contains every edge of R. Let > 0 be a parameter.The algorithm Augment-Connected(G, R, T , ) (Algorithm 3) computes in polynomial time a two-edge-connected augmentation S for (G, R) such that weight(S) ≤ (1

Fact 4 . 8
The vertices of the East cycle (resp.the West cycle) are on the same face in F 3 , and the vertices of any South cycle are on the same face in F 3 .

7 ).
Similar to Sect.4.4.1, the connectivity structure of Ŝ * can be represented by a forest F * of size at most 2| Q * | − 2 together with a map ψ * from Q * to V [ F * ].

Fig. 13
Fig.13 The solid curves represent the Jordan curves: J * is the outermost boundary; J * 1 is the boundary of the white face on the left, and J * 2 is the boundary of the white face on the right.The dark areas represent the hole region.Its boundary is Ĵ .The dashed curves represent R ∪ S * inside J * .The solid points represent the vertices fromQ * ∪ Q * 1 ∪ Q * ) contains a single vertex in H ; let this vertex be u a .To compute the value T ( Q, F, ψ), the algorithm enumerates, for every a ∈ V [ F], the vertex u a among V [H ].Next, for every ab ∈ E[ F], it computes a minimum-weight path between u a and u b in E[H ]−R.Let Ŝ be the union of the above paths.The value T ( Q, F, ψ) is the minimum weight of all Ŝ's during the enumeration.The overall running time of the preprocessing is polynomial.Base Case in DP Consider a leaf cluster E = {uv}.The partial DP index (Q * , F * , ψ * ) must be one of the two configurations:(Q A , F A , ψ A ), when uv ∈ R ∪ S * (Q B , F B , ψ B ), when uv / ∈ R ∪ S * Here Q A = {u, v}; F A isa forest containing two nodes a and b and an edge ab; ψ A maps u to a and v to b; Q B = ∅; F B = ∅; and ψ B = ∅ ∅ .If uv ∈ R, we set D P(E, Q A , F A , ψ A ) = 0 and set D P(E, Q B , F B , ψ B ) = ∞; and if uv / ∈ R, we set D P(E, Q B , F B , ψ B ) = 0 and set D P(E, Q A , F A , ψ A ) to be the minimum weight of a u-to-v path in E[H ] − R.
The output S of Algorithm 3 is the union of S C over all components C. Summing the above inequality over C, we have:weight(S) ≤ (1 + ) C O PT (H C , R C ) + 4 brick B in H weight(East B ∪ West B ) .We note that C OPT (H C , R C ) ≤ OPT (H , R) + weight E j * ,where weightE j * is at most (1/η)weight(M) = O( 2 •weight(T )) using the Mortar-Graph Lemma (Lemma 3.3) and since η = 1/ 3 .On the other hand, the Mortar-Graph Lemma implies that brick B in H weight(East B ∪ West B ) = O( 2 • weight(T )).Therefore, we have: weight(S) ≤ (1 + )OPT (H , R) + O( 2 • weight(T )).
use the concept of consistency to relate a solution S E ⊆ E[H ] with a DP index.Intuitively, S E is consistent with a DP index if contracting two-edge-connected components in R E ∪ S E results in a forest F in that DP index.Definition 4.17 (consistency) Let (E, Q, F, ψ, J ) be an index of the DP table.We say that a subset S E of E[H ] is consistent with (E, Q, F, ψ, J ) if every edge of S E is inside J and, for every node a ∈ V [F], there exists a two-edge-connected subgraph H a of R E ∪ S E and, for every edge ab ∈ E[F], there exists a simple path I ab in R E ∪ S E connecting H a and H b such that the following holds: 1.Every vertex u ∈ Q belongs to H ψ(u) .2. For every edge uv ∈ R E such that u and v are not two-edge-connected in R E ∪ S E , the edge uv belongs to the path I ab for exactly one edge ab ∈ E[F].If these properties hold, we use H to denote {H a } a∈V [F] and we use I to denote {I ab } ab∈E[F] .
let H be the concatenation of H ψ 1 (u) and H ψ 2 (u) at the vertex u.Update H by H ∪ {H }−{H ψ 1 (u) , H ψ 2 (u) }.Idem for every vertex u ∈ Q 1 ∩ Q and for every vertex u ∈ Q 2 ∩ Q. 3. Consider the forest F at the beginning of Step 3 of the construction.For every two-edge-connected component A in F, let H be the union of the subgraphs H a , for all a ∈ V [A], and of the subgraphs I ab , for all ab ∈ E[A].Update H by H ∪ {H }−{H a } a∈V [A] and update I by I−{I ab } ab∈E[A] .4. Consider the forest F at the beginning of Step 4 of the construction.For every internal node a ∈ V [F] that is a singleton, we remove H a from H.For every internal node a ∈ V [F] of degree 2, let b and c be its neighbors in F. Let u (resp.v) be the common vertex of H a and I ba (resp.I ac ).Let P be a u-to-v path in H a .We define I bc as the concatenation of I ba , P, and I ac .Remove H a from H, and update I by I ∪ {I bc } − {I ba , I ac }.