Skip to main content
Springer logoLink to Springer
. 2020 Oct 21;83(2):726–752. doi: 10.1007/s00453-020-00772-w

The Power of Cut-Based Parameters for Computing Edge-Disjoint Paths

Robert Ganian 1,, Sebastian Ordyniak 2
PMCID: PMC7904754  PMID: 33707803

Abstract

This paper revisits the classical edge-disjoint paths (EDP) problem, where one is given an undirected graph G and a set of terminal pairs P and asks whether G contains a set of pairwise edge-disjoint paths connecting every terminal pair in P. Our aim is to identify structural properties (parameters) of graphs which allow the efficient solution of EDP without restricting the placement of terminals in P in any way. In this setting, EDP is known to remain NP-hard even on extremely restricted graph classes, such as graphs with a vertex cover of size 3. We present three results which use edge-separator based parameters to chart new islands of tractability in the complexity landscape of EDP. Our first and main result utilizes the fairly recent structural parameter tree-cut width (a parameter with fundamental ties to graph immersions and graph cuts): we obtain a polynomial-time algorithm for EDP on every graph class of bounded tree-cut width. Our second result shows that EDP parameterized by tree-cut width is unlikely to be fixed-parameter tractable. Our final, third result is a polynomial kernel for EDP parameterized by the size of a minimum feedback edge set in the graph.

Keywords: Edge-disjoint path problem, Feedback edge set, Tree-cut width, Parameterized complexity

Introduction

Edge-Disjoint Paths (EDP) is a fundamental routing graph problem: we are given a graph G and a set P containing pairs of vertices (terminals), and are asked to decide whether there is a set of |P| pairwise edge-disjoint paths in G connecting each pair in P. Similarly to its counterpart, the Vertex-Disjoint Paths (VDP) problem, EDP has been at the center of numerous results in structural graph theory, approximation algorithms, and parameterized algorithms [2, 8, 9, 14, 17, 19, 21, 22, 26].

Both EDP and VDP are NP-complete in general [16], and a significant amount of research has focused on identifying structural properties which make these problems tractable. For instance, Robertson and Seymour’s seminal work in the Graph Minors project [22] provides an O(n3) time algorithm for both problems for every fixed value of |P|. Such results are often viewed through the more refined lens of the parameterized complexity paradigm [5, 7]; there, each problem is associated with a numerical parameter k (capturing some structural property of the instance), and the goal is to obtain algorithms which are efficient when the parameter is small. Ideally, the aim is then to obtain so-called fixed-parameter algorithms for the problem, i.e., algorithms which run in time f(k)·nO(1) where f is a computable function and n the input size; the aforementioned result of Robertson and Seymour is hence an example of a fixed-parameter algorithm where k=|P|, and we say that the problem is FPT(w.r.t. this particular parameterization). In cases where fixed-parameter algorithms are unlikely to exist, one can instead aim for so-called XP algorithms, i.e., algorithms which run in polynomial time for every fixed value of k.

Naturally, one prominent question that arises is whether we can use the structure of the input graph itself (captured via a structural parameter) to solve EDP and VDP. Here, we find a stark contrast in the difficulty between these two, otherwise closely related, problems. Indeed, while VDP is known to be FPT with respect to the well-established structural parameter treewidth [24], EDP is NP-hard even on graphs of treewidth 3 [9]. What’s worse, the same reduction shows that EDP remains NP-hard even on graphs with a vertex cover of size 3 [9], which rules out fixed-parameter and XP algorithms for the vast majority of studied graph parameters (including, e.g., treedepth and the size of a minimum feedback vertex set).

We note that previous research on the problem has found ways of circumventing these negative results by imposing additional restrictions. Zhou et al. [26] introduced the notion of an augmented graph, which contains information about how terminal pairs need to be connected, and used the treewidth of this graph to solve EDP. Recent work [13], which primarily focused on the complexity of EDP on near-forests and with respect to parameterizations of the augmented graphs, has also observed that EDP admits a fixed-parameter algorithm when parameterized by treewidth and the maximum degree of the graph.

Our Contribution The aim of this paper is to provide new algorithms and matching lower bounds for solving the Edge-Disjoint Paths problem without imposing any restrictions on the number and placement of terminals. In other words, our aim is to be able to identify structural properties of the graph which guarantee tractability of the problem without knowing any information about the placement of terminals. The only positive result known so far in this setting requires us to restrict the degree of the input graph; however, in the bounded-degree setting there is a simple treewidth-preserving reduction from EDP to VDP (see Proposition 1), and so the problem only becomes truly interesting when the input graphs can contain vertices of higher degree.

Our main result, which is provided in Theorem 2, is an XP algorithm for EDP when parameterized by the structural parameter tree-cut width [20, 25]. Tree-Cut width is inherently tied to the theory of graph immersions; in particular, it has a similar relationship to graph immersions and cuts as treewidth has to graph minors and separators. Since its introduction, tree-cut width has been successfully used to obtain fixed-parameter algorithms for problems which are W[1]-hard w.r.t. treewidth [11, 12]; however, this is the first time that it has been used to obtain an algorithm for a problem that is NP-hard on graphs of bounded treewidth.

One “feature” of algorithmically exploiting tree-cut width is that it requires the solution of a non-trivial dynamic programming step. In previous works, this was carried out mostly by direct translations into Integer Linear Programming instances with few integer variables [11] or by using network flows [12]. In the case of EDP, the dynamic programming step requires us to solve an instance of EDP with a vertex cover of size k where every vertex outside of the vertex cover has a degree of 2; we call this problem Simple EDP and solve it in the dedicated Sect. 3. It is worth noting that there is only a very small gap between Simple EDP (for which we provide an XP algorithm in Lemma 4) and graphs with a vertex cover of size 3 (where EDP is known to be NP-hard).

In view of our main result, it is natural to ask whether the algorithm can be improved to a fixed-parameter one. After all, given the parallels between EDP parameterized by tree-cut width (an edge-separator based parameter) and VDP parameterized by treewidth (a vertex-separator based parameter), one would rightfully expect that the fixed-parameter tractability result on the latter [24] would be mirrored in the former case. Surprisingly, we rule this out by showing that EDP parameterized by tree-cut width is W[1]-hard [5, 7] and hence unlikely to be fixed-parameter tractable; in fact, we obtain this lower-bound result even in the more restrictive setting of Simple EDP in Lemma 5. The proof is based on an involved reduction from an adapted variant of the Multidimensional Subset Sum problem [12, 13] and forms our second main contribution.

Having ruled out fixed-parameter algorithms for EDP parameterized by tree-cut width and in view of previous lower-bound results, one may ask whether it is even possible to obtain such an algorithm for any reasonable parameterization. We answer this question positively by using the size of a minimum feedback edge set as a parameter. In fact, we show an even stronger result: as our final contribution, we obtain a so-called linear kernel [5, 7] for EDP parameterized by the size of a minimum feedback edge set (Theorem 3).

Organization of the Paper After introducing the required preliminaries in Sect. 2, we proceed to introducing Simple EDP, solving it via an XP algorithm and establishing our lower-bound result (Sect. 3). Section 4 then contains our algorithm for EDP parameterized by tree-cut width. Finally, in Sect. 5 we obtain a polynomial kernel for EDP parameterized by the size of a minimum feedback edge set.

Preliminaries

We use standard terminology for graph theory, see for instance [6]. Given a graph G, we let V(G) denote its vertex set and E(G) its edge set. The (open) neighborhood of a vertex xV(G) is the set {yV(G):xyE(G)} and is denoted by NG(x). For a vertex subset X, the neighborhood of X is defined as xXNG(x)\X and denoted by NG(X); we drop the subscript if the graph is clear from the context. Contracting an edge ab is the operation of replacing vertices ab by a new vertex whose neighborhood is (N(a)N(b))\{a,b}. For a vertex set A (or edge set B), we use G-A (G-B) to denote the graph obtained from G by deleting all vertices in A (edges in B), and we use G[A] to denote the subgraph induced on A, i.e., G-(V(G)\A). A path segment of a path Q is a path that is a subgraph of Q.

A forest is a graph without cycles, and an edge set X is a feedback edge set if G-X is a forest. The feedback edge set number of a graph G, denoted by fes(G), is the smallest integer k such that G has a feedback edge set of size k. We use [i] to denote the set {0,1,,i}.

Parameterized Complexity

