On Algorithms Employing Treewidth for L-bounded Cut Problems

Given a graph G = (V,E) with two distinguished vertices s, t ∈ V and an integer parameter L > 0, an L-bounded cut is a subset F of edges (vertices) such that the every path between s and t inG\F has length more than L. The task is to find an L-bounded cut of minimum cardinality. Though the problem is very simple to state and has been studied since the beginning of the 70’s, it is not much understood yet. The problem is known to be NP-hard to approximate within a small constant factor even for L ≥ 4 (for L ≥ 5 for the vertex–deletion version). On the other hand, the best known approximation algorithm for general graphs has approximation ratio only O(n) in the edge case, and O( √ n) in the vertex case, where n denotes the number of vertices. We show that for planar graphs, it is possible to solve both the edge– and the vertex–deletion version of the problem optimally in O((L+2)n) time. That is, the problem is fixed-parameter tractable (FPT) with respect to L on planar graphs. Furthermore, we show that the problem remains FPT even for bounded genus graphs, a super class of planar graphs. Our second contribution deals with approximations of the vertex– deletion version of the problem. We describe an algorithm that for a given graph G, its tree decomposition of width τ and vertices s and t computes a τ -approximation of the minimum L-bounded s− t vertex cut; if the decomposition is not given, then the approximation ratio is O(τ √ log τ). For graphs with treewidth bounded by O(n1/2− ) for any > 0, but not by a constant, this is the best approximation in terms of n that we are aware of. Submitted: September 2017 Reviewed: November 2017 Revised: December 2017 Reviewed: December 2017 Revised: January 2018 Accepted: January 2018 Final: Februray 2018 Published: February 2018 Article type: Regular paper Communicated by: D. Wagner This research was partially supported by project GA15-11559S of GA ČR E-mail address: petr.kolman@mff.cuni.cz (Petr Kolman) 178 P. Kolman On Algorithms Employing Treewidth for L-bounded Cut


