Constant Congestion Routing of Symmetric Demands in Planar Directed Graphs

We study the problem of routing symmetric demand pairs in planar digraphs. The input consists of a directed planar graph G = (V,E) and a collection of k source-destination pairs M = {s1t1, . . . , sktk}. The goal is to maximize the number of pairs that are routed along disjoint paths. A pair siti is routed in the symmetric setting if there is a directed path connecting si to ti and a directed path connecting ti to si. In this paper we obtain a randomized poly-logarithmic approximation with constant congestion for this problem in planar digraphs. The main technical contribution is to show that a planar digraph with directed treewidth h contains a constant congestion crossbar of size Ω(h/polylog(h)). 1998 ACM Subject Classification F.2.2 Nonnumerical Algorithms and Problems, G.2.2 Graph Theory

1. Introduction.Disjoint path problems are well-studied routing problems with several applications and fundamental connections to algorithmic and structural results in combinatorial optimization and graph theory.Canonical problems here are the edge-disjoint paths problem (EDP) and the node-disjoint paths problem (NDP) in undirected graphs.In both these problems the input consists of an undirected graph G = (V, E) and k node-pairs \{ s 1 t 1 , . . ., s k t k \} .In EDP the goal is to connect the pairs by edge-disjoint paths and in NDP the goal is to connect the pairs by nodedisjoint paths.The decision versions of these problems are NP-Complete when k is part of the input [29].The seminal work of Robertson and Seymour showed that both these problems are fixed parameter tractable when parameterized by k, the number of pairs [41].In this paper we are concerned with an optimization version of the problems where the goal is to maximize the number of input pairs that can be routed via edge or node-disjoint paths.To avoid notational overload we will henceforth use EDP and NDP to refer to these maximization versions.
The approximability of EDP and NDP has been extensively studied but our understanding is still limited.The best known approximation for both these problems is O( \surd n) [11,34].(Here n is number of nodes in G.) Hardness of approximation results only ruled out an O(log 1/2 - \varepsi n) approximation [2] until very recently when Chuzhoy, Kim, and Nimavat showed a superpolylogarithmic lower bound [17] which holds even for planar graphs.Even in planar graphs the best approximation up to very recently was O( \surd n), with a slight recent improvement [18] for NDP.One of the \ast Received by the editors October 5, 2017; accepted for publication (in revised form) May 14, 2018; published electronically August 21, 2018.An extended abstract of this work has been presented at ICALP 2016 [8].
http://www.siam.org/journals/sidma/32-3/M115069.htmlFunding: The first author's work was partially supported by NSF grant CCF-1319376.The third author's work was partially supported by DIMAP and by Warwick-QMUL Alliance in Advances in Discrete Mathematics and its Applications.
reasons for this state of affairs is that the natural multicommodity flow relaxation has an integrality gap of \Theta ( \surd n).On the other hand, two closely related relaxations of EDP and NDP have seen significant progress in the last decade.ANF is the relaxation of the disjoint paths problem where a subset of the input pairs \scrM \prime is routed if there is a feasible multicommodity flow in the graph that routes one unit of flow for each pair in \scrM \prime .A second relaxation is to allow some small constant congestion c, i.e., instead of the pairs being routed on disjoint paths we allow up to c paths to use a given edge or node.ANF admits a polylogarithmic approximation [12,10].A series of breakthroughs [37,1,15] culminated in a polylogarithmic approximation for EDP with congestion 2 by Chuzhoy and Li [19].These ideas have been extended to NDP as well [6,5].These results have been made possible by a number of nontrivial ideas and techniques at the intersection of algorithms, combinatorial optimization, and graph theory.In particular, the results have been enabled by and contributed to a deeper understanding of the structure of undirected graphs via the notion of treewidth.Treewidth is a well-known graph parameter that plays a fundamental role in the graph-minor theory of Robertson and Seymour; see [3,5,4,14] for some of the recent results.
It is natural to study disjoint paths problems in directed graphs.Here the graph G is directed and the input pairs \scrM = \{ (s 1 , t 1 ), . . ., (s k , t k )\} are ordered and we seek to find a maximum cardinality subset of \scrM that can be connected by disjoint paths. 1nfortunately, it has been shown that disjoint paths problems are highly intractable in directed graphs.It is known that even the simpler case of ANF and with congestion c allowed is hard to approximate to within a factor of n \Omega (1/c) [16]; moreover, this holds in acyclic graphs.
A recent paper by a subset of the authors [7] initiated the study of maximum throughput routing problems in directed graphs where the demand pairs are symmetric.Here the graph G is directed but the input pairs are unordered as in the undirected setting.Routing a pair s i t i requires finding a path that connects s i to t i and a path connecting t i to s i .We use Sym-Dir-EDP, Sym-Dir-NDP, and Sym-Dir-ANF to denote the analogues of EDP, NDP, and ANF, respectively, in this setting.A detailed motivation for the study of this model is given in [7].Here we briefly outline some of the key points.
The model is motivated by both theoretical and practical considerations.On the theoretical side the model generalizes (modulo constant congestion) the edge and node disjoint paths problems in undirected graphs.Moreover, flow-cut gaps in this model have been studied in the past and have close connections to various problems including feedback edge/vertex set problems [33,43,23,9].From the more practical side there are several scenarios where the communication between users is symmetric while the underlying network that supports the communication may be asymmetric (hence modeled as a directed graph); see [28,27], for instance.
Unlike the case of directed graph routing problems, the symmetric model exhibits tractability.In particular, the well-linked decomposition framework for undirected graphs extends to a large extent to this model [7].To resolve the complexity of disjoint path problems in the symmetric model one needs to understand the structure of directed graphs as a function of their directed treewidth [25,38], which we denote by dtw(G).As we mentioned, the interplay between routing problems and graph structure theory has been fruitful in the recent past for undirected graphs.There has been recent significant progress on the graph theoretic side on directed treewidth; in particular Kawarabayashi and Kreutzer recently established the excluded grid theorem in directed graphs [30,31].
The main technical contribution of [7] is to generalize the well-linked decomposition framework of [10] to the symmetric demands setting in directed graphs.As a consequence, [7] obtained a polylogarithmic approximation with constant congestion for Sym-Dir-ANF.The central open question they raised is the following: Is there a polylogarithmic approximation for Sym-Dir-NDP with constant congestion in general directed graphs?It was shown in [7] that this can be answered in the positive by addressing the following, which is the analogue of the question that was raised previously for undirected graphs [10]: If a directed graph G has directed treewidth h, does it have a constant congestion routing structure (crossbar) of size \Omega (h/polylog(h))?Note that grid-minor theorems establish such a connection between treewidth and routing structures; however, the quantitative relationship between the treewidth and the size of the grid is too weak to prove any meaningful approximation for the routing problem.On the other hand, the routing problem has the flexibility of allowing a large constant congestion which enables one to prove the existence of routing structures that are not as rigid as a grid; this relaxation has been the key to algorithmic success on routing.We also note that it is NP-complete to decide whether a single pair can be routed without congestion in the symmetric setting [24]; thus a congestion of at least 2 is necessary for a nontrivial approximation ratio.
In this paper we take a step toward the general problem by addressing the important special case of planar graphs.Our main algorithmic result is the following.
Theorem 1.1.There is a randomized polylogarithmic approximation both for Sym-Dir-NDP and Sym-Dir-EDP in planar directed graphs with congestion 5.
The approximation algorithm in the preceding theorem is derived via a natural multicommodity flow relaxation for the problem.The main new technical ingredient in this paper is a graph theoretic result: if a planar digraph has directed treewidth h, then it has a relaxed cylindrical grid (defined formally later) of size \Omega (h/polylog(h)); such a grid can serve as a constant congestion crossbar for the purpose of a routing algorithm.We remark that an undirected planar graph with treewidth h has a grid-minor (which is a congestion 2 crossbar) of size \Omega (h).In contrast the known relationship between treewidth and grid-minors in directed planar graphs is much weaker; recent work [30,31] only shows that there is a directed-grid of size f (h) for some weakly growing function of h.We hope that our crossbar result could be used as a starting point to improve the quantitative bound on the grid-minor theorem for planar digraphs.
1.1.Overview of the algorithm and technical contributions.Here we give a brief outline of the high-level details of the algorithm and some of our technical contributions.Let (G, \scrM ) be an instance of Sym-Dir-NDP, where G = (V, E) is a directed planar graph with unit node capacities, and \scrM = \{ s 1 t 1 , . . ., s k t k \} is a collection of source-destination pairs.We refer to the nodes participating in \scrM as terminals, and we use \scrT to denote the set of terminals.It is convenient to assume that the pairs \scrM form a matching on \scrT .
Well-linked sets.A key notion that we make use of is well-linkedness.In a directed graph G = (V, E) a subset of nodes X \subsete V is said to be node-well-linked if for any two disjoint subsets Y and Z of X of equal size, there exist | Y | node-disjoint paths Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.phpFig. 1.A cylinder (left) and a crossbar we obtain in our proof (right); the vertices in the rounded rectangle are a set of \alpha -well-linked terminals.from Y to Z;2 note that the definition is symmetric since we can swap Y and Z.We need a relaxation of node-well-linkedness.For some parameter \alpha \in [0, 1], X is \alpha -node-well-linked if for all disjoint Y, Z \subset X of equal size there are | Y | paths from Y to Z such that no node is in more than \lceil 1/\alpha \rceil of these paths; in other words, the node-congestion caused by the paths is at most \lceil 1/\alpha \rceil .The case \alpha = 1 corresponds to node-well-linkedness.It is well-known that in both directed and undirected graphs node-well-linkedness is closely connected to treewidth.More precisely, a graph has treewidth k if and only if it has a node-well-linked set of size \Theta (k); see [38].Moreover, if X is \alpha -node-well-linked in G, then the treewidth of G is \Omega (\alpha | X| ).
Throughout the paper we only work with well-linked sets and do not need the notion of directed treewidth.For this reason we refrain from stating and explaining the highly technical definition of directed treewidth; it is not straightforward to digest the formal definition.We refer the interested reader to [25,38].
Algorithm.Here we outline the high-level steps of our algorithm.
1. Solve a multicommodity flow based LP relaxation that routes each pair s i t i fractionally to an amount x i \in [0, 1] to maximize \sum k i=1 x i .See Figure 2 and the description in section 2. 2. Use the LP relaxation and the well-linked decomposition framework from [7] to reduce the problem, at the loss of a polylogarithmic factor in the approximation ratio, to instances in which the terminals \scrT are \alpha -node-well-linked for some fixed constant \alpha .3. Assuming that \scrT is \alpha -node-well-linked in G we have dtw(G) = \Omega (k), where k = | \scrT | .Using this fact show that G has a large routing structure and use this structure to route a large number of terminal pairs.Use the following steps.
(a) From G obtain an Eulerian multigraph ) and (ii) \Delta (H), the maximum degree in H, is polylog(k).(b) Using the fact that H is Eulerian, has treewidth \Omega (k/polylog(k)), and has maximum degree polylog(k), show that it has a cylinder-like routing structure of size \Omega (k/polylog(k)).See Figure 1.(c) Route terminals to the routing structure and use the routing structure to connect a large number of input pairs.
The preceding algorithm follows the general framework that has been very successful in the undirected graph setting in the recent past.The first two steps follow the well-linked decomposition framework from [10] that has been extended to the symmetric demand instances in directed graphs by [7].This framework allows one to reduce, via the LP relaxation, general instances to instances in which the terminals are node-well-linked.This incurs a polylogarithmic factor loss in the approximation.With this reduction in place we have the following property for our instance.The graph G has a terminal set \scrT of size k and since \scrT is \alpha -node-well-linked for some fixed constant \alpha , G has directed treewidth \Omega (k).Now, the remaining task is to show a graph-theoretic result that any directed graph with treewidth k has a constant congestion crossbar routing structure of size \Omega (k/polylog(k)).By crossbar we mean a directed graph H with an interface I \subset V (H) with the following property: any matching on I can be routed in a symmetric fashion in H with constant congestion.The idea then is to route the terminals to the interface of the crossbar and use the crossbar to route the desired matching on the terminals.
In undirected planar graphs if G has treewidth k, then it has grid-minor of size \Omega (k) [42], and this grid-minor can be used as a crossbar to route \Omega (k) input pairs (see [10], for instance).What about directed graphs?Johnson et al. [25], who introduced the notion of directed treewith, conjectured that any directed graph with sufficiently large treewidth contains a cylindrical grid (see Figure 1) as a butterfly minor.The cylindrical grid can be used as a crossbar.In an unpublished manuscript, Johnson et al. [26] outlined a proof for the case of planar graphs.Kawarabayashi and Kreutzer [30] recently gave a different proof for the planar and minor-free case and very recently gave a proof for all graphs [31].However, as we already mentioned, the quantitative relationship between the size of the cylindrical grid and treewidth is very weak.Hence, these results would not yield meaningful results for our routing problem.Here, we build on the high-level ideas in the work of Johnson et al. [26] to establish our main result, which gives a constant congestion crossbar of size \Omega (k/polylog(k)), where k is the treewidth of G; our result applies only to planar graphs and establishing a similar result for general graphs is a challenging open problem.
A key insight from [26] is that given directed graph G one can create an Eulerian multigraph H of bounded degree whose support is a subgraph of G such that dtw(H) \geq f (dtw(G)) for some function f , where dtw(G) is the directed treewidth of G [25].Eulerianness as well as small degree are critical for further manipulations.Our first contribution is to show that H can be chosen such that (i) dtw(H) = dtw(G)/polylog(dtw(G)) and (ii) the maximum degree in H, \Delta (H) = O(log 2 dtw(G)).For this purpose we need two ingredients.The first is an extension to directed graphs due to Louis [36], of the cut-matching game of Khandekar, Rao, and Vazirani [32].The second is the well-linked decomposition framework of [7,10].
Theorem 1.2.Suppose that there is a polynomial time algorithm for \Omega (1)-nodewell-linked instances of Sym-Dir-NDP in planar directed Eulerian graphs of maximum degree \Delta that achieves a \beta (\Delta )-approximation with congestion c.Then there is a polynomial time randomized algorithm that, with high probability, achieves a \beta (O(log 2 k)) \cdot O(log 6 k) approximation with congestion c for arbitrary instances of Sym-Dir-NDP in planar directed graphs, where k is the number of pairs in the instance.
Another key insight from [26] is to consider the undirected version of G, denoted by G UN , to obtain a large undirected grid-minor using the fact that tw(G UN ) = \Omega (dtw(G)).In particular, this allows the construction of several disjoint concentric Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.phpdirected cycles in G by exploiting the structure of the grid, Eulerianness, and planarity.We follow their ideas and show that the entire construction can be done in polynomial time to yield \Omega (dtw(H)/\Delta (H)) concentric disjoint cycles.
The final step is to find many disjoint paths that cross the concentric cycles from the inner cycle to the outer cycle and many disjoint paths from the outer cycle to the inner cycle.We show that we can find such paths via some ideas in [26] but with the additional property that these paths originate at the terminals.The collection of concentric cycles with these crossing paths is our desired crossbar and we also obtain the required property that the terminals are linked to this crossbar.We note that [26] has to do considerable work to obtain a cylindrical grid while we are satisfied with the constant congestion properties of the cycles plus paths (see Figure 1).
In the end, we arrive at the following statement, whose proof is presented in section 4.
Theorem 1.3.There is a polynomial-time algorithm that given a directed Eulerian graph G of maximum in-degree at most \Delta , a planar embedding of G, and an \alpha -node-well-linked set X in G with | X| = \Omega (\Delta 2 /\alpha ) finds a set of \Omega (\alpha | X| /\Delta ) concentric cycles going in the same direction (i.e., all clockwise or all counterclockwise), sets Although we are inspired by [26], in the proof of Theorem 1.3 we use different methodology based on well-linked sets.We also point out that there are significant technical hurdles in working with directed graphs and treewidth.For instance, one can prove that if an undirected graph has treewidth k, then it has \Omega (k/ log k) disjoint cycles.This is closely related to the well-known Erd\H os--P\' osa theorem [22].Relating treewidth and disjoint cycles in directed graphs is significantly harder and was resolved in [39] following an earlier result for planar graph [40] (and also via the more recent result [31]) but the quantitative relationship is weak and far from the known lower bounds.
Using Theorem 1.3, we show the following statement, which in turn, together with Theorem 1.2, immediately yields Theorem 1.1.