A parameterized problem P is a subset of Σ×N for some finite alphabet Σ. Let LΣ be a classical decision problem for a finite alphabet, and let p be a non-negative integer-valued function defined on Σ. Then L parameterized by p denotes the parameterized problem {(x,p(x))|xL} where xΣ. For a problem instance (x,k)Σ×N we call x the main part and k the parameter. A parameterized problem P is fixed-parameter tractable (FPT in short) if a given instance (xk) can be solved in time f(k)·|x|O(1) where f is an arbitrary computable function of k; we call algorithms running in this time fixed-parameter algorithms.

Parameterized complexity classes are defined with respect to fpt-reducibility. A parameterized problem P is fpt-reducible to Q if in time f(k)·|x|O(1), one can transform an instance (xk) of P into an instance (x,k) of Q such that (x,k)P if and only if (x,k)Q, and kg(k), where f and g are computable functions depending only on k. Owing to the definition, if P fpt-reduces to Q and Q is fixed-parameter tractable then P is fixed-parameter tractable as well. Central to parameterized complexity is the following hierarchy of complexity classes, defined by the closure of canonical problems under fpt-reductions:

FPTW[1]W[2]XP.

All inclusions are believed to be strict. In particular, FPTW[1] under the Exponential Time Hypothesis.

A major goal in parameterized complexity is to distinguish between parameterized problems which are in FPT and those which are W[1]-hard, i.e., those to which every problem in W[1] is fpt-reducible. There are many problems shown to be complete for W[1], or equivalently W[1]-complete, including the Multi-Colored Clique (MCC) problem [7]. We refer the reader to the respective monographs [4, 7, 10] for an in-depth introduction to parameterized complexity.

Edge-Disjoint Path Problem

Throughout the paper we consider the following problem.

Edge-Disjoint Paths (EDP)
Input: A graph G and a set P of terminal pairs, i.e., a set of subsets of V(G) of size two.
Question: Is there a set of pairwise edge-disjoint paths connecting every set of terminal pairs in P?

A vertex which occurs in a terminal pair is called a terminal, and a set of pairwise edge-disjoint paths connecting every set of terminal pairs in P is called a solution. Without loss of generality, we assume that G is connected. The Vertex-Disjoint Paths (VDP) problem is defined analogously as EDP, with the sole distinction being that the paths must be vertex-disjoint.

The following proposition establishes a link between EDP and VDP on graphs of bounded degree. Since we will not need the notion of treewidth [23] for any other result presented in the paper, we refer to the standard textbooks [4, 7] for its definition.

Proposition 1

There exists a linear-time reduction from EDP to VDP with the following property: if the input graph has treewidth k and maximum degree d, then the output graph has treewidth at most (k+1)d.

Proof

Let (GP) be an instance of EDP where G has treewidth k and maximum degree d; let V=V(G) and E=E(G). Observe that if any vertex vV occurs in P more than d many times, then (GP) must be a NO-instance (we assume that P does not contain tuples in the form (aa) for any a).

Consider the graph G obtained in the following two-step procedure. First, we subdivide each edge in G (i.e., we replace that edge with a vertex of degree 2 that is adjacent to both endpoints of the original edge); let V be the set of vertices created by such subdivisions. Second, for each vertex v=v1V of the original graph G, we create d-1 copies v2,,vd of that vertex and set their neighborhood to match that of v1. This construction gives rise to a natural mapping α from G to G which maps each vV to the set v1,,vd and each eE to the vertex created by subdividing e. Next, we iteratively process P as follows: for each {v,w}P, we add a tuple {v,w} into the set P such that vα(v), wα(w) and neither v nor w occurs in any other pair in P (the last condition can be ensured because each vertex in v has d copies in G but never occurs more than d times in P).

It is now easy to verify that (GP) is a YES-instance of EDP if and only if (G,P) is a YES-instance of VDP. Indeed, consider a solution S (i.e., a set of edge disjoint paths) for (GP). For each v-w path Q in S, there is a corresponding tuple (v,w) in P, and we can construct a v-w path Q by (a) replacing each edge and vertex used by Q with a vertex in the α-image of that edge and vertex, while (b) ensuring that all paths constructed in this way are pairwise vertex-disjoint. This means that (G,P) is also a YES-instance. On the other hand, if (G,P) is a YES-instance and this is witnessed by a set S of vertex-disjoint paths spanning a minimal set of vertices, then by this minimality assumption it follows that each path may only visit the α-image of any vertex vV(G) at most once. Now consider a path QS, and notice that Q can be viewed as a sequence of vertices of the form (α(v),α(e1),α(v1),α(e2),,α(w)). The sequence obtained from the images of α, i.e., (v,e1,v1,e2,,w) must then also form a path, and moreover the set of paths obtained in this way must be edge-disjoint by construction.

To conclude the proof, observe that it is possible to convert any tree-decomposition (TX) [7] of G of width k into a tree-decomposition of G of width (k+1)d by (1) replacing each vertex v by α(v) in T, and then (2) by choosing, for each edge e=abE, a bag X{a,b}, creating a bag X=X{α(e)}, and attaching X to X as a leaf.□

We remark that Proposition 1 in combination with the known fixed-parameter algorithm for VDP parameterized by treewidth [24] provides an alternative proof for the fixed-parameter tractability of EDP parameterized by degree and treewidth [13]. Finally, we introduce one bit of useful notation that applies to an instance (GP) of EDP: for a subgraph H of G, we let P2H denote the subset of terminal pairs which are subsets of V(H) and P1H denote the subset of terminal pairs with a non-empty intersection with V(H).

Tree-Cut Width

The notion of tree-cut decompositions was introduced by Wollan [25], see also [20]. A family of subsets X1,,Xk of X is a near-partition of X if they are pairwise disjoint and i=1kXi=X, allowing the possibility of Xi=.

Definition 1

A tree-cut decomposition of G is a pair (T,X) which consists of a rooted tree T and a near-partition X={XtV(G):tV(T)} of V(G). A set in the family X is called a bag of the tree-cut decomposition.

For any node t of T other than the root r, let e(t)=ut be the unique edge incident to t on the path to r. Let Tu and Tt be the two connected components in T-e(t) which contain u and t, respectively. Note that (qTuXq,qTtXq) is a near-partition of V(G), and we use Et to denote the set of edges with one endpoint in each part. We define the adhesion of t (adh(t)) as |Et|; we explicitly set adh(r)=0 and Er=.

The torso of a tree-cut decomposition (T,X) at a node t, written as Ht, is the graph obtained from G as follows. If T consists of a single node t, then the torso of (T,X) at t is G. Otherwise let T1,,T be the connected components of T-t. For each i=1,,, the vertex set ZiV(G) is defined as the set bV(Ti)Xb. The torso Ht at t is obtained from G by consolidating each vertex set Zi into a single vertex zi (this is also called shrinking in the literature). Here, the operation of consolidating a vertex set Z into z is to substitute Z by z in G, and for each edge e between Z and vV(G)\Z, adding an edge zv in the new graph. We note that this may create parallel edges.

The operation of suppressing (also called dissolving in the literature) a vertex v of degree at most 2 consists of deleting v, and when the degree is two, adding an edge between the neighbors of v. Given a connected graph G and XV(G), let the 3-center of (GX) be the unique graph obtained from G by exhaustively suppressing vertices in V(G)\X of degree at most two. Finally, for a node t of T, we denote by H~t the 3-center of (Ht,Xt), where Ht is the torso of (T,X) at t. Let the torso-size tor(t) denote |H~t|.

Definition 2

The width of a tree-cut decomposition (T,X) of G is maxtV(T){adh(t), tor(t)}. The tree-cut width of G, or tcw(G) in short, is the minimum width of (T,X) over all tree-cut decompositions (T,X) of G.

We also refer to [15] for a novel alternative definition of tree-cut width. Without loss of generality, we shall assume that Xr=. We conclude this subsection with some notation related to tree-cut decompositions. Given a tree node t, let Tt be the subtree of T rooted at t. Let Yt=bV(Tt)Xb, and let Gt denote the induced subgraph G[Yt]. A node tr in a rooted tree-cut decomposition is thin if adh(t)2 and bold otherwise (Fig. 1).

Fig. 1.

Fig. 1

A graph G and a width-3 tree-cut decomposition of G, including the torso-size (left value) and adhesion (right value) of each node

While it is not known how to compute optimal tree-cut decompositions efficiently, there exists a fixed-parameter 2-approximation algorithm which we can use instead.

Theorem 1