Introduction
The subject of this paper is a variation of the classical s−t cut problem, namely the minimum L-bounded edge (vertex) cut problem: given a graph G = (V, E) with two distinguished vertices s, t ∈ V and an integer parameter L > 0, find a subset F of edges (vertices) of minimum cardinality such that every path between s and t in G \ F has length more than L. The problem has been studied in various contexts since the beginning of the 70's (e.g., [1,26,2]) and occasionally it appears also under the name the short paths interdiction problem [19].
Closely related is the shortest path most vital edges and vertices problem (e.g.[3,4,5]): given a graph G, two distinguished vertices s and t and an integer k, the task is to find a subset F of k edges (vertices) whose removal maximizes the increase in the length of the shortest path between s and t.If we introduce an additional parameter -the desired minimum distance of s and t -we obtain a parameterized version of the L-bounded cut problem: given a graph G, two distinguished vertices s and t and integers k and L, does there exist a subset F of at most k edges (vertices) such that every path between s and t in G \ F has length more than L? We also note that N P-hardness of the shortest path most vital edges (vertices) problem immediately implies N P-hardness of the L-bounded edge (vertex) cut problem, and vice versa.
In contrast to many other cut problems on graphs (e.g., multiway cut, multicut, sparsest cut, balanced cut, maximum cut, multiroute cut), the known approximations of the minimum L-bounded cut problem are substantially weaker.In this work we focus on algorithms for restricted graph classes, namely planar graphs, bounded genus graphs and graphs with bounded, yet not constant, treewidth, and provide new results for the L-bounded cut problem on them; the results for planar graphs solve one of the open problems suggested by Bazgan et al. [5].We also remark that the L-bounded cut problem does not fit into the framework of Czumaj et al. [9] that is applicable for some N P-hard problems in graphs with superlogarithmic treewidth.
Related Results.N P-hardness of the shortest path most vital edges problem (and, thus, as noted above, also of the L-bounded cut problem) was proved by Bar-Noy et al. [4].The best known approximation algorithm for the minimum L-bounded cut problem on general graphs has approximation ratio only O(min{L, n/L}) ⊆ O( √ n) for the vertex case and O(min{L, n 2 /L 2 , √ m}) ⊆ O(n 2/3 ) for the edge case, where m denotes the number of edges and n the number of vertices [2].On the lower bound side, the edge-deletion version of the problem is known to be N P-hard to approximate within a factor of 1.1377 for L ≥ 4, and the vertex-deletion version for L ≥ 5 [2]; for smaller values of L the problem is solvable in polynomial time [26,27].Independently, Khachiyan et al. [19] proved that a version of the problem with edge lengths is N P-hard to approximate within a factor smaller than 1.36.Recently, assuming the Unique Games Conjecture, Lee [23] proved that the problem is N P-hard to approximate within any constant factor.
An instance of the L-bounded edge (vertex, resp.)cut problem on a graph G = (V, E) of treewidth τ can be cast as an instance of constraint satisfaction problem (CSP) with |V | variables, domain of size L + 2 (L + 3, resp.) and treewidth τ . 1 As CSP instances with n variables, treewidth bounded by τ and domain by D can be solved in O(D τ n) time [15] (when a tree decomposition of width τ of the constraint graph is given), the problem is fixed-parameter tractable with respect τ .Dvořák and Knop [10] provide a direct proof of the same result with a slightly worse dependance on L and τ ; they also prove that the problem is W [1]-hard when parameterized by the treewidth only.
From the point of view of parameterized complexity, the problem was also studied by Golovach and Thilikos [16], Bazgan et al. [5] and by Fluschnik et al. [14].
For planar graphs, the problem is known to be N P-hard [13,30], too, and the edge-deletion version of the problem has no polynomial-size kernel when parameterized by the combination of L and the size of the optimal solution [14].
For more detailed overview of other related results and applications, we refer to the papers [19,2,27].For more background on parameterized algorithms, we refer to the textbook by Cygan et al. [8].
Our Contribution.We show that on planar graphs, both the edge-and the vertex-deletion version of the problem are solvable in O((L + 2) 3L n) time.That is, we show that on planar graphs the minimum L-bounded cut problem is fixedparameter tractable (FPT) with respect to L. Furthermore, we show that the problem remains FPT even for bounded genus graphs, a super class of planar graphs.This is in contrast with the situation for general graphs -the problem is NP-hard even for L = 4 and L = 5, for the edge-and vertex-deletion versions, respectively.
Our second contribution is a τ -approximation algorithm for the vertexdeletion version of the problem, if a tree decomposition of width τ is given.If the decomposition is not given, then using the best known algorithm to compute a tree decomposition of a given graph, we obtain an O(τ √ log τ )-approximation for general graphs with treewidth τ , and an O(τ )-approximation for planar graphs, graphs excluding a fixed minor and graphs with treewidth bounded by O(log n).For graphs with treewidth bounded by τ = O(n 1/2− ) for any > 0, but not by a constant, in terms of n, this is the best approximation we are aware of.
Our results are based on a combination of observations about the structure of L-bounded cuts and various known results.The proofs are straightforward but apparently non-obvious, considering the attention given to the problem in recent years.