Theorem 1.4.
There is an \scrO (\Delta 2 /\alpha 3 ) approximation with congestion 5 for Sym-Dir-NDP in instances for which the input digraph is planar and Eulerian with maximum degree \Delta , and the terminals are \alpha -node-well-linked for some \alpha \leq 1.
Organization.After introducting notation and tools in section 2, we prove Theorem 1.2 in section 3 and Theorem 1.3 in section 4. Section 5 wraps up the proof of Theorem 1.1 by establishing Theorem 1.4.

Preliminaries.
In the remainder of this paper, we focus on the node-disjoint paths problem (Sym-Dir-NDP) in directed planar graphs with symmetric demands, and we give a polylogarithmic approximation with constant congestion for the problem.Furthermore, we show the approximation guarantee with regards to the value standard LP relaxation of the problem; in section 2.2 we discuss how we reduce Sym-Dir-NDP to Sym-Dir-EDP, proving both statements of Theorem \sum p\in \scrP (ti,si) We start with some definitions and results from previous work.We follow the notation and exposition of [7].Let (G, \scrM ) be an instance of Sym-Dir-NDP, where G = (V, E) is a directed planar graph with unit node capacities, and \scrM = \{ s 1 t 1 , . . ., s k t k \} is a collection of source-destination pairs.We refer to the nodes participating in \scrM as terminals, and we use \scrT to denote the set of terminals.