[18] There exists an algorithm that takes as input an n -vertex graph G and integer k, runs in time 2O(k2logk)n2, and either outputs a tree-cut decomposition of G of width at most 2k or correctly reports that tcw(G)>k.

A tree-cut decomposition (T,X) is nice if it satisfies the following condition for every thin node tV(T): NG(Yt)(bis\, a \,sibling \,oftYb)=. The intuition behind nice tree-cut decompositions is that we restrict the neighborhood of thin nodes in a way which facilitates dynamic programming.

Lemma 1

[11] There exists a cubic-time algorithm which transforms any rooted tree-cut decomposition (T,X) of G into a nice tree-cut decomposition of the same graph, without increasing its width or number of nodes.

For a node t in a nice tree-cut decomposition, we let Bt={bis a child oft | adh(b)2NG(Yb)Xt} denote the set of thin children of t whose neighborhood is a subset of Xt, and we let At={ais a child oft|aBt} be the set of all other children of t. The following property of nice tree-cut decompositions will be crucial for our algorithm; among others, it implies that only a bounded number of children of t contain neighbors of vertices that do not lie in Xt.

Lemma 2

[11] Let t be a node in a nice tree-cut decomposition of width k. Then |At|2k+1.

We refer to previous work [11, 18, 20, 25] for a more detailed comparison of tree-cut width to other parameters. Here, we mention only that tree-cut width lies “between” treewidth and treewidth plus maximum degree.

Lemma 3

[11, 20, 25] Let tw(G) denote the treewidth of G and degtw(G) denote the maximum over tw(G) and the maximum degree of a vertex in G. Then tw(G)2tcw(G)2+3tcw(G), and tcw(G)4degtw(G)2.

In this context, we can view tree-cut width as a parameter which serves as a “middle ground” for solving EDP. On one hand, EDP remains NP-hard even on graphs of bounded treewidth. On the other hand, parameterizing EDP by degtw yields a fixed-parameter algorithm, but this is only useful on graphs of small maximum degree, where it simply collapses to solving VDP parameterized by treewidth. In this paper, we show that tree-cut width allows for a non-trivial XP (but not a fixed-parameter) algorithm for EDP. We also remark that Lemma 3 immediately implies that VDP is FPT parameterized by tree-cut width.

The Simple Edge-Disjoint Paths Problem

Before we start working towards our algorithm for solving EDP parameterized by tree-cut width, we will first deal with a simpler (but crucial) setting for the problem. We call this the Simple Edge-Disjoint Paths problem (Simple EDP) and define it below.

Simple EDP
Input: An EDP instance (GP) such that V(G)=AB where B is an independent set containing vertices of degree at most 2.
Parameter: k=|A|
Question: Is (GP) a YES-instance of EDP?

Notice that every instance of Simple EDP has tree-cut width at most k, and so it forms a special case of EDP parameterized by tree-cut width. Indeed, the tree-cut decomposition where T is a star, the center bag contains A, and each leaf bag contains a vertex from B (except for the root r, where Xr=), has tree-cut width at most k. This contrasts to the setting where G has a vertex cover of size 3 and all vertices outside the vertex cover have degree 3; the tree-cut width of such graphs is not bounded by any constant, and EDP is known to be NP-complete in this setting [9].

The main reason we introduce and focus on Simple EDP is that it captures the combinatorial problem that needs to be solved in the dynamic step of the algorithm for EDP parameterized by tree-cut width. Hence, our first task here will be to solve Simple EDP by an algorithm that can later be called as a subroutine.

Lemma 4

Simple EDP can be solved in time O((|P|+1)k2+1(k+1)!).

Proof

We will start by simplifying the instance using some simple observations. First we will show that we can remove all vertices in B that are not contained in any terminal pair by adding multi-edges to G[A]. Namely, let v be a vertex in B that does not appear in any terminal pair in P. If v has no neighbors or at most one neighbor, then v can simply be removed from G, and if v has degree two, then we can remove v and add an edge between its two neighbors in A. Hence in the following we will assume that all vertices in B occur in at least one terminal pair and that G[A] can contain multi-edges.

Let the terminal graph of G, denoted GT, be the graph with vertex set V and edge set P. The following two observations will be crucial for our algorithm:

  1. Consider a path Q connecting a terminal pair pP in a solution. Because B is an independent set and every vertex in B has degree at most two and is contained in at least one terminal pair in P, we obtain that all inner vertices of Q are from A. Hence, Q contains at most k+2 vertices and all inner vertices of Q are contained in A. It follows that Q is completely characterized by the sequence of vertices it uses in A. Consequently, there are at most =1kk!(k+1)! different types of paths that need to be considered for the connection of any terminal pair.

  2. GT[B] is a disjoint union of paths and cycles. This is because every vertex v of G can be contained in at most |NG(v)| terminal pairs in P (otherwise we immediately reject) and all vertices in B have degree at most two.

Let u and v be two distinct vertices in A. Because |A|k, we can enumerate all possible paths between u and v in G[A] in time O((k+1)!). We will represent each such path H as a binary vector EH, whose entries are indexed by all sets of two distinct vertices in A, such that EH[e]=1 if H uses the edge e and EH[e]=0 otherwise. Moreover, we will denote by Eu,v the set {EH|HisapathbetweenuandvinG[A]}; intuitively, Eu,v captures all possible sets of edges that can be used in order to connect u to v.

Let S be a solution for (GP). The algorithm represents every solution S for (GP) as a solution vector ES of natural numbers whose entries are indexed by all sets {u,v} of two distinct vertices in A. More specifically, for two distinct vertices u and v in A, ES[{u,v}] is equal to the number of edges between u and v used by the paths in S. The algorithm uses dynamic programming to compute the set L of all solution vectors; clearly, L if and only if (GP) is a YES-instance. We compute L in two main steps:

  1. the algorithm computes the set LA of all solution vectors for the sub-instance (G[A],P) of (GP), where P is the subset of P containing all terminal pairs {p,q} with p,qA.

  2. the algorithm computes the set of all solution vectors for the sub-instance (G,P\P). Note that every terminal pair p in P\P is either completely contained in B, in which case it forms an edge of a path or a cycle in GT[B], or p has one vertex in A and the other vertex in B, which is the endpoint of a path in GT[B]. The algorithm now computes the set of all solution vectors for the sub-instance (G,P\P) in two steps:
    • (S2A)
      For every cycle C in GT[B], the algorithm computes the set LC of all solution vectors for the sub-instance (G[AV(C)],P2C), where P2C is the set of all terminal pairs in P with both terminals in C.
    • (S2B)
      For every path H in GT[B], the algorithm computes the set LH of all solution vectors for the sub-instance (G[AV(H)],P1H), where P1H is the set of all terminal pairs in P with at least one endpoint in H.

In the end, the set of all hypothetical solution vectors L for (GP) is obtained as LA(CisacycleofGT[B]LC)(HisapathofGT[B]LH), where PP for two sets P and P of solution vectors is equal to {R+R|RPRP}. Each vector in L describes one possible set of multi-edges in G[A] that can be used to connect all terminal pairs in P. In order to compute L, one simply needs to remove all vectors from L which require more multi-edges than are available in G[A]; in particular, to obtain L we delete each vector ES from L such that there exist u,vA where ES[{u,v}] exceeds the number of multi-edges between u and v in G. The algorithm then returns YES if L is non-empty and otherwise the algorithm returns NO. Note that, as is usually the case with these types of dynamic programming algorithms, the algorithm can also be easily modified to find a solution for (GP), without increasing its running time.

The set LA described in step (S1) is computed as follows. Given an arbitrary but fixed ordering p1,,p|P| of the terminal pairs in P, let Pi be the set {pj|1ji}, for every i with 1i|P|. The algorithm now uses dynamic programming to compute the sets S1,,S|P|, where Si contains the set of all hypothetical solution vectors for the instance (G[A],Pi) as follows. The algorithm starts by setting T1 to be the set Ep1. Then for every i with 1<i|P|, the algorithm computes Ti from Ti-1 as the set {E+E|ETi-1EEpi},

The set LC described in step (S2A) for a cycle C=(v1,,vn) of GT[B] is computed as follows. Note that every vertex in C has exactly two neighbors in A (and also in G). For a neighbor n of vi, we denote by n¯ the other neighbor of vi in G, i.e., n¯ is the unique neighbor in NG(vi)\{n}. For every i with 2in, we denote by Pi the set {{vj,vj+1}|1j<i} of terminal pairs. The algorithm starts by computing a table Ti for every i with 2in. Informally, for every neighbor n1 of v1 and every neighbor ni of vi in G, the table Ti contains all hypothetical solution vectors for the instance induced on A and the vertices v1,,vi that use n1 to connect the terminal pair {v1,v2} and ni to connect the terminal pair {vi-1,vi}. More formally, for every n1NG(v1) and niNG(vi) the table Ti contains the set of all solution vectors for the instance (G[A{v1,,vi}]-{v1n¯1,vin¯i},Pi).