Preliminaries
Throughout the paper, given a graph G = (V, E), we use m to denote the number of edges in G, that is, m = |E|, and for u, v ∈ V , we use d(u, v) to denote the shortest path distance between u and v, that is, the number of edges on a shortest path.For a graph G = (V, E) and a subset of vertices W ⊂ V , a subgraph of G induced by W is the graph (W, F ) where F is the subset of edges with both vertices in W , that is, F = {{u, v} ∈ E | u, v ∈ W }. For a graph G = (V, E) and a subset of edge F ⊂ E, we use G \ F to denote the graph (V, E \ F ), and for a subset of vertices W ⊂ V , we use G \ W to denote the subgraph of G induced by V \ W .
Given a graph G = (V, E) with two distinguished vertices s and t, a subset of vertices For notions related to the treewidth of a graph and tree decomposition we stick to the standard terminology as given in the book by Kloks [21].A tree decomposition of a graph G = (V, E) is a tree T with a node set V (T ) in which each node a ∈ V (T ) has an assigned set of vertices B(a) ⊆ V , called a bag, such that a∈T B(a) = V with the following properties: • for any {u, v} ∈ E, there exists a node a ∈ V (T ) such that u, v ∈ B(a), ) for all nodes c on the path between a and b in T .
The tree decomposition is rooted if one of the nodes in the tree T is specified as the root.The treewidth of a tree decomposition T is the size of the largest bag of T minus one.The treewidth of a graph G is the minimum treewidth over all possible tree decompositions of G. To distinguish vertices of a graph G and of a tree decomposition T of G, we call the vertices of the tree decomposition nodes.A tree decomposition satisfies the non-containment condition if no bag is contained in any other bag.
A simple yet important property of tree decompositions is stated in the following lemma.
Lemma 1 (Folklore) Let G be a graph and T a tree decomposition of G satisfying the non-containment condition.Then Note that the size of the cut B(a) ∩ B(b) in Lemma 1 is at most the width of the tree decomposition T .In a rooted tree, the parent of a node is the node connected to it on the path to the root; every node except the root has a unique parent.A child of a node v is a node of which v is the parent.A descendant of any node v is any node which is either the child of v or is (recursively) the descendant of any of the children of v.A leaf is a vertex having no child.

Fixed-parameter Tractability on Planar and Bounded Genus Graphs
Our main tools are the following two well-known results.
Theorem 1 (Robertson and Seymour [28], Bodlaender [6]) The treewidth of a planar graph with radius d is at most 3d.
Theorem 2 (Freuder [15]) CSP instances with n variables, treewidth bounded by τ and domain by D are solvable in O(D τ n) time.
Since the minimum L-bounded edge (vertex, resp.)cut problem on a graph G = (V, E) of treewidth τ can be cast as a CSP instance with |V | variables, treewidth τ and domain of size ), as already stated in the introduction and explained in Appendix A.
The main result of this section says that the L-bounded cut problem on planar graphs is fixed-parameter tractable, with respect to the parameter L.
Proof: We prove the theorem for the edge-deletion version; the proof for the vertex-deletion version is analogous. Given In words, V is the subset of vertices lying on paths of length at most L between s and t.Without loss of generality we assume that d(s, t) ≤ L -otherwise the problem is trivial.Let G be the subgraph of G induced by V .Note that the radius of G is at most L as, by definition, d(s, v) ≤ L for every v ∈ V .
The set V (and, thus, the subgraph G ) can be computed using the O(n)time algorithm for single-source shortest paths on planar graphs by Klein et al. [20] that we run twice, once for s and once for t.Note that both s and t belong to V .
Obviously, G is a planar graph, and by Theorem 1, its treewidth is at most 3L.We solve the L-bounded problem for G and s and t by Theorem 2 in O((L + 2) 3L n) time.Let F be the optimal solution for G .We claim that F is an optimal solution for the original instance of the problem on G as well.To prove feasibility of F , assume, for contradiction, that there exists an s − t-path p of length at most L in (V, E \ F ).As there is no such path in G \ F , p has to use at least one vertex v from V \ V .However, this yields a contradiction: on the one hand, d(s, v) + d(v, t) ≤ L as v is on an s − t-path of length at most L, on the other hand, d(s, v) + d(v, t) > L as v is not in V .Concerning the optimality of F , it is sufficient to note that the size of an optimal solution for the subgraph G is a lower bound on the size of an optimal solution for G.
Theorem 1 was generalized by Eppstein [11] to graphs of bounded genus and this result makes it possible to generalize Theorem 3 also to graphs of bounded genus.
Theorem 4 (Eppstein [11]) There exists a constant ĉ such that the treewidth of every graph with radius d and genus g is at most ĉdg.
In the same way as we used Theorem 1 to prove fixed-parameter tractability for the L-bounded cut problem on planar graphs (Theorem 3), we can use Theorem 4 to prove fixed-parameter tractability of the L-bounded cut problem on graphs of bounded genus.The only other change is that instead of the O(n)time single-source shortest path algorithm for planar graphs [20] we use the O(n + m)-time single-source shortest path algorithm for general graphs [29].Considering the fact that by Euler's formula, genus g graphs have O(n + g) edges [17], we obtain the following theorem.