LP relaxation.
Our algorithm uses a standard multicommodity flow relaxation for the problem given in Figure 2. We use \scrP (u, v) to denote the set of all paths in G from u to v for each ordered pair (u, v) of nodes.Our assumption that the pairs \scrM form a matching ensures that the sets \scrP (s i , t i ), \scrP (t i , s i ), \scrP (s j , t j ), and \scrP (t j , s j ) are pairwise disjoint.Let \scrP = \bigcup k i=1 (\scrP (s i , t i ) \cup \scrP (t i , s i )).The LP has a variable f (p) for each path p \in \scrP representing the amount of flow on p.For each (unordered) pair s i t i \in \scrM , the LP has a variable x i denoting the total amount of flow routed for the pair.(In the corresponding IP, x i denotes whether the pair is routed or not.)The LP imposes the symmetry constraint that there is a flow from s i to t i of value x i and a flow from t i to s i of value x i .Additionally, the LP has capacity constraints that ensure that the total amount of flow on paths using a given node is at most one. 3t is convenient to assume that the pairs \scrM form a matching on \scrT and each terminal is a leaf of G, i.e., it is attached to a single neighbor using an edge in each direction.As shown in [7], these properties can be ensured as follows.Given an instance (G, \scrM ) with terminals \scrT , we create a new instance (G \prime , \scrM \prime ) by attaching a new leaf neighbor t \prime to every t \in \scrT with arcs (t, t \prime ) and (t \prime , t), and move the terminal t to t \prime .Given a solution to the LP relaxation on (G, \scrM ), we can easily find a solution of at least half of the value by extending the flow along arcs (t, t \prime ) and (t \prime , t); the loss of the flow is due to potential capacity violation at vertex t that is now counted twice along the flow paths.If we obtain an integral solution in (G \prime , \scrM \prime ) (i.e., a routing of some pairs from \scrM \prime ) with congestion c, by shortening the paths we obtain a routing with the same congestion in (G, \scrM ).