The tables T2,,Tn are iteratively computed starting with T2 as follows. For every n1NG(v1) and n2NG(v2), T2[n1,n2] is equal to En1,n2. Moreover, for every i with 3in, the table Ti is obtained from the table Ti-1 as follows. For every n1NG(v1) and niNG(vi), Ti[n1,ni] is equal to the union of the following two sets:

  • {E+E|ETi-1[n1,ni-1]EEn¯i-1,ni} and

  • {E+E|ETi-1[n1,n¯i-1]EEni-1,ni}

where {ni-1,n¯i-1}=NG(vi-1). Finally, the set of all hypothetical solution vectors for the instance (G[AC],P2C) is obtained from the table Tn as the union of the sets {E+E|ETn[n1,nn]EEn¯n,n¯1} for every n1NG(v1) and every nnNG(vn).

The set LH described in step (S2B) for a path H=(v1,,vn) of GT[B] is computed as follows. Note first that every inner vertex of H has exactly two neighbors in A and the two endpoints v1 and vn of H have either one or two neighbors in A. We will compute LH with the help of the table Tn computed for the step (S2A) above. First note that if both endpoints v1 and vn of H have only one neighbor in A, then LH is equal to Tn[n1,nn], where n1 and nn are the unique neighbors of v1 and vn, respectively, in G. Moreover, if both endpoints occur only in one terminal pair (but could have up to two neighbors in G), then LH is equal to the union of the sets Tn[n1,nn] for every neighbor n1NG(v1) and every neighbor nnNG(vn). Now consider the case that both endpoints v1 and vn occur in exactly two terminal pairs; the case that only one of them occurs in two terminal pairs is then analogously. Then v1 occurs in the terminal pair {v1,v2} and in the terminal pair {v1,a1} for some a1A and similarily vn occurs in the terminal pair {vn-1,vn} and in the terminal pair {vn,an} for some anA. In this case, LH is equal to the union of the sets {E+E+E|EEn¯1,a1ETn[n1,nn]EEn¯n,an} for every n1NG(v1) and every nnNG(vn). All other remaining cases can be handled analogously.

This completes the description of the algorithm. To verify correctness, one can observe that each solution vector computed by the algorithm can be traced back to a specific choice of edges (a path) that connects each terminal pair in P, and since there are sufficient multi-edges in G[A] to accommodate all the resulting paths, this guarantees the existence of a solution. On the other hand, if a solution exists then it surely has a solution vector, and moreover the algorithm will discover this solution vector by choosing, for each {a,b}P, the entry in EH which corresponds to the a-b path used in the solution.

Finally, we establish the running time bound. Note first that every set of solution vectors computed at any point in the algorithm contains at most (|P|+1)k2 elements. Moreover, as argued in (O1) the set Eu,v for two distinct vertices u and v in A can be computed in time O((k+1)!) and contains at most (k+1)! elements. From this it follows that the time required to compute LA in (S1) is at most O((|P|+1)k2(k+1)!|P|). Similarly, the time required to compute LC for a cycle C in GT[B] in step (S2A) is at most O((|P|+1)k2(k+1)!|P2C|) and the time required to compute LH for a path H in GT[B] in step (S2B) is at most O((|P|+1)k2(k+1)!|P1H|). Hence the time required to compute LA together with all the sets LC and LH for every cycle C and path H of GT[B] is at most O((|P|+1)k2(k+1)!|P|). Finally, combining these sets into L does not incur an additional run-time overhead since L can be computed iteratively as part of the computation of the sets LA, LC, and LH.□

Notice that Lemma 4 does not provide a fixed-parameter algorithm for Simple EDP. Our second task for this section will be to rule out the existence of such algorithms (hence also ruling out the fixed-parameter tractability of EDP parameterized by tree-cut width).

Before we proceed, we would like note that this outcome was highly surprising for the authors. Indeed, not only does this “break” the parallel between {VDP, treewidth} and {EDP, tree-cut width}, but inspecting the dynamic programming algorithm for EDP parameterized by tree-cut width presented in Sect. 4 reveals that solving Simple EDP is the only step which requires more than “FPT-time”. In particular, if Simple EDP were FPT, then EDP parameterized by tree-cut width would also be FPT. This situation contrasts the vast majority of dynamic programming algorithms for parameters such as treewidth and clique-width [3], where the complexity bottleneck is usually tied to the size of the records used and not to the computation of the dynamic step.

Our lower-bound result is based on a fpt-reduction from the following problem:

Multidimensional Subset Sum (MSS)
Input: An integer k, a set S={s1,,sn} of item-vectors with siNk for every i with 1in, a target vector tNk, and an integer .
Parameter: k
Question: Is there a subset SS with |S| such that sSst?

The W[1]-hardness of MSS can be obtained by a trivial reduction from the following problem, which was recently shown to be W[1]-hard by Ganian, Ordyniak and Ramanujan [13]:

Multidimensional Relaxed Subset Sum (MRSS)
Input: An integer k, a set S={s1,,sn} of item-vectors with siNk for every i with 1in, a target vector tNk, and an integer .
Parameter: k
Question: Is there a subset SS with |S| such that sSst?

Indeed, given an instance (k,S,t,) of MRSS, it is straightforward to verify that (kS(sSs)-t,|S|-) is an equivalent instance of MSS; since the reduction preserves the parameter, this shows that MSS is also W[1]-hard.

Lemma 5

Simple EDP is W[1]-hard.

Proof

We provide a fpt-reduction from MSS. Namely, given an instance (k,S,t,) of MSS, we will construct an equivalent instance (GP) with partition A and B and |A|=k+3 of Simple EDP. For convenience and w.l.o.g. we will assume that all entries of the vectors in S as well as all entries of the target vector t are divisible by two; furthermore, we will describe the constructed instance of Simple EDP with multi-edges between vertices in A (note that these can be replaced by degree-2 vertices in B, similarly as in Lemma 4).

The graph G[A] has vertices a, b, d, and d1,,dk and the following multi-edges:

  • |S|- edges between a and b,

  • for every i with 1ik, t[i] edges between d and di.

Moreover, for every sS we construct a gadget G(s) consisting of:

  • the vertices vs,v1s,u1s,,vs¯s,us¯s with s¯=i=1ks[i],

  • two edges vsa and vsd,

  • for every i with 1is¯, two edges visb and uisb,

  • for every i with 1is¯ and i even, two edges visd and uisd,

  • for every j with 1jk and every i with l=1j-1s[l]<il=1js[l] and i odd, two edges visdj and uisdj,

  • the terminal pair {vs,v1s},

  • for every i with 1is¯, a terminal pair {vis,uis},

  • for every i with 1i<s¯, a terminal pair {uis,vi+1s},

Then G consists of the graph G[A] together with the vertices and edges of the gadget G(s) for every sS; note that B is the union of V(G(s)) over every sS. Moreover, P consists of all terminal pairs of the gadgets G(s) for every sS. This completes the construction of the instance (GP); an illustration is provided in Fig. 2. It remains to show that the instance (k,S,t,) of MSS has a solution if and only if so does the instance (GP) of EDP.

Fig. 2.

Fig. 2

An illustration of the graph G[A] together with the gadget G(s) for k=2, s[1]=2, and s[2]=2. Bold edges indicate multi-edges with multiplicities given as an edge label. The left side illustrates configuration (C1) and the right side illustrates configuration (C2) as defined in Claim 1; here the non-black edges indicate the edges used by a solution that uses the corresponding configuration to connect the terminal pairs of G(s). In particular, on the left side illustrating the case (C1), we have that: the green edges connect the terminal pair {vs,v1s}, the yellow edges connect the terminal pairs {uis,vi+1s}, the blue edges connect the terminal pairs {vis,uis} for i even, and the red edges connect the terminal pairs {vis,uis} for i odd. Moreover, on the right side illustrating the case (C2), we have that: the green edges connect the terminal pair {vs,v1s}, the yellow edges connect the terminal pairs {uis,vis}, the blue edges connect the terminal pairs {uis,vi+1s} for i odd, and the red edges connect the terminal pairs {uis,vi+1s} for i even (Color figure online)