τ -Approximation for L-bounded Vertex Cuts
In this section we describe an algorithm for the L-bounded s − t vertex cut problem whose approximation ratio is parameterized by the width τ of a tree decomposition T of the input graph G. Throughout this section we assume that the vertices s and t are not connected by an edge -in such a case there is no L-bounded s − t vertex cut in G. Without loss of generality we also assume that tree decompositions in this section satisfy the non-containment condition.
Consider a graph G and a rooted tree decomposition T of G of width τ .By d(G, s, t) we denote the distance between s and t in G. Given a subset R ⊆ V (T ) of nodes inducing a connected subtree of T , a deepest node in R is a node in R with no child in R. The following simple observation captures the main properties of G and T that make the algorithm of this section work.For notational simplicity, in the rest of the section we use the term L-bounded path for an s − t path of length at most L.  The L-bounded cut is computed using the recursive procedure Lbounded cut(G, T, s, t, L) described in Algorithm 1.In step 12, prune(G, T, C) is a procedure that for a graph G = (V, E), a tree decomposition T and a vertex set C ⊂ V , deletes from G the vertices in C and all adjacent edges, and modifies the tree decomposition T by deleting the vertices in C from all bags.
Algorithm 1 L-bounded cut(G, T, s, t, L) # no need to remove anything b ← a deepest node in R (G , T ) ← prune( Ḡb , Tb , B(b) \ {s, t}) 13: S ← L-bounded cut(G , T , s, t, L) The main result of this section is obtained from Lemmas 3 and 4.
Lemma 3 Given a graph G = (V, E), two vertices s, t ∈ V and a tree decomposition T of G of width τ , Algorithm 1 finds in polynomial time an L-bounded s − t vertex cut.
Proof: To prove the correctness of Algorithm 1, we proceed by induction on the recursion depth.We start by showing the correctness of the final recursive calls.To this end we distinguish the following three cases dealt with in the algorithm: Case 1. d(G, s, t) > L. As there is no need to remove anything in this case, the correctness is obvious from the description of the algorithm.Inductive step.Consider a run of the procedure with a graph G and its tree decomposition T , and let R and b be the objects defined by the procedure in steps 3 and 4. Note that the set R induces a connected subgraph of T .
The inductive assumption (i.e., S is an L-bounded cut in G ) combined with the second point of Claim 2 implies that the set S ∪B(b)\{s, t} is an L-bounded s − t cut in G, completing the inductive step in the proof of the correctness.
Concerning the running time, the second point of Claim 2 implies that the vertex b selected as a deepest node from R in some iteration will not belong to the set R in any of the future recursive calls.Thus, the size of the set R decreases by at least one with each new recursive call, yielding an upper bound V (T ) on the number of recursive calls.Apart from the recursive call, each level of recursion can be implemented in time O(τ • |V (T )|), yielding an upper bound O(τ • |V (T )| 2 ) on the total running time.
Let cost(G, T ) be the size of the solution computed by Algorithm 1 for a graph G and a tree decomposition T of G, and let opt(G) be the size of an optimal solution for the graph G.
Lemma 4 Given a graph G = (V, E), two vertices s, t ∈ V and a tree decomposition T of G of width τ , then cost(G, T ) ≤ τ • opt(G) .
Proof: Similarly as in the proof of Lemma 3, we proceed by induction on the recursion depth.We start by showing the correctness of the bound for the final recursive calls and, as before, we distinguish the following three cases: Case 1. d(G, s, t) > L. For graphs with no L-bounded s − t path, the claim is obvious as cost(G, T ) = 0 in this case.Inductive step.
From the description of the algorithm we know that cost(G, T ) ≤ τ + cost(G , T ).Points 1 and 3 of Claim 2 imply opt(G) ≥ 1 + opt(G ).Combining these observations with the inductive assumption cost(G , T Putting Lemmas 3 and 4 together, we get the main result of this section.
Theorem 6 Given a graph G, a rooted tree decomposition T of G of width τ , vertices s and t and an integer L, Algorithm 1 finds in polynomial time a τ -approximation of the minimum L-bounded s − t vertex cut.
Remark.At the cost of increasing the approximation ratio to τ + 1, the steps 5-10 of the algorithm can be simplified as follows: In the case that we are not given a tree decomposition on input, we start by constructing it using one of the known algorithms: Feige et al. [12] describe a polynomial time algorithm that yields, for a given graph of treewidth τ , a tree decomposition of width O(τ √ log τ ); for planar graphs and for graphs excluding a fixed minor, the width is in O(τ ).Similarly, for graphs with treewidth bounded by O(log n), Bodlaender et al. [7] describe how to find in polynomial time a tree decomposition of width O(τ ).Depending on the input graph, one of these algorithms is used to obtain a desired tree decomposition.Thus, we obtain the following corollary.
Corollary 7 There exists an O(τ √ log τ )-approximation algorithm for the minimum L-bounded vertex cut on graphs with treewidth τ ; for planar graphs, graphs excluding a fixed minor and graphs with treewidth bounded by O(log n), there exists an O(τ )-approximation algorithm.

Open problems
Having shown fixed-parameter tractability of the L-bounded cut problem on planar and bounded genus graphs by giving L O(L) n time algorithms, the question arises whether the presented bounds are optimal.Could the dependence on the parameter L be improved to 2 O(L) ?As our proofs of fixed-parameter tractability rely on the existence of the algorithm for CSP, a much more general class of problems, on graphs of bounded treewidth, it is conceivable that a better bound is possible; on the other hand, under the Strong Exponential Time Hypothesis [18], matching lower bounds for some problems expressible as CSP (e.g., q-coloring) do exist [25].
A natural open problem for planar graphs is whether the shortest path most vital edges (vertices) problem is fixed-parameter tractable on them, with respect to the number k of deleted edges (vertices).Despite the close relation of the Lbounded cut problem and the shortest path most vital edges (vertices) problem, fixed-parameter tractability of one of them does not seem to easily imply fixedparameter tractability of the other problem.
The τ -approximation for L-bounded vertex cuts is based on the fact that bags in a tree decomposition yield vertex cuts of size at most equal the width of the decomposition.Unfortunately, this is not the case for edge cuts -one can easily construct bounded treewidth graphs with no small balanced edge cuts.Thus, another open problem is to look for better approximation algorithms for minimum L-bounded edge cuts, for graphs with treewidth bounded by τ .
Yet another challenging and more general open problem is to narrow the gap between the upper and lower bounds on the approximation ratio of algorithms for the L-bounded cut for general graphs: the best upper bound for the edgeand vertex-deletion version of the problem is O(n 2/3 ) and O( √ n), resp., while the best lower bound is constant.
Finally, we note that the edge-deletion version of the L-bounded cut problem in a graph G = (V, E) is a kind of a vertex ordering problem.We are looking for a mapping from the vertex set V to the set {0, 1, . . ., L, L + 1} such that (s) = 0, (t) = L + 1 and the objective is to minimize the number of edges {u, v} ∈ E for which | (u) − (v)| > 1; given a solution F ⊆ E, the lengths of the shortest paths from s to all other vertices in G \ F yield such a mapping of cost |F |.There are plenty of results dealing with linear vertex ordering problems where one is looking for a bijective mapping from the vertex set V to the set {1, 2, . . ., n} minimizing some objective function (e.g., the minimum cut linear arrangement problem, the minimum feedback arc set problem [24]).However, the requirement that the mapping is a bijection to a set of size n seems crucial in the design and analysis of approximation algorithms for these problems.The question is whether it is possible to obtain good approximations for some nontrivial non-linear vertex ordering problems.
A Appendix L-bounded Cut as a CSP Instance An instance Q = (V, D, H, C) of CSP [22] consists of • a set of variables z v , one for each v ∈ V ; without loss of generality we assume that V = {1, . . ., n}, • a set D of finite domains D v (also denoted D(v)), one for each v ∈ V , For a vector z = (z 1 , z 2 , . . ., z n ) and Given an edge-deletion version of the L-bounded cut instance G = (V, E) with s, t ∈ V and an integer L, we construct the corresponding minimization CSP instance Q = (V, D, H, C) as follows.The set of variables of Q coincides with the set V of vertices of G and for each v ∈ V , the corresponding domain D v is {0, 1, . . ., L, L + 1}.The set of hard constraints H consists of two constraints, for each edge {i, j} ∈ E of the graph G.
To see that a feasible solution for the constructed instance Q of CSP corresponds to a feasible solution of the L-bounded cut problem of the same cost, and vice versa, we observe the following.
Given an optimal solution F ⊂ E of the edge-deletion version of the Lbounded cut problem, we distinguish two cases.If s and t belong to the same component of connectivity in (V, E \ F ), then the vector of shortest path distances from s to all other vertices in (V, E \ F ) yields a feasible solution for the CSP instance Q (to be more precise, if some of the distances are larger than L + 1, we replace in the vector every such value by L + 1); if s and t do not belong to the same component of connectivity in (V, E \ F ), we obtain a feasible solution for Q by assigning the value 0 to every vertex in the s-component and the value L + 1 to every vertex in the t-component.Note that in both cases the cost of the L-bounded cut and the cost of the CSP instance Q are the same.We also note that for every feasible solution (z 1 , . . ., z n ) of the instance Q, the set F = {{u, v} ∈ E | |z u − z v | > 1} is an L-bounded cut of the same cost.Finally, we note that the constraint graph of Q coincides with the original graph G.
For the vertex-deletion version of the L-bounded cut problem in G = (V, E), the corresponding minimization CSP instance Q = (V, D, H, C) is defined similarly.For each v ∈ V , we have D v = {−1, 0, . . ., L, L + 1} -the domain of every vertex is extended by an extra element −1 representing the fact that v belongs to the L-bounded cut.The set of hard constraints H contains constraints C {s} = {0} and C {t} = {L + 1}, and for each edge {i, j} ∈ E also a constraint The set of soft constraints contains for each vertex u other than s and t a constraint C {u} = {0, 1 . . ., L, L + 1} .
Given an optimal solution U ⊂ V of the vertex-deletion version of the Lbounded cut problem, we distinguish two cases.If s and t belong to the same component of connectivity of G = G \ U , then assigning to every v ∈ U the value −1 and assigning to every v ∈ V \ U its distance from s in G yields a feasible solution for the CSP instance Q (to be more precise, if some of the distances are larger than L + 1, we replace in the vector every such value by L + 1); if s and t do not belong to the same component of connectivity in G , we obtain a feasible solution for Q by assigning the value 0 to every vertex in the s-component, the value L + 1 to every vertex in the t-component and the value −1 to every v ∈ U .Note that in both cases the size of the L-bounded cut and the cost of the CSP instance Q are the same.We also note that for every feasible solution (z 1 , . . ., z n ) of the instance Q, the set U = {v ∈ V | z v = −1} is an L-bounded cut of size equal the cost of Q.
Given a node b of the rooted tree decomposition T , we denote by T b the subtree of T consisting of b and of all its descendants, and by G b the subgraph of G induced by vertices in bags of T b ; similarly, we denote by Tb the subtree of T consisting of all nodes in T including b and excluding the descendants of b and by Ḡb the subgraph of G induced by vertices in bags of Tb .Note that b is the only node of the tree T that appears in both subtrees T b and Tb .

Claim 2
If b is a deepest node in the set R = {a ∈ V (T ) | d(G a , s, t) ≤ L} and G = Ḡb \ (B(b) \ {s, t}), then the following holds: 1.There is at least one L-bounded path in G b .2. There is no L-bounded path in G b \ (B(b) \ {s, t}).

3 .
The L-bounded paths in G b are internally vertex disjoint with the Lbounded paths in G .Proof: The first point follows from the membership of b in the set R. The second point is obvious if b has none or exactly one child.Assume that b is a node with two or more children and that there is an L-bounded path p between s and t in G b \ (B(b) \ {s, t}).Then, by the choice of b (i.e., a deepest node in R), there exist children c and c of b and vertices x, x on the path p such that x ∈ V (G c ) \ V (G c ) and x ∈ V (G c ) \ V (G c ).Consider the vertex cut B(b) (cf.Lemma 1) and note that x and x belong to different components of connectivity of G b \ B(b).Thus, the sub-path of p between x and x has to contain as an inner vertex a vertex from B(b) \ {s, t}, a contradiction.We conclude that there is no L-bounded path in G b \ (B(b) \ {s, t}).For the third point, note that any L-bounded path in G either intersects the set B(b) \ {s, t} or appears in G \ (B(b) \ {s, t}).As every L-bounded path in G b intersects, by the second part of this claim, the set B(b) \ {s, t}, and as G is a subgraph of G \ (B(b) \ {s, t}), the third part of the Claim follows.

Case 2 .
|B(b) ∩ {s, t}| = 1 (where b is the node selected in step 4).As there exists at least one L-bounded path in G b , both vertices s and t appear in G b , and as |B(b) ∩ {s, t}| = 1, one of the vertices s and t appears in G b \ B(b).By the second point of Claim 2, B(b) \ {s, t} is an L-bounded cut in G b , and every L-bounded path in G disjoint with B(b) \ {s, t} has to use a vertex that does not appear in G b .However, as B(b) is a vertex cut in G separating G b \ B(b) from the rest of the graph, there is no L-bounded path in G disjoint with B(b)\{s, t}.We conclude that G \ (B(b) \ {s, t}) is an L-bounded s − t vertex cut in G. Case 3. B(b) ∩ {s, t} = ∅ (where b is the node selected in step 4).The argument is similar as in the previous case.On one hand, as there exists at least one L-bounded path in G b , both vertices s and t appear in G b , and as none of them belongs to the set B(b), there must be a child c of b such that s ∈ G c .On the other hand, the second point of Claim 2 implies that every Lbounded path in G disjoint with B(b) \ {s, t} has to use a vertex that does not appear in G b .As B(b) ∩ B(c) is a vertex cut in G separating G c from the rest of the graph, we conclude that there is no L-bounded path in G \ (B(b) ∩ B(c)).
if |B(b) ∩ {s, t}| ≤ 1 then return B(b) \ {s, t} By this change, if |B(b) ∩ {s, t}| = 1, the output of the algorithm will not change.If B(b) ∩ {s, t} = ∅, the modified algorithm outputs B(b) = B(b) \ {s, t} instead of the original output B(b) ∩ B(c); obviously, this will not break the correctness of the algorithm but the bound in Lemma 4 will change to cost(G, T ) ≤ (τ + 1) • opt(G) as B(b) may be of size τ + 1.
we define the projection of z on U as z| U = (z i1 , z i2 , . . ., z i k ).A vector z = (z 1 , z 2 , . . ., z n ) satisfies the constraint C U ∈ C ∪ H if and only if z| U ∈ C U .We say that a vector z = (z 1 , . . ., z = {{u, v} | ∃C U ∈ C ∪ H s.t.{u, v} ⊆ U }.We say that a CSP instance Q has bounded treewidth if the constraint graph of Q has bounded treewidth. n ) is a feasible solution for Q if z ∈ D 1 × D 2 × ...×D nand z satisfies every hard constraint C ∈ H.In the maximization (minimization, resp.)version of CSP, the task is to find a feasible solution that maximizes (minimizes, resp.) the number of satisfied (unsatisfied, resp.)softconstraints; the cost of a feasible solution is the number of satisfied (unsatisfied, resp.)softconstraints.The constraint graph of Q is defined as H = (V, E) where E