Reduction between
Sym-Dir-NDP and Sym-Dir-EDP.As discussed at the beginning of this section, in the remainder of this paper we develop an approximation algorithm for Sym-Dir-NDP whose approximation guarantee is actually with respect to the value of the aforementioned LP relaxation.We now discuss how to obtain from this result an analogous algorithm for Sym-Dir-EDP, with the same congestion guarantee.
Consider an instance (G, \scrM ) of Sym-Dir-EDP with some fixed plane embedding of G. Similarly as in the case of Sym-Dir-NDP, we can assume that all terminals are leaves (of degree 1) in G. First, we subdivide every edge e of G with a new vertex x e ; the purpose of the new vertex is to keep capacity 1 for the edge e in the nodedisjoint setting.Second, for every vertex v of the original graph G of degree d \geq 3, we replace v with a d \times d bidirectional grid \Gamma d and connect edges formerly incident to d to different vertices on one fixed side of the grid \Gamma d .Given the fixed plane embedding of G, these edges can be connected to \Gamma d in an order preserving planarity.Let G \prime be the resulting graph; we treat (G \prime , \scrM ) as an Sym-Dir-NDP instance.
Consider now a feasible solution to the natural LP relaxation of Sym-Dir-EDP on (G, \scrM ) (i.e., an relaxation as we use for Sym-Dir-NDP, but with capacity constraints on edges instead of vertices).It is easy to see that this solution, scaled down by 1/2, can be modified to obtain a feasible solution to the LP relaxation of Sym-Dir-NDP on (G \prime , \scrM ) by appropriately routing the flow passing through v in G via the grid \Gamma v in G \prime .
Indeed, to see this, without loss of generality, assume that the edges incident with v have been attached in G \prime to the top row of the grid \Gamma v and an edge e incident with v in G has been attached to the endpoint y e of a column C e of \Gamma d .For every such e, additionally pick a private row R e of \Gamma d , and redirect the flow incoming along e and leaving via e \prime in G via the column C e , row R e , and column C e \prime .Since the flow in G \prime has been rescaled by 1/2, the total flow redirected along column C e is at most 1/2 (because in G a flow of at most 1 passes e) and for the same reason the total flow redirected along row R e is also at most 1/2.
Consequently, the optimum value of the LP relaxation of Sym-Dir-NDP on (G \prime , \scrM ) is at least half of the optimum value of the LP relaxation of Sym-Dir-EDP on (G, \scrM ).We now use our algorithm for Sym-Dir-NDP on the instance (G \prime , \scrM ), obtaining a congestion-5 routing of a number of terminal pairs within polylogarithmic factor of the optimum value of the LP relaxation.Finally, it is straightforward to project this routing back to edge-disjoint paths (with the same congestion) in G.
2.3.Multicommodity flows and sparse node separators.We represent a multicommodity flow instance as a demand vector d that assigns a demand d(u, v) \in for each pair (u, v), where w : V \rightar \BbbR + is a weight functions on the vertices of G. (Note that product multicommodity flows are symmetric.)We say that d is routable if there is a feasible multicommodity flow in G that routes d(u, v) units of flow from u to v for each pair (u, v).
We recall the following two quantities associated with a symmetric multicommodity flow instance: the maximum concurrent flow and the sparsest node separator.The maximum concurrent flow is the maximum value \lambda \geq 0 such that \lambda d is routable.A node separator is a set C \subsete V of nodes.The minimum sparsity of a node separator is an upper bound on the maximum concurrent flow.The flow-cut gap in G is the maximum value---over all symmetric multicommodity flow instances d in G---of the ratio between the minimum sparsity of a node separator and the maximum concurrent flow.The flow-cut gap in any graph is O(log 3 k), where k is the number of commodities (each pair (u, v) with nonzero demand is a commodity) [33].For product multicommodity flows, the flowcut gap is O(log k) and there is a polynomial time algorithm that, given a product multicommodity flow instance d in G, constructs a node separator C whose sparsity is at most O(log k)\lambda , where \lambda is the maximum concurrent flow for d [35]; we use such an algorithm in a black box fashion in the well-linked decomposition step described in the following subsection.
2.4.Well-linked sets and decompositions.Here we discuss several useful notions of well-linkedness in directed graphs.The corresponding definitions for the case of undirected graphs can be found in [10,6].There are several notions of well-linked sets that have been studied in the literature.In this paper, we work with cut welllinked sets; for simplicity, we refer to these sets as simply well-linked.(There is also a notion of flow well-linkedness, and the two notions are related via the flow-cut gap [7].) We consider two variants of well-linked sets, edge well-linked sets and node welllinked sets.(The two notions are related via the maximum degree of the graph, as we remark below.) A set X \subsete V is edge (resp., node) well-linked in G if, for any two disjoint subsets Y and Z of X of equal size, there exist | Y | edge-disjoint (resp., node-disjoint) paths from Y to Z in G such that every node in Y is the start vertex of exactly one path and every node in Z is the end vertex of exactly one path.(Note that the well-linkedness guarantees that there exist paths routing Y to Z but we do not have any control over how Y is matched to Z.) An equivalent definition of edge well-linkedness is the following.The set X is edge well-linked if, for any cut (A, Here \delta out (A) is the set of edges leaving A. If the nodes of X have degree 1 in G, one can give the following equivalent definition of well-linkedness.A node separation is a partition V = A \uplus B \uplus C such that there is no edge between A and B. The set X is node well-linked if, for any node separation (A, B, C) satisfying X \cap C = \emptyse , we have These equivalent definitions make it straightforward to extend the notions of welllinkedness to the fractional setting.
Let \pi : X \rightar [0, 1] be a weight function on X.The set X is \pi -edge-well-linked if, for any cut (A, Clearly, if X is \pi -node-well-linked in G, then X is also \pi -edge-well-linked.Conversely, if X is \pi -edge-well-linked in G, then X is \Omega (\pi /\Delta )-node-well-linked in G, where \Delta is the maximum degree of G. Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.php The work of [7] gives the following well-linked decomposition and clustering procedure for directed graphs.
Theorem 2.1 (see [7]).Let OPT be the value of a solution to Sym-Dir-NDP LP for a given instance (G, \scrM ) of Sym-Dir-NDP.Let \gamma = \gamma (G) \geq 1 be an upper bound on the worst case flow-cut gap for product multicommodity flows in G.There is a partition of G into node-disjoint induced subgraphs G 1 , G 2 , . . ., G \ell and weight functions \pi i : V (G i ) \rightar \BbbR + with the following properties.Let \scrM i be the induced pairs of \scrM in G i and let X i be the endpoints of the pairs in \scrM i .We have (a) \pi i (u) = \pi i (v) for each pair uv \in \scrM i , and the support of \pi i is contained in \sum \ell i=1 \pi i (X i ) = \Omega (OPT/(\gamma log OPT)) = \Omega (OPT/ log 2 k).Moreover, such a partition is computable in polynomial time if there is a polynomial time algorithm for computing a node separator with sparsity at most \gamma (G) times the maximum concurrent flow.

The cut-matching game.
Another key tool that we use is the cut-matching game of KRV [32]; Louis [36] provides an extension of the cut-matching game to directed graphs.
We define the directed cut expansion of a cut (A, V \setminu A) in a graph G = (V, E) to be \Phi (A) := | \leq 1 for every vertex v \in V .We say that M is a directed matching from Y to Z if M is a directed matching and each edge of M is directed from a node in Y to a node in Z.A directed matching from Y to Z is perfect if each node of Y \cup Z is incident to exactly one edge of M .
In the cut-matching game, there is a set V of nodes, where | V | is even, and there are two players, the cut player and the matching player.The goal of the cut player is to construct a directed edge-expander in as few iterations as possible, whereas the goal of the matching player is to prevent the construction of the edge-expander for as long as possible.The two players start with a graph \scrX with node set V and an empty edge set.The game then proceeds in iterations, each of which adds a set of edges to \scrX .In iteration j, the cut player chooses a partition (Y j , Z j ) of V such that | Y j | = | Z j | and the matching player chooses a directed perfect matching M j that matches the nodes of Y j to the nodes of Z j .The edges of M j are then added to \scrX .Louis, building on the work of [32], showed that there is a strategy for the cut player that guarantees that after O(log 2 (| V | )) iterations the graph \scrX is a directed 1/2-edge-expander.We note that, given the symmetry in the definition of the expansion, the cut-player in round j can give a partition (Y j , Z j ) and also (Z j , Y j ), and ask the matching player to provide two directed matchings.In fact Louis's cut-player has this property.This ensures that the graph is Eulerian after each round.
2.6.Planar graphs.By \Pi we denote the Euclidean plane.A planar graph is a graph that can be drawn on a plane; a plane graph is a planar graph, given together with its (one, fixed) planar embedding which maps vertices of the graph to points in the plane and edges to curves that can only intersect at the vertices.
Curves.For a closed Jordan curve \gamma and a point p \in \Pi \setminu \gamma , by \zeta p (\gamma ) \in \BbbZ we denote the element of the fundamental group of \Pi \setminu \{ p\} , where \gamma belongs (with the convention that a clockwise cycle around p is the +1 element).
If \zeta p (\gamma ) \not = 0, then we say that \gamma strictly encloses a point p; note that this definition is consistent with the usual understanding of enclosure if \gamma is without self-intersections.We say that \gamma encloses a point p \in \Pi if p \in \gamma or \gamma strictly encloses p.
This notion naturally generalizes to (strict) enclosure of vertices, edges, and faces; in every such case, we require that every point of an edge or a face is (strictly) enclosed by a curve.Furthermore, we treat a face as an open subset of the plane, without its boundary vertices and edges.Also, given a closed walk or a cycle in a graph, when we say that the walk or a cycle (strictly) encloses some object, we mean that the closed curve along the walk or cycle (strictly) encloses it.Furthermore, for a closed curve \gamma without self-intersections, we say that a point p \in \Pi is to the left/right of \gamma if p / \in \gamma and p belongs to the connected part of \Pi \setminu\gamma that is to the left or right of \gamma , respectively.
A sequence C 1 , C 2 , . . ., C r of cycles in a directed or undirected plane graph is called concentric if they are pairwise vertex-disjoint and C i encloses C j if and only if i \leq j.
For some reasonings about cuts in planar graphs, it is helpful to look at the dual of the graph.For us, it is most convenient to formalize such reasonings using Jordan curves.A Jordan curve \gamma is in general position with respect to the plane graph G if it has finite number of intersections with G, its starting point and ending point do not belong to G, and whenever a point p lies both on \gamma and in the interior of an edge e \in E(G), then \gamma traverses the edge e at this point.(That is, in a small neighborhood of p, the edge e splits the neighborhood into two parts, where one part contains points on \gamma immediately before p, and the second part contains points on \gamma immediately after p.) A face-edge curve in a plane digraph G is a Jordan curve in general position that does not traverse any vertex of G.
For a curve \gamma in general position with respect to G, we introduce the following notions.Assume \gamma intersects an edge e while going from a face f to a face f \prime .If e has the face f on the right and the face f \prime on the left, then we say that e crosses \gamma from left to right and, otherwise, if e has the face f on the left and the face f \prime on the right, then we say that e crosses \gamma from right to left.By cross L\rightarR (\gamma ) and cross R\rightarL (\gamma ) we denote the number of times an edge crosses \gamma from left to right and from right to left, respectively; note that in these numbers we may count one edge multiple times, one for each moment \gamma crosses the edge.
Balance.For a vertex v in a digraph G, the imbalance of v is the number imb , the difference between the in-degree and out-degree of v in G.A graph is balanced if imb G (v) = 0 for every v \in V (G), and Eulerian if it is additionally weakly connected.(A directed graph is weakly connected if its underlying undirected graph is connected.)Furthermore, let the imbalance of a curve \gamma in a general position with respect to G be imb(\gamma ) = cross L\rightarR (\gamma ) -cross R\rightarL (\gamma ).
The following lemma can be proved in a standard way by induction: the lemma is immediate for a curve \gamma enclosing once a single vertex v (i.e., with \zeta v (\gamma ) = \pm 1), while Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.php the statement supports an inductive step following the structure of the fundamental group of the plane punctured at the vertices of V (G).
Lemma 2.4.Let \gamma be a closed face-edge curve in a plane digraph G. Then Proof.First, note that we can assume that \gamma has a finite number of intersections; if this is not the case, then we can slightly perturb \gamma without changing any of the quantities in (2.1).
We prove the statement by induction on the number of self-intersections, the number of enclosed vertices, and the number of arc crossings, lexicographically.
For the base cases, note that the statement is straightforward for curves completely contained in a face of G, curves without self-intersections that intersect only one arc twice in opposite directions, and curves \gamma that enclose a single vertex v such that \zeta v (\gamma ) = \pm 1 and \gamma intersects every nonloop arc incident to v exactly once.
Let now \gamma be as in the lemma statement and assume that \gamma does not fall under any of the base cases.
If \gamma has a self-intersection, we can split \gamma at a self-intersection point into two closed curves \gamma 1 and \gamma 2 .Then, both \gamma 1 and \gamma 2 have strictly less self-intersections than \gamma , and (2.1) holds for them.If we add these two equations for \gamma 1 and \gamma 2 , we obtain (2.1) for \gamma .Thus, henceforth we assume that \gamma is without self-intersections.
If \gamma visits the same face twice, let \gamma \prime be a simple curve connecting two points in two subsequent visits on the face in question that does not intersect neither G nor \gamma except for the endpoints.Let \gamma 1 and \gamma 2 be the two parts of \gamma , separated by the endpoints of \gamma \prime .For i = 1, 2, let \gamma \prime i be a closed curve formed by \gamma i and possibly reversed curve \gamma \prime .Then, note that each curve \gamma \prime i is without self-intersections, encloses a subset of the vertices enclosed by \gamma , and has strictly less intersections with G than \gamma .Consequently, the statement (2.1) holds for \gamma \prime i .If we add up these equations for \gamma \prime 1 and \gamma \prime 2 , the contribution of \gamma \prime cancels (it is reversed in exactly one of the curves \gamma \prime i ), and we obtain (2.1) for \gamma .
Otherwise, note that by the assumption that \gamma does not fall under any of the base cases and visits every face at most once, \gamma intersects at least one arc, and intersects every arc at most once.We pick an arc e intersected by \gamma .By the assumed properties of \gamma , exactly one endpoint of e is enclosed by \gamma ; let it be v.Construct a curve \gamma \prime that starts at a point of \gamma on one side of the intersection of \gamma and e, goes around the vertex v sufficiently close to v such that it intersects every arc incident to v except for e exactly once, and then meets \gamma on the other side of the intersection of \gamma and e.
We have again a curve \gamma \prime that is enclosed by \gamma that does not intersect \gamma except for the endpoints.Let \gamma i and \gamma \prime i be defined as previously for i = 1, 2, and without loss of generality assume that \gamma 1 is the ``short"" part of \gamma that crosses only e. Now, \gamma \prime 1 falls under the base case of the induction (it encloses only v), while \gamma \prime 2 encloses strictly less vertices than \gamma , as it no longer encloses v. Consequently, we can apply the inductive hypothesis for both \gamma \prime 1 and \gamma \prime 2 , and derive (2.1) for \gamma as previously.This finishes the proof of the lemma.Lemma 2.6.Given a plane digraph G, two distinguished faces f in and f out , and an integer k, one can in linear time find either (a) a family of directed vertex-disjoint cycles C 1 , C 2 , . . ., C k , all having f in to the right and f out to the left, or (b) a curve \gamma in general position with respect to G, that starts in f in , ends in f out , intersects at most k vertices, and satisfies cross L\rightarR (\gamma ) = 0.
Proof.Define the following auxiliary directed plane digraph H (see Figure 3).The vertex set of H consists of the set of faces and vertices of G.For every edge e of G, we construct an edge of weight 0 pointing from the face to the left of e to the face to the right of e. Furthermore, for every vertex v of G and every face f incident to v, we construct an edge (v, f ) of weight 0 and edge (f, v) of weight 1.We construct the graph H and perform a single-source shortest path search from f in ; since the weights are 0 and 1, these steps can be done in linear time by contracting the zero-weight edges and running breadth first search.When we speak later in this proof about distances between faces or vertices of G, we mean distances in the auxiliary graph H.
Let d be the distance from f in to f out .We will show that if d < k, then we can find the desired curve \gamma , and if d \geq k, we can find the desired k cycles.Observe that if a face f is within distance exactly \delta from f in , then it is easy to construct a curve \gamma in general position with respect to G that starts in f in , ends in f , intersects exactly \delta vertices, and satisfies cross L\rightarR (\gamma ) = 0. Indeed, consider a simple path P in H of weight \delta that starts in f in and ends in f .Let f in = f 0 , f 1 , . . ., f r = f be consecutive faces visited by P .We construct a curve \gamma that visits the same faces in the same order as follows.Fix an index 0 \leq i < r.By the construction of H, the path P goes from f i to f i+1 either via a direct edge of weight 0 or via a vertex v i incident both to f i and f i+1 in G.In the former case, the definition of H implies that there is an arc e i in G that has f i to the left and f i+1 to the right.We let \gamma cross e i to go from f i to f i+1 ; note that this keeps cross L\rightarR (\gamma ) = 0.In the latter case, the definition of H implies that P goes along arcs (f i , v i ) and (v i , f i+1 ) of H, out of which one arc is of weight 1 and one arc is of weight 0. We let \gamma traverse v i to go from f i to f i+1 ; since the weight of P is \delta , the curve \gamma traverses exactly \delta vertices.Finally, since P is simple, \gamma is without self-intersections.Consequently, if d < k, we obtain a curve \gamma as in case (2) of the lemma statement.
Therefore we may assume that d \geq k.We show that one can construct a family of d vertex-disjoint cycles, all having f in to the right and f out to the left.To this Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.phpend, we show that for every 1 \leq i \leq d, one can construct one such cycle using only vertices within distance exactly i from f in .Fix such an index i.Let V i be the set of vertices of G within distance exactly i from f in and let G i be the subgraph of G with V (G i ) = V i and e \in E(G i ) if and only if one of the faces incident to e has distance (from f in ) less than i and the other has distance at least i.
Consider an edge e \in E(G i ) that has on one side a face f \geq within distance at least i from f in , and on one side a face f < within distance less than i.We make the following observations.
Since H has a zero weight edge from the left of e to the right of e, f \geq is on the left of e and f < is on the right of e.
Let v be the head of e.Since we can reach f < from f \geq in H using the edges f < \rightar v of cost 1 and v \rightar f \geq of cost 0, it follows that the distance from f in to f < is equal to i -1 and the distance from f in to f \geq is equal to i. Additionally, the distance from f in to v is equal to i: the distance is at least i due to the cost-0 edge (v, f \geq ), and it is at most i due to the cost-1 edge (f < , v).Therefore v \in V i .
Let f be the face of G i that contains f out .We claim that every face of G that is contained in f is within distance at least i from f in .Let f \prime be any face of distance less than i, and let P be any undirected path in the dual of G from f out to f \prime .Since f out has distance at least i, and f \prime has distance less than i, there exists an arc e \ast on P whose primal copy e belongs to G i .Since the choice of P is arbitrary, f \prime does not lie in the same face of G i as f out .Thus, in particular, f in is not contained in f .Furthermore, every edge e incident to the face f has f to its left (since e \in E(G i ) and f contains faces of G that are within distance at least i from f in ), and the face of G to the right of e is within distance less than i from f in .
Moreover, observe that if a vertex v \in V (G) is within distance at most j from f in for some j, then so is every face incident to v. Consequently, f is either isomorphic to an open disc, or is isomorphic to a complement of a closed disc (i.e., if we treat the embedding of G as an embedding on a sphere, f is always isomorphic to an open disc).Let C be the (undirected) cycle around f in the graph G i .Since every face of G that is contained in f is within distance at least i from f in , by the definition of G i we have that C is in fact a directed cycle that has f on its left and f in on its right.This finishes the proof of the lemma.

2.7.
A lemma on Eulerian digraphs.We conclude with the following lemma that encapsulates the main property of Eulerian digraphs that make them similar to undirected graphs.The lemma has been used previously, e.g., in [26]; we include its proof for the sake of completeness.
Lemma 2.7.Let G be an Eulerian digraph of maximum in-degree \Delta , let G UN be the undirected graph underlying G, let A, B \subsete V (G), and let \ell be an integer.If there exist (\Delta + 1)\ell + 1 (undirected) vertex-disjoint paths from A to B in G UN , then there exist \ell + 1 directed ones in G as well.
Proof.Assume there do not exist \ell + 1 directed vertex-disjoint paths from A to B in G.By Menger's theorem, there exist sets A \prime , B \prime \subsete V (G) with A \subsete A \prime , B \subsete B \prime , A \prime \cup B \prime = V (G), | A \prime \cap B \prime | \leq \ell , and no arc of G has its tail in A \prime \setminu B \prime and its head in B \prime \setminu A \prime .Let d be the number of arcs with a tail in B \prime \setminu A \prime and a head in A \prime \setminu B \prime .Observe that if there exist (\Delta + 1)\ell + 1 undirected vertex-disjoint paths from A to B in G UN , then d \geq \Delta \ell + 1, as only \ell of these paths can go through | A \prime \cap B \prime | .
Thus, there are at least \Delta \ell + 1 arcs going from B \prime to A \prime \setminu B \prime .However, since the maximum in-degree of G is \Delta , there are at most \Delta | A \prime \cap B \prime | \leq \Delta \ell arcs with tail Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.php in A \prime \setminu B \prime and head in B \prime .This is in contradiction with the assumption that G is Eulerian, as in an Eulerian digraph the number of arcs from A \prime \setminu B \prime to B \prime and from B \prime to A \prime \setminu B \prime should be the same.
3. Reduction to Eulerian graphs with small degree.In this section, we show that Sym-Dir-NDP in directed planar graphs can be reduced to Sym-Dir-NDP in directed planar multigraphs that are Eulerian and of maximum degree O(log 2 k), where k is the number of pairs in the Sym-Dir-NDP instance.
The reduction combines the well-linked decomposition framework of [7,10] and the cut-matching game of [36,32] given in the preliminaries section.
Let (G, \scrM ) be an instance of Sym-Dir-NDP on a directed planar graph G = (V, E).First, we solve the LP relaxation (Sym-Dir-NDP LP) and obtain a fractional solution (f, x).Using Theorem 2.1 together with the algorithm of [35] for computing a sparse node separator, we construct in polynomial time a decomposition (G 1 , \pi 1 ), . . ., (G \ell , \pi \ell ).Using Theorem 2.2 on each instance (G i , \pi i ), we construct in polynomial time an instance (G i , \scrM \prime i ) in which the terminals of \scrM \prime i are \Omega (1)-nodewell-linked.In the following, we consider each of these subinstances separately and, for each instance (G i , \scrM \prime i ), we construct an instance (G \prime i , \scrM \prime \prime i ) such that G \prime i is an Eulerian multigraph on the same vertex set as G i and \scrM \prime \prime i \subsete \scrM \prime i .Consider an instance (G, \scrM ) in which the terminals of \scrM are \Omega (1)-node-welllinked.Let k = | \scrM | .We use the cut-matching game to construct a directed edgeexpander \scrX = (\scrT , F ), where \scrT is the set of terminals of \scrM , and an embedding of \scrX into G.For the cut player, we use the strategy guaranteed by Theorem 2.3.We implement the matching player as follows.Consider an iteration j and let (Y j , Z j ) be the partition of \scrT chosen by the cut player.Since \scrT is \Omega (1)-node-well-linked in G, there is a collection of paths \scrP j from Y j to Z j and a collection of paths \scrQ j from Z j to Y j such that each node of G appears in O(1) of the paths in \scrP j \cup \scrQ j .The paths \scrP j define a directed matching M j between Y j and Z j , where an edge (u, v) \in M j corresponds to a path in \scrP j from u to v. Similarly \scrQ j defines a directed matching M \prime j between Z j and Y j .Assuming that the cut-player gives both (Y j , Z j ) and (Z j , Y j ) in round j we can return M j and M \prime j as the response of the matching player.In the general setting where the cut-player may only give the partition (Y j , Z j ), we can let M j be the response of the matching player but add the paths in \scrP j \cup \scrQ j even though \scrQ j is not immediately relevant.The advantage of adding both sets of paths is that we maintain Eulerianness of the graph.
We run the cut-matching game with the above strategies for the cut and matching player for \gamma cmg (k) = O(log 2 k) rounds, where k = | \scrM | , in order to obtain a graph \scrX = (\scrT , F ).The paths \{ \scrP j \cup \scrQ j : 1 \leq j \leq \gamma cmg (k)\} give us an embedding of \scrX into G with O(log 2 k) node congestion that maps each vertex of \scrX to its corresponding node in G and it maps each edge of \scrX to a path in G.
Let H be the multigraph on the same vertex set as G obtained by taking the union of the paths \{ \scrP j \cup \scrQ j : 1 \leq j \leq \gamma cmg (k)\} ; if an edge appears in more than one path, we make multiple copies of the edge.Proof.The first two properties are immediate from the construction of \scrX .Now suppose that \scrX is a directed 1/2-edge-expander.(Recall that this event holds with high probability.)Note that this implies that \scrT is 1/2-edge-well-linked in \scrX .Since \scrX Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.phpThe (t -2) vertices of degree three in the top row of a t \times t wall \Gamma are called the interface of the wall, denoted I \Gamma .Theorem 4.1 (see [10,Theorem 4.5]).There is a polynomial-time algorithm that given an undirected planar graph H, \alpha \in (0, 1], and an \alpha -node-well-linked set X in H, finds an integer t = \Omega (\alpha | X| ), a subdivided t \times t wall \Gamma in H, and a family of t node-disjoint paths connecting X and the interface of \Gamma .
In our construction we do not need the entire structure of a subdivided wall, but only part of it, as in the following immediate corollary (see Figure 5).Corollary 4.2.One can in polynomial time find an integer r = \Omega (\alpha | X| ) and a sequence of node-disjoint concentric undirected cycles C 1 , C 2 , . . ., C r in G UN with C 1 being the outermost and C r being the innermost cycle, with the additional property that for every 1 \leq i \leq r there exists r vertex-disjoint paths in G UN from X to V (C i ).
Isles S out and S in .Let us fix a choice of r and cycles C 1 , C 2 , . . ., C r stemming from Corollary 4.2.For a while, we work only with the undirected graph G UN .Our goal is to strengthen the requirement of the existence of many undirected paths between X and the innermost and outermost cycles by getting more properties about their endpoints, so that we can use an argument similar to the one of [26] to reason about the existence of directed concentric cycles with similar connectivity toward X.
To this end, we identify two small connected parts of G UN , S out , and S in , one around C 1 and one around C r .The parts will be large enough so that there is a substantial number of vertex-disjoint directed paths between them and X, but small enough so that they are placed very locally in the graph, and their boundary is small.This last property ensures that after deletion of these parts, the graph is close to Eulerian, and we can make use of Lemma 2.4.Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.phpFor a vertex set Q \subsete V (G UN ), a vertex v / \in Q, and an integer \ell \geq 2\Delta , we say that a vertex set S is a (v, Q, \ell )-isle if v \in S, G UN [S] is connected, S \cap Q = \emptyse , and | N G UN (S)| \leq \ell . 4We will rely on the following greedy procedure, that is inspired by the enumeration algorithm for important separators in parameterized complexity (cf.[13] and [20,Chapter 8]).
Proof.We perform the following iterative procedure.Start with S = \{ v\} ; clearly, S is a (v, Q, \ell )-isle, as v / \in Q by assumption and the maximum in-degree of G is \Delta .In an iterative step, we assume that S is a (v, Q, \ell )-isle, and our goal is to check if S is an inclusionwise maximal one, or produce a (v, Q, \ell )-isle S \prime with S \subsetn S \prime .
To this end, consider every w \in N G UN (S) \setminu Q; note that, by the connectivity of S \prime and S, there exists such w that is contained in S \prime \setminu S for every isle S \prime we are looking for.Collapse in G UN the set S \cup \{ w\} into a single vertex s and add a supersource vertex t adjacent to all vertices of Q.Let G \prime be the resulting (undirected) graph.Find a minimum s - t vertex cut Z in G \prime of size at most \ell , or conclude that such a minimum cut is of size larger than \ell ; using the Ford--Fulkerson algorithm, we can do so after \scrO (\ell ) augmentations, using a total time of \scrO (\ell n).Moreover, within this time we can find the minimum cut closest to t, that is, the unique one with an inclusionwise maximal set of vertices remaining in the connected component with the vertex s (cf.[20]).
If such a cut is found, let S \prime be the subset of vertices of G corresponding to the connected component of G \prime \setminu Z containing the vertex s.Clearly, N G UN (S \prime ) = Z, and S \prime is a (v, Q, \ell )-isle containing S and w.Otherwise, we conclude that no (v, Q, \ell )-isle containing both S and w exists, since for every such isle S \prime , the set N G UN (S \prime ) is an s -t cut in G \prime of size at most \ell .
The computation for fixed S and w takes \scrO (\ell n) time.Since S is an (v, Q, \ell )-isle, there are at most \ell vertices w to try.Due to the fact that we always take the s -t cut closest to t, the size of the set N G UN (S) strictly grows at every iteration (possibly except the first one, when S = \{ v\} ).Consequently, there are at most \ell + 1 iterations of the procedure, and the running time bound follows.
We pick an arbitrary vertex v out on C 1 and an arbitrary vertex v in on C r and use Lemma 4.3 for each of these vertices, the set Q := X, and threshold \ell := \lfloor r/(4\Delta +2)\rfloor ; recall that | X| = \Omega (\Delta 2 /\alpha ) by the assumptions of Theorem 1.3, and thus we may assume \ell \geq 2\Delta .Let S out and S in be the two isles obtained.Since \ell < r, and every cycle C i is connected with r vertex-disjoint paths to X, no cycle C i is contained in either S out or S in .Since an isle is connected, we obtain the following.
Lemma 4.4.The isle S out does not contain any vertex that is enclosed by C \ell +1 , and the isle S in does not contain any vertex that is not strictly enclosed by C r - \ell .
Proof.The proofs for S in and S out are symmetrical, so we just focus here on the case of S out .Assume to the contrary that S out contains a vertex enclosed by C \ell +1 .Since v out \in S out and by the connectity of S out , S out contains a vertex from every cycle C i , 1 \leq i \leq \ell + 1.Since | N G UN (S out )| \leq \ell , for some 1 \leq i \leq \ell + 1 we have that V (C i ) is completely contained in S out .However, recall that there are r > \ell vertex-disjoint paths in G UN connecting C i with X.This contradicts the facts that S out \cap X = \emptyse and | N G UN (S out )| \leq \ell .By Lemma 4.4, the isles S out and S in are somewhat local in the graph: they do not go too deep into the set of cycles C 1 , C 2 , . . ., C r .On the other hand, recall that they are inclusionwise maximal isles; by the next lemma, this ensures that they are connected by a large number of vertex-disjoint undirected paths to the set X. Let ]. Lemma 4.5.In G UN , there are \ell + 1 node-disjoint undirected paths connecting W out and X and \ell + 1 node-disjoint undirected paths connecting W in and X.
Proof.By symmetry, we can focus on the case of W out .The intuition is as follows: if there do not exist sufficiently many node-disjoint paths, then the corresponding cut would allow us to construct a strictly larger isle, a contradiction to the maximality of S out .In some sense, N G UN (S out ) is the ``last bottleneck"" of size at most \ell between v out and X, and, after passing it, we should have more than \ell paths between X and Formally, assume the contrary of the lemma statement; by Menger's theorem, there exist vertex sets A, B \subsete V (G UN ) such that A \cup B = V (G UN ), | A \cap B| \leq \ell , W out \subsete A, X \subsete B, and no edge of G UN has one endpoint in A \setminu B and the second endpoint in B \setminu A.
Recall that S out \cap X = \emptyse by the definition of an isle, while N 2 G UN [S out ] = W out \subsete A. Hence we may assume that (N G UN [S out ] \setminu X) \subsete (A \setminu B), as removing all vertices of N G UN [S out ] \setminu X from B would not invalidate any of the properties of the pair (A, B).Recall also that G UN [S out ] is connected; let S A be the vertex set of the connected component of G UN \setminu (A \cap B) containing S out .Clearly, S A \subsete A \setminu B, so S A \cap X = \emptyse .Furthermore, N G UN (S A ) \subsete A \cap B, so | N G UN (S A )| \leq \ell .As S out \subsete S A , by the maximality of S out , we infer that S A = S out .Since N G UN [S out ] \setminu X \subsete S A , we infer that N G UN (S out ) \subsete X.However, this is a contradiction, as G UN is connected and S out \subsetn V (G UN ) \setminu X.
Finding directed concentric cycles.
We now use the undirected cycles C 1 , C 2 , . . ., C r to find a large number of node-disjoint directed concentric cycles separating S in and S out .Recall that \ell := \lfloor r/(4\Delta + 2)\rfloor .
Lemma 4.6.One can in polynomial time find \lceil \ell /2\rceil node-disjoint directed concentric cycles, all going in the same direction (all clockwise or all counterclockwise), such that all vertices of S in are strictly enclosed by the innermost cycle, and none of the vertices of S out are enclosed by the outermost cycle, or vice versa, with the roles of S in and S out swapped.
).Let f out and f in be the faces of G \prime that contain S out and S in , respectively; by Lemma 4.4, the cycle C \lceil r/2\rceil remains in G \prime and f out \not = f in .Furthermore, the vertices of N 2 G UN (S out ) lie on the face f out of G \prime , and the vertices of N 2 G UN (S in ) lie on the face f in .We apply Lemma 2.6 twice to the graph G \prime and the requirement of \ell cycles, once for the pair of faces (f out , f in ) and once for the pair (f in , f out ).If at least one of the applications returns a family of cycles, then we are done, as every cycle encloses either S in or S out .Thus, we are left with the case when both the applications return a curve; let us denote these curves \gamma 1 and \gamma 2 , respectively.
Before we proceed to the formal calculations leading to a contradiction, let us give some intuition.The curves \gamma 1 and \gamma 2 are very skewed in terms of the directions of edges crossing it: only edges in one direction are allowed, while in the second direction only \ell vertices are allowed, and every vertex is of maximum in-degree \Delta .The locality of isles S out and S in (Lemma 4.4) implies that \gamma 1 and \gamma 2 cross most of the cycles C i ; Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.phpBelow we build upon the high-level scheme and provide details of more careful schemes that result in improved congestion bounds.We provide two proofs.In our opinion, the first one is more natural and easier to understand, but it yields a worse congestion guarantee of 6.The second one is slightly more involved, but it achieves the promised congestion of 5.
Both proofs use the following flow-augmentation procedure.
Lemma 5.2 (see [11,Theorem 2.1]).Let G be a directed graph with integer edge capacities.Given a flow h in G that goes from set X \subsete V (G) to a single vertex u \in V (G), such that for every v \in X the amount of flow originating in v is h(v), and a vertex v 0 \in X such that h(v 0 ) is not an integer, one can in polynomial time compute a flow h \prime in G, sending h \prime (v) amount of flow from every v \in X to u, such that As node-and edge-capacitated flows are equivalent in the directed case, Lemma 5.2 applies also to node-capacitated flows.Furthermore, observe that the conditions of Lemma 5.2 imply that