We start by showing that there are only two ways to connect all terminal pairs of the gadget G(s) for every sS. Figure 2 illustrates the edges used by the two configurations.

Claim 1

Let S be a solution for (GP), and sS. Then either:

  1. The terminal pair {vs,v1s} is connected by the path (vs,a,b,v1s) and:
    • for every i with 1i<s¯, the terminal pair {uis,vi+1s} is connected by the path (uis,b,vi+1s),
    • for every i with 1is¯ and i even, the terminal pair {vis,uis} is connected by the path (vis,d,uis), and
    • for every i with 1is¯ and i odd, the terminal pair {vis,uis} is connected by the path (vis,dj,uis), where j is such that l=1j-1s[l]<il=1js[l].
  2. The terminal pair {vs,v1s} is connected by the path (vs,d,dj,v1s), where j is the minimum integer such that s[j]0 and:
    • for every i with 1is¯, the terminal pair {vis,uis} is connected by the path (vis,b,uis),
    • for every i with 1i<s¯ and i is odd, the terminal pair {uis,vi+1s} is connected by the path (uis,dj,d,vi+1s), where j is such that l=1j-1s[l]<il=1js[l],
    • for every i with 1i<s¯ and i is even, the terminal pair {uis,vi+1s} is connected by the path (uis,d,dj,vi+1s), where j is such that l=1j-1s[l]<il=1js[l].

Proof

Let S be a solution for (GP) and sG(s). Then S has to connect the terminal pair {vs,v1s} either by the path (vs,a,b,v1s) or by the path (vs,d,dj,v1s).

In the former case, the only way to connect the terminal pair {v1s,u1s} is the path (v1s,dj,u1s), where j is such that l=1j-1s[l]<1l=1js[l]. But then the terminal pair {u1s,v2s} can only be connected by the path (u1s,b,v2s) and in turn the terminal pair {v2s,u2s} can only be connected by the path (v2s,d,u2s). Since this pattern continues in this manner, this concludes the argument for the first case.

In the later case, the only way to connect the terminal pair {v1s,u1s} is the path (v1s,b,u1s). But then the terminal pair {u1s,v2s} can only be connected by the path (u1s,dj,d,v2s), where j is such that l=1j-1s[l]<1l=1js[l], and in turn the terminal pair {v2s,u2s} can only be connected by the path (v2s,b,u2s). Finally, the terminal pair {u2s,v3s} can then only be connected by the path (u2s,d,dj,v3s), where j is such that l=1j-1s[l]<1l=1js[l]. Since this pattern continues in this manner, this concludes the argument for the second case.□

Let S be a solution for (GP) and sS. It follows from Claim 1 that if S connects the terminal pairs of G(s) according to (C1), then the only edge used from G[A] is the edge ab. On the other hand, if S connects the terminal pairs in G(s) according to (C2), then S uses s[i] edges between d and dj for every i with 1ik.

Towards showing the forward direction, let SS be a solution for (k,S,t,). W.l.o.g. we can assume that |S|=. We claim that the set of edge-disjoint paths S, which if sS connects all terminal pairs in G(s) according to (C2) and if sS\S connects all terminal pairs in G(s) according to (C1) is a solution for (GP). This holds because there are |S|- edges between a and b, which are sufficient for the elements in S\S to be connected according to (C1). Moreover, because sSst, the t[i] edges between d and di for every i with 1ik, suffice for the elements in S to be connected according to (C2).

For the reverse direction, let S be a solution for (GP).

We claim that the subset S of S containing all sS such that S connects all terminal pairs in G(s) according to C2 is a solution for (k,S,t,). Because there are at most |S|- edges between a and b in G[A], we obtain that |S|. Moreover, because there are at most t[i] edges between d and di in G[A], it follows that sSst. Consequently, S is a solution for (k,S,t,).□

An Algorithm for EDP on Graphs of Bounded Tree-Cut Width

The goal of this section is to provide an XP algorithm for EDP parameterized by tree-cut-width. The core of the algorithm is a dynamic programming procedure which runs on a nice tree-cut decomposition (T,X) of the input graph G.

Overview

Our first aim is to define the data table the algorithm is going to dynamically compute for individual nodes of the tree-cut decomposition; to this end, we introduce two additional notions. For a node t, we say that Yt (or Gt) contains an unmatched terminal s if {s,e}P, sYt and eYt; let Ut be the multiset containing all unmatched terminals in Yt (one entry in Ut per tuple in P which contains an unmatched terminal). For a subgraph H of G, let P2HP denote the subset of terminal pairs whose both endpoints lie in H.

Let a record for node t be a tuple (δ,I,F,L) where:

  • δ is a partitioning of Et into four subsets: an even-sized set I (internal), a set L (leaving), an even-sized set F (foreign) and a set (U) (unused);

  • I is a set of subsets of size 2 of I that is a perfect matching between the edges in I;

  • F is a set of subsets of size 2 of F that is a perfect matching between the edges in F;

  • L is a perfect matching between Ut and the edges in L.

Intuitively, a record captures all the information we need about one possible interaction between a solution to EDP and the edges in Et. In particular, unmatched terminals need to cross between Yt and G-Yt using an edge in Et and L captures the first edge used by a path from an unmatched terminal in the solution while L is the set of all edges in Et that are used for this purpose. I and F then capture information about paths which intersect with Et but whose terminals both lie in Yt and G-Yt, respectively,1 and the sets I and F contain all edges used for these two purposes. Finally, the set U simply contains edges which are not used by a given solution. We formalize this intuitive description below through the notion of a valid record.

Let λ=(δ,I,F,L) be a record for t. Then, the instance (Gt,λ,Pt,λ) is obtained from (Gt,P2Gt) and λ by the following algorithm (see Fig. 3 for an illustration):

  1. initialize Gt,λ to Gt and Pt,λ to P2Gt,

  2. For each {{a,b},{c,d}}I where a,cYt, add a new vertex into Gt,λ and connect it to a and c by edges (note that if a=c then this simply creates a new leaf and hence this operation can be ignored).

  3. For each {s,{a,b}}L where aYt, add a new tuple {s,e} into Pt,λ and a new leaf e into Gt,λ adjacent to a.

  4. For each {{a,b},{c,d}}F where a,cYt, add two new leaves b,d into Gt,λ, make them adjacent to a and c respectively, and add {b,d} into Pt,λ.

Fig. 3.

Fig. 3

Illustration of the construction of (Gt,λ,Pt,λ) from (Gt,P2Gt) and λ. Green vertices and edges represent new elements that are added to (Gt,λ,Pt,λ) and dashed edges represent terminal-pairs. The left, middle, and right picture corresponds to the steps 2, 3, and 4 in the algorithm for constructing (Gt,λ,Pt,λ), respectively (Color figure online)

Definition 3

A record λ=(δ,I,F,L) is valid for t if (Gt,λ,Pt,λ) is a YES-instance of EDP.

We are now ready to define our data tables: for a node tV(T), let D(t) be the set of all valid records for t. We now make two observations. First, for any node t in a nice tree-cut decomposition of width k, it holds that there exist at most 4k·k! distinct records and hence |D(t)|4k·k!; indeed, there are 4k possible choices for δ, and for each such choice and each edge e in Et one has at most k options of what to match with e. Second, if r is the root of T, then either D(r)= or D(r)={(,,,)}; furthermore, (GP) is a YES-instance if and only if the latter holds. Hence it suffices to compute D(r) in order to solve EDP.

The next lemma shows that D(t) can be computed efficiently for all leaves of t.

Lemma 6

Given (GP), a width-k tree-cut decomposition (T,X) of G and a leaf tV(T) as the input, it is possible to compute D(t) in time kO(k2).

Proof

We proceed as follows. For each record λ for t, we construct the instance (Gt,λ,Pt,λ) as per Definition 3 and check whether (Gt,λ,Pt,λ) is a YES-instance of EDP. Since V(Gt,λ)2k, a simple brute-force algorithm will suffice here. For instance, one can enumerate all partitions of the at most 4k2 edges in Gt,λ, and for each such partition one can check whether this represents a set of edge-disjoint paths which forms a solution to (Gt,λ,Pt,λ). If (Gt,λ,Pt,λ) is a YES-instance of EDP then we add λ into D(t), and otherwise we do not.

The number of partitions of a set of size 4k2 is upper-bounded by kO(k2) [1], and |D(t)|4k·k!. Hence the runtime of the whole algorithm described above is dominated by kO(k2).□

At this point, all that is left to obtain a dynamic leaves-to-root algorithm which solves EDP is the dynamic step, i.e., computing the data table for a node tV(t) from the data tables of its children. Unfortunately, that is where all the difficulty of the problem lies, and our first step towards handling this task will be the introduction of two additional notions related to records. The first is correspondence, which allows us to associate each solution to (GP) with a specific record for t; on an intuitive level, a solution corresponds to a particular record if that record precisely captures the “behavior” of that solution on Et. Correspondence will, among others, later be used to establish the correctness of our algorithm.

Definition 4

A solution S to (GP) corresponds to a record λ=(δ,I,F,L) for t if the conditions 1.-4. stated below hold for every a-b path QS such that QEt. We let s=|QEt| and we denote individual edges in QEt by e1,e2,es, ordered from the edge nearest to a along Q.

  1. If a,bYt, then for each odd i[s], F contains {ei,ei+1}.

  2. If a,bYt, then for each odd i[s], I contains {ei,ei+1}.

  3. If {a,b}Yt={a}, then L contains (a,e1), and for each even i[s] F contains {ei,ei+1}.

  4. There are no elements in IFL other than those specified above.

Note that “restricting” the solution S to the instance (Gt,λ,Pt,λ) used in Definition 3 yields also a solution to (Gt,λ,Pt,λ); in particular, for each path QS that intersects Et, one replaces the path segments of Q in G\Yt by the newly created vertices to obtain a solution to (Gt,λ,Pt,λ). Consequently, if S corresponds to λ then λ must be valid (however, it is clearly not true that every valid record has a solution to the whole instance that corresponds to it). Moreover, since Definition 4 is constructive and deterministic, for each solution S and node t there exists precisely one corresponding valid record λ.

The second notion that we will need is that of simplification. This is an operation which takes a valid record λ for a node t and replaces Gt by a “small representative” so that the resulting graph retains the existence of a solution corresponding to λ. Simplification can also be seen as being complementary to the construction of (Gt,λ,Pt,λ) used in Definition 3 (instead of modeling the implications of a record on Gt, we model its implications on G-Yt), and will later form an integral part of our procedure for computing valid records for nodes.

Definition 5

The simplification of a node t in accordance with λ=(δ,I,F,L) is an operation which transforms the instance (GP) into a new instance (G,P) obtained from (G-Yt,P2G-Yt) and λ by the following algorithm (see Fig. 4 for an illustration):

  1. initialize G to G-Yt and P to P2G-Yt,

  2. For each {s,{a,b}}L where (s,e)P and bYt, add a new vertex s adjacent to b to G and add (s,e) to P.

  3. For each {{a,b},{c,d}}I where a,cYt and ac, add vertices a and c into G and make them adjacent to b and d respectively, and add (a,c) into P.

  4. For each {{a,b},{c,d}}F where a,cYt and bd, add a new vertex x to G and make it adjacent to b and d.

Fig. 4.

Fig. 4

Illustration of the simplification of t in accordance with λ. Green vertices and edges represent new elements that are added to (G,P) and dashed edges represent terminal-pairs. The left, middle, and right picture corresponds to the steps 2, 3, and 4 in the algorithm given in Definition 5, respectively (Color figure online)

With regards to simplification, observe that every vertex added to G-Yt has degree at most 2 and that simplification can never increase the degree of vertices in G-Yt.

Observation 1

If there exists a solution to (GP) which corresponds to a record λ=(δ,I,F,L) for t, and if (G,P) is the result of simplification of t in accordance with λ, then (G,P) admits a solution. On the other hand, if (G,P) is the result of simplification of t in accordance with a valid record λ and if (G,P) admits a solution, then (GP) also admits a solution.

Proof

For the forward direction, consider a solution S to (GP) which corresponds to λ=(δ,I,F,L). Comparing Definition 4 with Definition 5, we observe the following:

  1. for each s-e path QS such that s,eYt and QEt, it holds that each path segment of Q in Yt begins and ends with a pair of edges in F and in particular is replaced by a single vertex in (G,P);

  2. for each s-e path QS such that s,eYt and QEt, it holds that each path segment of Q outside of Yt begins and ends with a pair of edges in I and in particular is replaced by a pair of new terminals in (G,P);

  3. for each s-e path QS such that {s,e}Yt={s}, it holds that the path segment of Q in Yt containing s ends with an edge in L and is replaced by a new terminal in (G,P), and all other path segments of Q in Yt begin and end with a pair of edges in F and are hence replaced by single vertices in (G,P).

From the above, we observe that S can be transformed into a solution S for (G,P). The backward direction then follows by reversing the above observations; in particular, given a solution S for (G,P), we use the fact that λ is valid to expand S into a full solution S to (GP).□

The Dynamic Step

Let us begin by formalizing our aim for this subsection.

Lemma 7

There is an algorithm which takes as input (GP) along with a nice width-k tree-cut decomposition (T,X) of G and a non-leaf node tV(T) and D(t) for every child t of t, runs in time (k|P|)O(k2), and outputs D(t).

Finally, we introduce two simple reduction rules which will later help us reduce our problem to Simple EDP. The first ensures that two vertices of degree at most 2 are not adjacent to each other.

Reduction Rule 1

Let (GP) be an instance of EDP containing an edge ab between two vertices of degree at most 2.

  1. If a is not a terminal, then contract ab and replace all occurrences of b in P by the new vertex;

  2. If {a,b}P, then remove {a,b} from P and remove the edge ab from G;

  3. If {a,b}P and each of a and b occurs in precisely one element of P, then delete the edge ab;

  4. Otherwise, reject (GP).

Proof of Safeness

The safeness of the first three rules is straightforward. As for the fourth rule, let us consider the conditions for when it is applied. In particular, the fourth rule is only called if either a or b occurs in three terminal pairs, or if a occurs in at least one terminal pair and b in at least two but {a,b}P. Clearly, (GP) is a NO-instance in either of these cases.□

The second reduction rule will allow us to replace thin nodes with data tables by small representatives; these representatives will only contain vertices of degree at most 2 adjacent to the original neighborhood of the thin node. For brevity and as a slight abuse of notation, we use the symbol to identify how the first element δ in a record partitions the edges in Et.

Reduction Rule 2

Let t be a thin node in V(T) with non-empty D(t).

  1. If Et={{a,b}} where aYt and if
    • (({a,b}L),,,{s,{a,b}})D(t) for some sUt, then delete Yt\{s} and create the edge sb;
    • otherwise, (({a,b}U),,,)D(t) and we delete Yt.
  2. If Et={{a,b},{c,d}} where a,cYt, Ut= and if
    • (({a,b}F,{c,d}F),,{{a,b},{c,d}},)D(t), then delete Yt and create a new vertex v adjacent to b and d; else, if
    • (({a,b}U,{c,d}U),,,)D(t), then delete Yt;
    • otherwise, (({a,b}I,{c,d}I),{{a,b},{c,d}},,)D(t) and we delete Yt\{a,c} and add {a,c} into the set P of terminals.
  3. If Et={{a,b},{c,d}} where a,cYt, Ut={s} and if
    • (({a,b}L,{c,d}U),,,{s,{a,b}})D(t) and also (({c,d}L,{a,b}U),,,{s,{c,d}})D(t), then delete Yt\{s} and make s adjacent to b and d;
    • otherwise, (({a,b}L,{c,d}U),,,{s,{a,b}})D(t) and we delete Yt\{s} and make s adjacent to b.
  4. If Et={{a,b},{c,d}} where a,cYt, Ut={s1,s2} (not necessarily s1s2) and if
    • (({a,b}L,{c,d}L),,,{{s1,{a,b}},{s2,{c,d}}})D(t) and (({a,b}L, {c,d}L),,,{{s2,{a,b}},{s1,{c,d}}})D(t), then add a new vertex s adjacent to b and d, replace all occurrences of s1 and s2 in P by s, and delete Yt;
    • otherwise, (({a,b}L,{c,d}L),,,{{s1,{a,b}},{s2,{c,d}}})D(t) and we delete Yt\{s1,s2}, and make s1 adjacent to b and s2 adjacent to d.
  5. Otherwise, (GP) is a NO -instance.