The first proof.
If | X| = \scrO (\Delta 2 /\alpha ), it suffices just to route one terminal pair.This is always possible since X is in a strongly connected component and we can route one pair with congestion 2. Otherwise, we apply Theorem 1.3 to obtain concentric directed cycles C \prime 1 , C \prime 2 , . . ., C \prime q , sets Y + , Y -, and path families \scrP + and \scrP -satisfying | Y + | = | Y -| = \Omega (\alpha 2 | X| /\Delta 2 ) and q = \Omega (\alpha | X| /\Delta ).By symmetry, we assume that the first outcome of Theorem 1.3 happens: no cycle C \prime i encloses any vertex of Y + \cup Y -, and the paths from \scrP + \cup \scrP -have one of their endpoints on the innermost cycle C \prime q .Recall that \scrM is a matching on the terminals.Therefore, we can construct, in a greedy manner, a subset \scrM 1 of | Y + | /2 = | Y -| /2 terminal pairs, such that for every pair \{ s, t\} in \scrM 1 we have s \in Y + ; we will henceforth refer to the terminal s as the s-terminal of the pair \{ s, t\} , and to t as the t-terminal.Let X 1 = V (\scrM 1 ), and partition X 1 = X \tts \uplus X \ttt by putting the s-terminal of every terminal pair into X \tts and the t-terminal into X \ttt .
Since X is \alpha -node-well-linked, there exists a flow f + sending \alpha | Y + | amount of flow from X 1 to Y + , such that every vertex of X 1 sends \alpha amount of flow and every vertex of Y + receives \alpha amount of flow.Similarly, there exists a flow f -from Y - to X 1 , such that every vertex of Y -sends \alpha amount of flow, and every vertex of X 1 receives \alpha amount of flow.The partition X 1 = X \tts \uplus X \ttt naturally induces a split of the flows into f + = f + \tts + f + \ttt and f -= f - \tts + f - \ttt ; as X \tts \subsete Y + , we assume that f + \tts is a trivial flow with zero-length flow paths.
We now apply the rounding procedure of Lemma 5.2.We observe that if we add a supersource being an out-neighbor of every vertex in Y + , then the (naturally extended) flow f + \ttt satisfies the assumptions of Lemma 5.2; a similar statement holds for Y -and the reversed flows f - \tts and f - \ttt in the reversed graph G.We note that we apply the lemma in three separate copies of G.If this amount of flow is integral for every pair \{ s, t\} \in \scrM 1 , we stop the rounding algorithm.Otherwise, we pick a pair \{ s, t\} for which it is not integral, and apply Lemma 5.2 separately to s in f - \tts and to t in f + \ttt and in f - \ttt .Let g - \tts , g + \ttt , and g - \ttt be the computed flows.To maintain the invariant (5.2), we artificially restrict the flows such that for every \{ s \prime , t \prime \} \in \scrM 1 , the amounts of flow originating in t \prime in g + \ttt , received by s \prime in g - \tts and received by t \prime in g - \ttt , are equal to the minimum of these three numbers, and proceed further with the flows g + \ttt , g - \tts , and g - \ttt .The procedure stops after at most | \scrM 1 | steps, as in every step the number of terminal pairs \{ s, t\} , where the amount of flow originating in t in f + \ttt is integral, strictly increases.Furthermore, consider a step and let \gamma be the amount of flow in f + \ttt originating in t.Then, applying Lemma 5.2 caused a decrease of at most (1 -\gamma ) of the total flow value originating from sources other than t, due to (5.1).Due to the artificial restriction of other flows to maintain the invariant (5.2), this decrease also applies to f - \tts and f - \ttt .Since we apply Lemma 5.2 three times, the total decrease in each of these flows is at most 3(1 -\gamma ).Consequently, if h + \tts , h + \ttt , h - \tts , and h + \ttt are the flows after the aforementioned rounding procedure terminates, then | h + \tts | \geq | f + \tts | /3 = \Omega (\alpha | Y + | ) = \Omega (\alpha 3 | X| /\Delta 2 ).Let \scrM 2 \subsete \scrM 1 be the set of pairs \{ s, t\} for which h + \ttt sends a positive amount of flow from t to Y + .We infer that the flows h + \ttt , h - \tts , and h - \ttt correspond to three families of node-disjoint paths: \scrP + \ttt going from the t-terminals of \scrM 2 to Y + , \scrP - \tts going from Y -to the s-terminals of \scrM 2 , and \scrP - \ttt going from Y -to the t-terminals of \scrM 2 .Note that paths between the families may intersect.For every terminal pair \{ s, t\} \in \scrM 2 , pick two private cycles C \prime i and C \prime j , and \bullet route the path from s to t via a path in \scrP + starting in s, the cycle C \prime i , and a concatenation of a path of \scrP -and path in \scrP - \ttt , ending in t, \bullet route the path from t to s via a path in \scrP + \ttt starting in t, continuing along a path in \scrP + , the cycle C \prime j , and a concatenation of a path in \scrP -and a path in \scrP - \tts ending in s.Clearly such a routing routes all pairs in \scrM 2 .To see that it has the promised congestion 6, note that any node u is contained in at most one path from each of the families \scrP + , \scrP -, \scrP + \ttt , \scrP - \tts , \scrP - \ttt , and in at most one of the concentric cycles.Furthermore, | \scrM 2 | = | h + \ttt | = \Omega (\alpha 3 | X| /\Delta 2 ).This concludes the proof of Theorem 1.4 (with congestion 6).5.2.The second proof.First, let us enhance Lemma 5.2 to the following form.This is in fact very similar to the use of Lemma 5.2 in the previous proof, but here we prefer to make it more formal.Lemma 5.3 (see [11, section 3.2]).Assume we are given a set X and a sequence of r tuples (G i , t i , f i ) for 1 \leq i \leq r, where G i is an edge-or node-capacitated graph with integral capacities, t i \in V (G i ), X \subsete V (G i ) (i.e., all graphs G i have vertices X in common) and f i is a flow in G i from X to a single sink t i , such that for every Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.phpwe construct flows: f - \tts from D \tts to X \tts , f + \ttt from X \ttt to D \ttt , and f - \ttt from D \ttt to X \ttt .
We apply Lemma 5.3 to four tuples (G i , t i , f i ): we add a supersink being an out-neighbor of every vertex in D \tts and extend the flow f + \tts to reach this supersink, and we perform a similar construction for f + \ttt to a supersink being an out-neighbor of every vertex D \ttt , the reversed f - \tts in the reversed graph G to a supersink near D \tts , and the reversed f - \ttt in the reversed graph G to a supersink near D \ttt .Note that formally the sources in the first two flows are different than in the second two, but for the purpose of Lemma 5.3 we treat as the set X the set of the s-terminals in the first two flows, and the set of the t-terminals in the second two flows, with the natural correspondance between these two sets given by \scrM 1 .
Let h + \tts , h + \ttt , h - \tts , and h + \ttt be the output flows.We have | h + \tts | \geq | f + \tts | /4 = \Omega (\alpha | Y + | ) = \Omega (\alpha 3 | X| /\Delta 2 ).Let \scrM 2 \subsete \scrM 1 be the set of pairs \{ s, t\} for which h + \tts sends positive amount of flow from t to Y + .We infer that the flows h + \tts , h + \ttt , h - \tts , and h - \ttt correspond to four families of node-disjoint paths: \scrP + \tts going from the s-terminals of \scrM 2 to D \tts , \scrP + \ttt going from the t-terminals of \scrM 2 to D \ttt , \scrP - \tts going from D \tts to the s-terminals of \scrM 2 , and \scrP - \tts going from D \ttt to the t-terminals of \scrM 2 .Note that paths between the families may intersect.By the choice of the cycles D \tts and D \ttt , every path in each of these four families intersects every cycle D i .For every terminal pair \{ s, t\} \in \scrM 2 , pick two private cycles D i and D j , and \bullet route the path from s to t via a path in \scrP + \tts starting in s, the cycle D i , and a path of \scrP - \ttt ending in t, \bullet route the path from t to s via a path in \scrP + \ttt starting in t, the cycle D j , and a path in \scrP - \tts ending in s.Clearly such a routing routes all pairs in \scrM 2 .To see that it has the promised congestion 5, note that any node u is contained in at most one path from each of the families \scrP + \tts , \scrP + \ttt , \scrP - \tts , \scrP - \ttt , and in at most one of the concentric cycles.Furthermore, | \scrM 2 | = | h + \tts | = \Omega (\alpha 3 | X| /\Delta 2 ).This concludes the proof of Theorem 1.4.6. Concluding remarks.Our main technical contribution in this paper is to show that a planar directed graph has a constant congestion routing structure of size \Omega (h/polylog(h)), where h = dtw(G).This structural result was motivated by the algorithmic problem of routing symmetric demands in directed graphs.Recent results, in the undirected graph setting, have demonstrated effectively the inherent synergy between approximation algorithms for routing problems and structural results in graph theory related to treewidth.The work in [7] and here are steps toward extending this synergy to directed graphs.The directed graph setting is significantly more challenging, however, and progress in this direction could yield several new benefits.We raise some open problems below.
\bullet Does a planar directed graph with treewidth h have a constant congestion crossbar of size \Omega (h)?This would strengthen our result.In particular, is there a cylindrical grid minor of size \Omega (h)? \bullet Can we obtain a polylogarithmic approximation in planar graphs with congestion 2, as in the undirected case?\bullet The techniques in this paper could likely be extended to directed graphs that can be embedded on a bounded genus surface, and more generally to directed graphs whose undirected support graph is from a proper minor-closed family.The ideas of well-linked decomposition and degree-reduction do not rely on planarity.Moreover, there is a linear relationship between treewidth and the size of a grid-minor in undirected graphs from a proper minor-closed family [21].Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.php