The safeness of Reduction Rule 2 follows directly from the definition of D(t) (one simply needs to check each case separately) and hence we do not provide an explicit proof for each case. To provide intuition for Case 5., we note that:

  • Case 1. captures the only two possible outcomes when |Et|=1;

  • Case 2. captures the only admissible outcomes when |Et|=2 and Ut=: the two edges in Et can either be used to connect a terminal pair outside of Gt, or remain unused, or used to connect a terminal pair inside of Gt;

  • Case 3. captures the only admissible outcomes when |Et|=2 and Ut={s}: either it is possible to route s to either of the two edges in Et, or only one of these two edges can be connected to s via an edge-disjoint path;

  • Case 4. captures the only admissible outcomes when |Et|=2 and |Ut|=2: either it is possible to route both of the unmatched terminals in Ut to either of the two edges (in parallel), or parallel routing of both unmatched terminals to Et requires each terminal to be routed to precisely one fixed edge in Et.

With Lemma 4 and Reduction Rules 12 in hand, we have all we need to handle the dynamic step. It will be useful to recall the definitions of At and Bt, and that |At|2k+1.

Proof of Lemma 7

We begin by looping through all of the at most 4k·k! distinct records for t; for each such record λ, our task is to decide whether it is valid, i.e., whether (Gt,λ,Pt,λ) is a YES-instance. On an intuitive level, our aim will now be to use branching and simplification in order to reduce the question of checking whether λ is valid to an instance of Simple EDP.

In our first layer of branching, we will select a record from the data tables of each node in At. Formally, we say that a record-set is a mapping τ:tAtλtD(t). Note that the number of record-sets is upper-bounded by (4k·k!)2k+1, and we will loop over all possible record-sets.

Next, for each record-set τ, we will apply simplification to each node tAt in accordance with τ(t), and recall that each vertex v created by this sequence of simplifications has degree at most 2. Next, we exhaustively apply Reduction Rule 1 to ensure that each such v is only adjacent to (V(G)\Yt)Xt. At this point, every vertex contained in a bag Xt for tAt has degree at most 2 and is only adjacent to Xt(V(G)\Yt).

Finally, we apply Reduction Rule 2 to replace each thin node by vertices of degree at most 2 adjacent to Xt. At this point, every vertex in V(Gt,λ)\Xt is of degree at most 2 and only adjacent to Xt, and so (Gt,λ,Pt,λ) is an instance of Simple EDP. All that is left is to invoke Lemma 4; if it is a YES-instance then we add λ to D(t), and otherwise we do not.

The running time is upper bounded by the branching factor (4k·k!)2k+1 times the time to apply our two reduction rules and the time required to solve the resulting Simple EDP instance. All in all, we obtain a running time of at most kO(k2)·|P|O(k2)=(k|P|)O(k2).

We conclude the proof by arguing correctness. Assume λ is a valid record. By Definition 3, this implies that (Gt,λ,Pt,λ) admits a solution S. For each child tAt, S corresponds to some record λtS for t; consider now the branch in our algorithm which sets τ(t)=λtS. Then by Observation 1 it follows that each simplification carried out by the algorithm preserves the existence of a solution to (Gt,λ,Pt,λ). Since both our reduction rules are safe, the instance of Simple EDP we obtain at the end of this branch must also be a YES-instance.

On the other hand, assume the algorithm adds a record λ into Dt. This means that the resulting Simple EDP instance was a YES-instance. Then by the safeness of our reduction rules and by the second part of Observation 1, the instance obtained by reversing the reduction rules and simplifications was also a YES-instance; in particular (Gt,λ,Pt,λ) is a YES-instance and so λ is a valid record.□

We now have all the ingredients we need to prove our main result.

Theorem 2

EDP can be solved in time at most O(n3)+kO(k2)n2+(k|P|)O(k2)n, where k is the tree-cut width of the input graph and n is the number of its vertices.

Proof

We begin by invoking Theorem 1 to compute a tree-cut decomposition of G of width at most 2k and then converting it into a nice tree-cut decomposition (this takes time kO(k2)n2 and O(n3), respectively). Afterwards, we use Lemma 6 to compute D(t) for each leaf of T, followed by a recursive leaf-to-root application of Lemma 7. Once we compute D(r) for the root r of T, we output YES if and only if D(r)={(,,,)}.□

Kernelizing EDP Parameterized by Feedback Edge Set

The goal of this section is to provide a fixed-parameter algorithm for EDP which exploits the structure of the input graph exclusively. While tree-cut width cannot be used to obtain such an algorithm, here we show that the feedback edge set number can. More specifically, we obtain a linear kernel for EDP parameterized by the feedback edge set number. Our kernel relies on the following two facts:

Fact 1

A minimum feedback edge set of a graph G can be obtained by deleting the edges of minimum spanning trees of all connected components of G, and hence can be computed in time O(|E(G)|+|V(G)|).

Fact 2

[14] EDP can be solved in polynomial time when G is a forest.

Consider an instance (GP) of EDP and let XE(G) be a minimum feedback edge set X. Let Y be the set of all vertices incident to at least one edge from X. For the purposes of this section, it will be useful to view P as a multiset rather than a set. We begin with two simple reduction rules which allow us to remove some degree 2 vertices and all leaves disjoint from Y.

Reduction Rule 3

Let v,a,bV(G) be such that NG(v)={a,b}, vY and abE(G). If v does not occur in any terminal pair in P, then delete v and add the edge ab into E(G).

Proof of Safeness

Observe that every solution to the original instance which uses an edge incident to v must contain a path which traverses through both av and vb, and after the reduction rule is applied one can simply replace these two edges in that path by ab. Any solution in the reduced instance can be similarly transformed into a solution to the original instance. Moreover, X clearly remains a feedback edge set in the reduced instance.□

Reduction Rule 4

Let vV(G) be such that NG(v)={w}. Then:

  1. if v occurs in no terminal pair in P, delete v from G;

  2. if v occurs in precisely one terminal pair {v,w} in P, delete v from G and delete {v,w} from P;

  3. if v occurs in precisely one terminal pair {v,y} in P where yw, delete v from G and replace {v,y} in P by {w,y};

  4. if v occurs in at least two terminal pairs in P, reject (GP).

Proof of Safeness

In the first case, it is easy to see that no path in the solution can contain v. For the second and third case, safeness follows by the fact that every path connecting v to its assigned terminal pair must use the edge vw and no other path can use vw. For the last case, simply observe that a leaf cannot appear in more than one edge-disjoint path.□

Observe that the exhaustive application of Reduction Rules 3 and 4 results in an instance (HL) where every leaf lies in Y. Moreover, every vertex of degree 2 must lie in at least one terminal pair, or lie in Y, or be adjacent to a vertex in Y (since Reduction Rule 3 does not apply to a C3). We now introduce a new rule and lemma which will help us deal with the potentially large number of vertices of degree 2 that occur in terminal pairs.

Reduction Rule 5

Let vwE(H) be such that {v,w}L. Then remove vw from E(H) (and also from X, if it was in X), and remove {v,w} from L.

Proof of Safeness

If the solution connects the terminal pair {v,w} via the edge vw, the solution is preserved even after applying the rule. If the solution connects the pair using a different path, we can obtain an equivalent solution by instead connecting v to w via the edge vw and—if this edge was used to connect a different terminal pair—using the old v-w path as a replacement for that edge. Finally, if the reduced instance admits a solution, it is easy to see that the graph also had a solution before the application of the rule to delete vw and {v,w}.□

We can now prove the following for the instance (H,L) obtained from (HL) by exhaustively applying Reduction Rule 5.

Lemma 8

Let a,b,cV(H)\Y be three degree-2 vertices in H such that N(b)={a,c}. Then (H,L) is a NO-instance.

Proof

By the exhaustive application of Reduction Rule 3, the vertex b must occur in at least one terminal pair. Moreover, since we have also exhaustively applied Reduction Rule 5, this terminal pair can be neither {b,a} nor {b,c}. And since both a and c have degree 2, each of these must also occur in some terminal pair, say {a,a} and {c,c}.

Now, to reach a contradiction let us consider a hypothetical solution S for (H,L). Clearly S must contain an a-a path, and this path cannot start with the edge ab (since then it would have to continue with bc, preventing b from using any edge to reach its own terminal pair). By symmetry, S must also contain a c-c path which does not start with the edge cb. But now the only two vertices reachable by an edge-disjoint path from b are a and c, and we have argued that b has a terminal pair with a vertex different from a and c. Hence, we have reached a contradiction to the existence of S.□

At this point, we can prove that we have a linear kernel, as desired.

Theorem 3