Corollary 2 . 5 .Fig. 3 .
Fig. 3.An illustration of the auxiliary graph in the proof of Lemma 2.6.The black dots are vertices of the primal graph, the white squares correspond to faces of the primal graph.The gray arrows are the edges of the primal graph, and the black arrows are the edges of the auxiliary graph.

Fig. 4 .
Fig. 4. A wall (left) and a subdivided wall (right).The red vertices denote the interface of the wall.
each, and families \scrP + and \scrP -of node-disjoint paths, such that either (1) none of the cycles enclose any vertex of Y + \cup Y -, the family \scrP + consists of | Y + | node-disjoint paths from Y + to the innermost cycle, and the family \scrP - consists of | Y -| node-disjoint paths from the innermost cycle to Y -, or (2) all cycles enclose Y + \cup Y -, the family \scrP + consists of | Y + | node-disjoint paths from Y + to the outermost cycle, and the family \scrP -consists of | Y -| node-disjoint paths from the outermost cycle to Y -.
1.1.Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.php The removal of a node separator gives Downloaded 07/23/19 to 130.126.255.248.Redistribution subject to SIAM license or copyright; see http://www.siam.org/journals/ojsa.phpus one or more strongly connected components; we say that an unordered pair uv is separated by C if u and v are not in the same strongly connected component of G \setminu C. The demand separated by C, denoted by dem \bfd (C), is the total demand of all of the unordered pairs separated by C; more precisely, dem \bfd (C) = \sum uv separated by C d(u, v).The sparsity of a node separator C is cap(C)/dem \bfd (C), where cap(C) is the sum of the capacities of the vertices in C. A sparsest node separator is a separator with minimum sparsity.