EDP admits a linear kernel parameterized by the feedback edge set number of the input graph.

Proof

Let us consider the graph (H,L) obtained by the exhaustive application of Reduction Rules 35. Since we have already established the safeness of these rules, it suffices to argue that the instance has size linear in |Y|. We now check if Lemma 8 applies—if yes then we reject, and otherwise we proceed knowing that G contains no path of 3 consecutive degree-2 vertices disjoint from Y.

Let us now consider the number of vertices in H, which is the same as the number of vertices in the graph Q=H-X. By the exhaustive application of Reduction Rule 4, every leaf in Q lies in Y and hence in particular Q contains at most |Y| leaves. Consequently, the number of vertices of degree at least 3 is also upper-bounded by |Y|. It remains to bound the number of vertices of degree precisely 2 in Q.

To this end, let Z be the union of Y with the set of all vertices of degree at least 3, and recall that |Z|2|Y|. By the exhaustive application of Reduction Rule 3 and our use of Lemma 8, every vertex of degree 2 in Q must be a neighbor of at least one vertex in Z. The number of such vertices is upper-bounded by 2 times the number of edges of a tree with at most |Z| vertices, i.e., at most 2·(2|Y|-1). We conclude that Q (and hence also H) contains at most 6|Y| vertices. Moreover, Q contains at most 6|Y| edges and hence G contains at most 6|Y|+|X|7|Y| edges.

To conclude the proof, it suffices to bound the size of L. Here, we simply observe that a YES-instance cannot contain more terminal pairs than the number of edges in H (since terminal pairs always contain two distinct vertices), and so either |L|7|Y| or we can correctly reject (H,L).□

Acknowledgements

Robert Ganian acknowledges support from the Austrian Science Fund (FWF, Project P31336). The authors wish to thank the anonymous reviewers for their helpful comments.

Funding

Open access funding provided by Austrian Science Fund (FWF).

Footnotes

1

For technical reasons, F will also store information about paths with unmatched terminals which use multiple edges in Et—see Definition 4 later.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Contributor Information

Robert Ganian, Email: rganian@gmail.com.

Sebastian Ordyniak, Email: sordyniak@gmail.com.

References

  • 1.Berend D, Tassa T. Improved bounds on bell numbers and on moments of sums of random variables. Probab. Math. Stat. 2010;30(2):185–205. [Google Scholar]
  • 2.Chekuri C, Khanna S, Shepherd FB. An O(sqrt(n)) approximation and integrality gap for disjoint paths and unsplittable flow. Theory Comput. 2006;2(7):137–146. doi: 10.4086/toc.2006.v002a007. [DOI] [Google Scholar]
  • 3.Courcelle B, Makowsky JA, Rotics U. Linear time solvable optimization problems on graphs of bounded clique-width. Theory Comput. Syst. 2000;33(2):125–150. doi: 10.1007/s002249910009. [DOI] [Google Scholar]
  • 4.Cygan M, Fomin FV, Kowalik L, Lokshtanov D, Marx D, Pilipczuk M, Pilipczuk M, Saurabh S. Parameterized Algorithms. Berlin: Springer; 2015. [Google Scholar]
  • 5.Cygan M, Fomin FV, Kowalik Ł, Lokshtanov D, Marx D, Pilipczuk M, Pilipczuk M, Saurabh S. Parameterized Algorithms. Berlin: Springer; 2014. [Google Scholar]
  • 6.Diestel R. Graph Theory. 4. Heidelberg: Springer; 2010. [Google Scholar]
  • 7.Downey RG, Fellows MR. Fundamentals of Parameterized Complexity. Texts in Computer Science. Berlin: Springer; 2013. [Google Scholar]
  • 8.Ene, A., Mnich, M., Pilipczuk, M., Risteski, A.: On routing disjoint paths in bounded treewidth graphs. In: Proceedings SWAT 2016, vol. 53 of LIPIcs, pp. 15:1–15:15. Schloss Dagstuhl (2016)
  • 9.Fleszar, K., Mnich, M., Spoerhase, J.: New algorithms for maximum disjoint paths based on tree-likeness. In: Proceedings ESA 2016, pp. 42:1–42:17 (2016) [DOI] [PMC free article] [PubMed]
  • 10.Flum J, Grohe M. Parameterized Complexity Theory. Texts in Theoretical Computer Science. Berlin: Springer; 2006. [Google Scholar]
  • 11.Ganian, R., Kim, E.J., Szeider, S.: Algorithmic applications of tree-cut width. In: Proceedings MFCS 2015, vol. 9235 of LNCS, pp. 348–360. Springer (2015)
  • 12.Ganian, R., Klute, F., Ordyniak, S.: On structural parameterizations of the bounded-degree vertex deletion problem. In: Proceedings STACS 2018, pp. 33:1–33:14 (2018)
  • 13.Ganian, R., Ordyniak, S., Sridharan, R.: On structural parameterizations of the edge disjoint paths problem. In: Proceedings ISAAC 2017, vol. 92 of LIPIcs, pp. 36:1–36:13. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2017)
  • 14.Garg N, Vazirani VV, Yannakakis M. Primal-dual approximation algorithms for integral flow and multicut in trees. Algorithmica. 1997;18(1):3–20. doi: 10.1007/BF02523685. [DOI] [Google Scholar]
  • 15.Giannopoulou, A.C., Pilipczuk, M., Raymond, J.-F., Thilikos, D.M., Wrochna, M.: Linear kernels for edge deletion problems to immersion-closed graph classes. In: Chatzigiannakis, I., Indyk, P., Kuhn, F., Muscholl, A. (eds.) 44th International Colloquium on Automata, Languages, and Programming, ICALP 2017, 10–14 July, 2017, Warsaw, Poland, vol. 80 of LIPIcs, pp. 57:1–57:15. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2017)
  • 16.Karp RM. On the computational complexity of combinatorial problems. Networks. 1975;5(1):45–68. doi: 10.1002/net.1975.5.1.45. [DOI] [Google Scholar]
  • 17.Kawarabayashi, K., Kobayashi, Y., Kreutzer, S.: An excluded half-integral grid theorem for digraphs and the directed disjoint paths problem. In: Proceedings STOC 2014, pp. 70–78. ACM (2014)
  • 18.Kim, E., Oum, S., Paul, C., Sau, I., Thilikos, D.M.: An FPT 2-approximation for tree-cut decomposition. In: Sanità, L., Skutella, M. (eds.) Proceedings WAOA 2015, vol. 9499 of LNCS, pp. 35–46. Springer (2015)
  • 19.Kolliopoulos SG, Stein C. Approximating disjoint-path problems using packing integer programs. Math. Program. 2004;99(1):63–87. doi: 10.1007/s10107-002-0370-6. [DOI] [Google Scholar]
  • 20.Marx D, Wollan P. Immersions in highly edge connected graphs. SIAM J. Discrete Math. 2014;28(1):503–520. doi: 10.1137/130924056. [DOI] [Google Scholar]
  • 21.Nishizeki T, Vygen J, Zhou X. The edge-disjoint paths problem is NP-complete for series–parallel graphs. Discrete Appl. Math. 2001;115(1–3):177–186. doi: 10.1016/S0166-218X(01)00223-2. [DOI] [Google Scholar]
  • 22.Robertson N, Seymour PD. Graph minors XIII. The disjoint paths problem. J. Combin. Theory Ser. B. 1995;63(1):65–110. doi: 10.1006/jctb.1995.1006. [DOI] [Google Scholar]
  • 23.Robertson N, Seymour PD. Graph minors. XVIII. tree-decompositions and well-quasi-ordering. J. Combin. Theory Ser. B. 2003;89(1):77–108. doi: 10.1016/S0095-8956(03)00067-4. [DOI] [Google Scholar]
  • 24.Scheffler, P.: Practical linear time algorithm for disjoint paths in graphs with bounded tree-width. In: Technical Report TR 396/1994. FU Berlin, Fachbereich 3 Mathematik (1994)
  • 25.Wollan P. The structure of graphs not admitting a fixed immersion. J. Combin. Theory Ser. B. 2015;110:47–66. doi: 10.1016/j.jctb.2014.07.003. [DOI] [Google Scholar]
  • 26.Zhou X, Tamura S, Nishizeki T. Finding edge-disjoint paths in partial k-trees. Algorithmica. 2000;26(1):3–30. doi: 10.1007/s004539910002. [DOI] [Google Scholar]

Articles from Algorithmica are provided here courtesy of Springer

RESOURCES