Multi-budgeted Directed Cuts

In this paper, we study multi-budgeted variants of the classic minimum cut problem and graph separation problems that turned out to be important in parameterized complexity: Skew Multicut and Directed Feedback Arc Set. In our generalization, we assign colors 1,2,…,ℓ\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$1,2,\ldots ,\ell $$\end{document} to some edges and give separate budgets k1,k2,…,kℓ\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$k_{1},k_{2},\ldots ,k_{\ell }$$\end{document} for colors 1,2,…,ℓ\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$1,2,\ldots ,\ell $$\end{document}. For every color i∈{1,…,ℓ}\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$i\in \{1,\ldots ,\ell \}$$\end{document}, let Ei\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$E_{i}$$\end{document} be the set of edges of color i. The solution C for the multi-budgeted variant of a graph separation problem not only needs to satisfy the usual separation requirements (i.e., be a cut, a skew multicut, or a directed feedback arc set, respectively), but also needs to satisfy that |C∩Ei|≤ki\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$|C\cap E_{i}|\le k_{i}$$\end{document} for every i∈{1,…,ℓ}\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$i\in \{1,\ldots ,\ell \}$$\end{document}. Contrary to the classic minimum cut problem, the multi-budgeted variant turns out to be NP-hard even for ℓ=2\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\ell = 2$$\end{document}. We propose FPT algorithms parameterized by k=k1+⋯+kℓ\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$k=k_{1}+\cdots +k_{\ell }$$\end{document} for all three problems. To this end, we develop a branching procedure for the multi-budgeted minimum cut problem that measures the progress of the algorithm not by reducing k as usual, by but elevating the capacity of some edges and thus increasing the size of maximum source-to-sink flow. Using the fact that a similar strategy is used to enumerate all important separators of a given size, we merge this process with the flow-guided branching and show an FPT bound on the number of (appropriately defined) important multi-budgeted separators. This allows us to extend our algorithm to the Skew Multicut and Directed Feedback Arc Set problems. Furthermore, we show connections of the multi-budgeted variants with weighted variants of the directed cut problems and the Chainℓ\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\ell $$\end{document}-SAT problem, whose parameterized complexity remains an open problem. We show that these problems admit a bounded-in-parameter number of “maximally pushed” solutions (in a similar spirit as important separators are maximally pushed), giving somewhat weak evidence towards their tractability.


Introduction
Graph separation problems are important topics in both theoretical area and applications. Although the famous minimum cut problem is known to be polynomial-time solvable, many well-known variants are NPhard, which are intensively studied from the point of view of approximation [1,2,11,13,14,18] and, what is more relevant for this work, parameterized complexity.
From the above techniques, only the notion of important separators and the related technique of shadow removal generalizes to directed graphs, giving FPT algorithms for Directed Feedback Arc Set [4], Directed Multiway Cut [8], and Directed Subset Feedback Vertex Set [7]. As a result, the parameterized complexity of a number of important graph separation problems in directed graphs remains open, and the quest to investigate them has been put on by the third author in a survey from 2012 [24]. Since the publication of this survey, two negative answers have been obtained. Two authors of this work showed that Directed Multicut is W[1]-hard even for four terminal pairs (leaving the case of three terminal pairs open) [27], while Lokshtanov et al. [22] showed intractability of Directed Odd Cycle Transversal.
During an open problem session at Recent Advancements in Parameterized Complexity school (December 2017) [12], Saurabh posed the question of parameterized complexity of a weighted variant of Directed Feedback Arc Set, where given a directed edge-weighted graph G, an integer k, and a target weight w, the goal is to find a set X ⊆ E(G) such that G − X is acyclic and X is of cardinality at most k and weight at most w. Consider a similar problem Weighted st-cut: given a directed graph G with positive edge weights and two distinguished vertices s, t ∈ V (G), an integer k, and a target weight w, decide if G admits an st-cut of cardinality at most k and weight at most w. The parameterized complexity of this problem parameterized by k is open even if G is restricted to be acyclic, while with this restriction the problem can easily be reduced to Directed Feedback Arc Set (add an arc (t, s) of prohibitively large weight).
The Weighted st-cut problem becomes similar to another directed graph cut problem, identified in [6], namely Chain -SAT. While this problem is originally formulated in CSP language, the graph formulation is as follows: given a directed graph G with a partition of edge set E(G) = P 1 P 2 . . . P m such that each P i is an edge set of a simple path of length at most (the input paths could have common nodes), an integer k, and two vertices s, t ∈ V (G), find an st-cut C ⊆ E(G) such that |{i|C ∩ P i = ∅}| ≤ k. This problem can easily be seen to be equivalent to minimum st-cut problem (and thus polynomial-time solvable) for ≤ 2, but is NP-hard for ≥ 3 and its parameterized complexity (with k as a parameter) remains an open problem.
In this paper we make progress towards resolving the question of parameterized complexity of the two aforementioned problems: weighted st-cut problem (in general digraphs, not necessary acyclic ones) and Chain -SAT. Our contribution is twofold.

Multi-budgeted variant
We define a multi-budgeted variant of a number of cut problems (including the minimum cut problem) and show its fixed-parameter tractability. In this variant, the edges of the graph are colored with colors, and the input specifies separate budgets for each color. More formally, we primarily consider the following problem.
Multi-budgeted cut Input: A directed graph G, two disjoint sets of vertices X, Y ⊆ V (G), an integer , and for every i ∈ {1, 2, . . . , } a set E i ⊆ E(G) and an integer k i ≥ 1.
Similarly we define multi-budgeted variants of Directed Feedback Arc Set and Skew Multicut (see Section 4 for formal definitions).
We observe that Multi-budgeted cut for = 2 reduces to Weighted st-cut as follows. Let (G, X, Y, E 1 , E 2 , k 1 , k 2 ) be a Multi-budgeted cut instance for = 2. First, observe that we may assume that E 1 ∩ E 2 = ∅, as we can replace every edge e ∈ E 1 ∩ E 2 with two copies e 1 ∈ E 1 \ E 2 and e 2 ∈ E 2 \ E 1 . Second, construct an equivalent Weighted st-cut instance (G , s, t, k, w) as follows. To construct G , first add two vertices s, t to G and edges {(s, x)|x ∈ X} and {(y, t)|y ∈ Y } of prohibitively large weight. Assign also prohibitively large weight to every edge e ∈ E(G) \ (E 1 ∪ E 2 ). Assign weight (k 1 + 1)k 2 + 1 to every edge e ∈ E 1 . For every edge e ∈ E 2 , add k 1 + 1 copies of e to G of weight 1 each.
Finally, set k := (k 1 + 1) · k 2 + k 1 as the cardinality bound and w := k 1 ((k 1 + 1)k 2 + 1) + (k 1 + 1)k 2 as the target weight. The equivalence of the instances follows from the fact that the cardinality bound allows to pick in the solution at most k 2 bundles of k 1 + 1 copies of an edge of E 2 , while the weight bound allows to pick only k 1 edges of E 1 .
Thus, Multi-budgeted cut for = 2 corresponds to the case of Weighted st-cut where the weights are integral and both target cardinality and weight are bounded in parameter. 1 This connection was our primary motivation to study the multi-budgeted variants of the cut problems.
Contrary to the classic minimum cut problem, in Section 6 we note that Multi-budgeted Cut becomes NP-hard for ≥ 2. 2 We show that Multi-budgeted Cut is FPT when parameterized by k = k 1 + ... + k . For this problem, our branching strategy is as follows. First, note that in the problem definition we assume that each k i is positive, and thus ≤ k. A standard application of the Ford-Fulkerson algorithm gives a minimum XY -cut C of size λ and λ edge-disjoint X − Y paths P 1 , P 2 , . . . , P λ . If C is a solution, then we are done. Similarly, if λ > k, then there is no solution. Otherwise, we branch which colors of the sought solution should appear on each paths P j ; that is, for every i ∈ [ ] and j ∈ [λ], we guess if P j ∩ E i contains an edge of the sought solution, and in each guess assign infinite capacities to the edges of wrong color. If this change increased the size of a maximum flow from X to Y , then we can charge the branching step to this increase, as the size of the flow cannot exceed k. The critical insight is that if the size of the minimum flow does not increase (i.e., P 1 , . . . , P λ remains a maximum flow), then a corresponding minimum cut is necessarily a solution. As a result, we obtain the following.
The charging of the branching step to a flow increase appears also in the classic argument for bound of the number of important separators [4] (see also [9,Chapter 8]). We observe that our branching algorithm can be merged with this procedure, yielding a bound (as a function of k) and enumeration procedure of naturally defined multi-budgeted important separators. This in turn allows us to generalize our FPT algorithm to Multi-budgeted Skew Multicut and Multi-budgeted Directed Feedback Arc Set.
The arguments for Multi-budgeted Cut are presented in Section 3. The generalization for important separators is contained in Section 4.
Bound on the number of pushed solutions While we are not able to establish fixed-parameter tractability of the weighted variant of the minimum cut problem (even in acyclic graphs) nor of Chain -SAT, we show the following graph-theoretic statement. Consider a directed graph G with two distinguished vertices s, t ∈ V (G). For two (inclusion-wise) minimal st-cuts C 1 , C 2 we say that C 1 is closer to t than C 2 if every vertex reachable from s in G − C 2 is also reachable from s in G − C 1 . A classic submodularity argument implies that there is exactly one closest to t minimum st-cut, while the essence of the notion of important separators is the observation that there is bounded-in-k number of minimal separators of cardinality at most k that are closest to t. In Section 5 we show a similar existential statement for the two discussed problems.
Theorem 3. For every integer k there exists an integer g such that the following holds. Let G be a directed graph with positive edge weights and two distinguished vertices s, t ∈ V (G). Let F be a family of all st-cuts that are of minimum weight among all (inclusion-wise) minimal st-cuts of cardinality at most k. Let G ⊆ F be the family of those cuts C such that no other cut of F is closer to t. Then |G| ≤ g.
Theorem 4. For every integers k, there exists an integer g such that the following holds. Let I := (G, s, t, (P i ) m i=1 , k) be a Chain -SAT instance that is a yes-instance but (G, s, t, (P i ) m i=1 , k − 1) is a noinstance. Let F be a family of all (inclusion-wise) minimal solutions to I and let G ⊆ F be the family of those cuts C such that no other cut of F is closer to t. Then |G| ≤ g .
Unfortunately, our proof is purely existential, and does not yield an enumeration procedure of the "closest to t" solutions.

Preliminaries
For an integer n, we denote [n] = {1, 2, . . . , n}. For a directed graph G, we use V (G) to represent the set of vertices of G and E(G) to represent the set of directed edges of G. In all multi-budgeted problems, the directed graph G comes with sets E i ⊆ E(G) for i ∈ [ ] which we refer as colors. That is, an edge e is of color i if e ∈ E i , and of no color if e ∈ E(G) \ i=1 E i . Note that an edge may have many colors, as we do not insist on the sets E i being pairwise disjoint.
Let X and Y be two disjoint vertex sets in a directed graph G, an XY -cut of G is a set of edges C such that every directed path from a vertex in X to a vertex in Y contains an edge of C. A cut C is minimal if no proper subset of C is an XY -cut, and minimum if C is of minimum possible cardinality. Let C be an XY -cut and let R be the set of vertices reachable from X in G \ C. We define δ + (R) = {(u, v) ∈ E(G)|u ∈ R and v / ∈ R} and note that if C is minimal, then δ + (R) = C.
) be a Multi-budgeted cut instance and let C be an XY -cut. We say that In such contexts, we often call Z the set of deletable edges. An XY -cut C is a minimum Z-respecting cut if it is a Z-respecting XY -cut of minimum possible cardinality among all Z-respecting XY -cuts.
Our FPT algorithms start with Z = i=1 E i and in branching steps shrink the set Z to reduce the search space. We encapsulate our use of the classic Ford-Fulkerson algorithm in the following statement.
Theorem 5. Given a directed graph G, two disjoint sets X, Y ⊆ V (G), a set Z ⊆ E(G), and an integer k, one can in O(k(|V (G)| + |E(G)|)) time either find the following objects: • λ paths P 1 , P 2 , . . . , P λ such that every P i starts in X and ends in Y , and every edge e ∈ Z appears on at most one path P i ; • a set B ⊆ Z consisting of all edges of G that participate in some minimum Z-respecting XY -cut; • a minimum Z-respecting XY -cut C of size λ that is closest to Y among all minimum Z-respecting XY -cuts; or correctly conclude that there is no Z-respecting XY -cut of cardinality at most k.
Proof. Assign capacity 1 to every edge of Z and capacity +∞ to every edge not in Z. Run k + 1 rounds of the Ford-Fulkerson algorithm. If the final flow exceeded k, return that there is no Z-respecting XY -cut of cardinality at most k. Otherwise, decompose the final flow into unit flow paths P 1 , . . . , P λ in a standard manner. For the set B, observe that B consists of exactly those edges that are fully saturated in the flow network, and their reverse counterparts in the residual network are not contained in a single strongly connected component of the residual network (and thus can be discovered in linear time). Finally, observe that the sought cut C consists of the last edge of B on every path P i .

Multi-budgeted cut
We now give an FPT algorithm parameterized by k = Σ i=1 k i for the Multi-budgeted cut problem. We follow a branching strategy that recursively reduces a set Z of deletable edges. That is, we start with Z = i=1 E i (so that every solution is initially Z-respecting) and in each recursive step, we look for a Z-respecting solution and reduce the set Z in a branching step. Consider a recursive call where we look for a Z-respecting solution to the input Multi-budgeted cut instance (G, X, Y, , . That is, we look for a Z-respecting budget-respecting cut. We apply Theorem 5 to it. If it returns that there is no Z-respecting XY -cut of size at most k, we terminate the current branch, as there is no solution. Otherwise, we obtain the paths P 1 , P 2 , . . . , P λ , the set B (which we will not use in this section), and the cut C.
If C is budget-respecting, then it is a solution and we can return it. Otherwise, we perform the following branching step. We iterate over all tuples (A 1 , ..., A ) such that for every i ∈ [ ], A i ⊆ [λ] and |A i | ≤ k i . A i represents the subset of paths P 1 , ..., P λ on which at least one edge of color i is in the solution for each i ∈ [ ]. For those edges of color i which are on the paths not indicated by A i , they are not in the solution. Thus we can safely delete them from Z. More formally, for every i ∈ [ ] and j ∈ [λ] \ A i , we remove from Z all edges of E(P j ) ∩ E i . We recurse on the reduced set Z. A pseudocode is available in Figure 1.   Figure 1 for Multi-budgeted cut is correct and runs in time Proof. We prove the correctness of the algorithm by showing that it returns a solution if and only if the input instance is a yes-instance. The "only if" direction is obvious, as the algorithm returns only Z-respecting budget-respecting XY -cuts and Z ⊆ i=1 E i in each recursive call.
We prove the correctness for the "if" direction. Let C 0 be a solution, that is, a budget-respecting XY -cut. In the initial call to Solve, C 0 is Z-respecting. It suffices to inductively show that in each call to Solve such that C 0 is Z-respecting, either the call returns a solution, or C 0 is Z-respecting for at least one of the subcalls. Since C 0 is Z-respecting, the application of Theorem 5 returns objects (P i ) λ i=1 , B, and C. If C is budget-respecting, then the algorithm returns it and we are done. Otherwise, consider the branch Since C 0 is budget-respecting, C 0 ⊆ Z, and no edge of Z appears on more than one path P j , we have |A i | ≤ k i for every i ∈ [ ]. Thus, (A 1 , A 2 , . . . , A ) is a branch considered by the algorithm. In this branch, the algorithm refines the set Z to Z. By the definition of A i , For the time bound, the following observation is crucial.
Claim 7. Consider one recursive call Solve(Z) where the application of Theorem 5 in line (a) returned objects (P i ) λ i=1 , B and C. Assume that in some recursive subcall Solve( Z) invoked in line (d.3) (Figure 1), the subsequent application of Theorem 5 in line (a) of the subcall returned a cut of the same size, that is, the algorithm of Theorem 5 returned a cut C of size λ = λ. Then the cut C is budget-respecting and, consequently, is returned in line (c) of the subcall.
Proof. Since | C| = λ is a Z-respecting XY -cut, Z ⊆ Z, and every edge e ∈ Z appears on at most one path P i , we have that C consists of exactly one edge of Z on every path P i , that is, C = {e 1 , e 2 , . . . , e λ } and e j ∈ E(P j ) ∩ Z for every j ∈ [λ]. In other words, the paths (P j ) λ j=1 still correspond to a maximum flow from X to Y with edges of Z being of unit capacity and edges outside Z of infinite capacity because (P j ) λ j=1 are paths satisfying that any two of them are disjoint on Z ⊆ Z and λ is still equal to the size of the maximum flow. If e j ∈ E i for some j ∈ [λ] and i ∈ [ ], then by the construction of set Z, we have j ∈ A i . Consequently, and thus C is budget-respecting.
Claim 7 implies that the depth of the search tree is bounded by k, as the algorithm terminates when λ exceeds k. At every step, there are at most (2 λ ) ≤ (2 k ) different tuples (A 1 , ..., A ) to consider. Consequently, there are O(2 (k−1)k ) nodes of the search tree that enter the loop in line (d) and O(2 k 2 ) nodes that invoke the algorithm of Theorem 5. As a result, the running time of the algorithm is O(2 k 2 · k · (|V (G)| + |E(G)|)).

Multi-budgeted important separators with applications
Similar to the concept of important separators proposed by Marx [23] (see also [9,Chapter 8]), we define multi-budgeted important separators as follows.
) be a Multi-budgeted cut instance and let Z ⊆ i=1 E i be a set of deletable edges. Let C 1 , C 2 be two minimal Z-respecting budget-respecting XY -cuts. We say that We say that C is an important Z-respecting budget-respecting XY -cut if C is a minimal Z-respecting budget-respecting XY -cut and no other minimal Z-respecting budget-respecting XY -cut dominates C. C is an important budget-respecting XY -cut if it is an important Z-respecting budget-respecting XY -cut for Chen et al. [4] showed an enumeration procedure for (classic) important separators using similar charging scheme as the one of the previous section. Our main result in this section is a merge of the arguments from the previous section with the arguments of Chen et al., yielding the following theorem.
Theorem 2 follows from Theorem 9 via an analogous arguments as in [4]; we postpone them to Section 4.1. First, we focus on the proof of Theorem 9.
Proof of Theorem 9. Consider the recursive algorithm presented in Figure 2. The recursive procedure Im-portantCut takes as an input a Multi-budgeted Cut instance I = (G, X, Y, , (E i , k i ) i=1 ) and a set Z ⊆ i=1 E i , with the goal to enumerate all important Z-respecting budget-respecting XY -cuts. Note that the procedure may output some more Z-respecting budget-respecting XY -cuts; we need only to ensure that 1. it outputs all important ones, 2. it outputs 2 O(k 2 log k) cuts, and 3. it runs within the desired time.
The procedure first invokes the algorithm of Theorem 5 on (G, X, Y, k, Z), where k = i=1 k i . If the call returned that there is no Z-respecting XY -cut of size at most k, we can return an empty set. Otherwise, let (P j ) λ j=1 , B, and C be the computed objects. We perform a branching step, with each branch labeled with a tuple (A 1 , A 2 we guess if C 0 contains a bottleneck edge of color i on path P j . All this information (i.e., paths P j , the set B, the cut C, and the sets A i ) are passed to an auxiliary procedure Enum.
The procedure Enum shrinks the set Z according to sets A i . More formally, for every i ∈ [ ] and j ∈ [λ] \ A i we delete from Z all edges from B ∩ E i ∩ E(P j ), obtaining a set Z ⊆ Z. At this point, we check if the reduction of the set Z to Z increased the size of minimum Z-respecting XY -cut by invoking Theorem 5 on (G, X, Y, k, Z) and obtaining objects ( P j ) λ j=1 , B, C or a negative answer. If the size of the minimum cut increased, that is, λ > λ, we recurse with the original procedure ImportantCut. Otherwise, we add one cut to S, namely C. Furthermore, we try to shrink one of the sets A i by one and recurse; that is, for every i ∈ [ ] and every j ∈ A i , we recurse with the procedure Enum on sets Let us first analyze the size of the search tree. A call to ImportantCut invokes at most λ ≤k ≤ (k + 1) k calls to Enum. Each call to Enum either falls back to ImportantCut if λ > λ or branches into i=1 |A i | ≤ k recursive calls to itself. In each recursive call, the sum i=1 |A i | decreases by one. Consequently, the initial call to Enum results in at most (k ) k recursive calls, each potentially falling back to ImportantCut. Since each recursive call to ImportantCut uses strictly larger value of λ, which cannot grow larger than k, and ≤ k, the total size of the recursion tree is 2 O(k 2 log k) . Each recursive call to Enum adds at most one set to S, while each recursive call to ImportantCut and Enum runs in time O(2 k · k · (|V (G)| + |E(G)|)). The promised size of the family S and the running time bound follows. It remains to show correctness, that is, that every important Z-respecting budget-respecting XY -cut is contained in S returned by a call to ImportantCut(I, Z).
We prove by induction on the size of the recursion tree that (1) every call to ImportantCut(I, Z) enumerates all important Z-respecting budget-respecting XY -cuts, and (2) every call to Enum(I, Z, (P j ) λ j=1 , B, C, The inductive step for a call ImportantCut(I, Z) is straightforward. Let us fix an arbitrary important Z-respecting budget-respecting XY -cut C 0 . Since C 0 is budget-respecting, C 0 is a Z-respecting cut of size at most k, and thus the initial call to Theorem 5 cannot return NO. Consider the tuple (A 1 , A 2 Since C 0 is budget-respecting and the paths P j do not share an edge of Z, we have that |A i | ≤ k i for every i ∈ [ ] and the algorithm considers this tuple in one of the branches. Then, from the inductive hypothesis, the corresponding call to Enum returns a set containing C 0 . Consider now a call to Enum(I, Z, (P j ) λ j=1 , B, C, (A i ) i=1 ) and an important Z-respecting budget-respecting XY -cuts C 0 with the property that By the construction of Z and the above assumption, C 0 is Z-respecting. In particular, the call to the algorithm of Theorem 5 cannot return NO. Hence, in the case when λ > λ, C 0 is enumerated by the recursive call to ImportantCut and we are done. Assume then λ = λ.
Output: a family S of minimal Z-respecting budget-respecting XY -cuts that contains all important ones.
1. S := ∅; 2. apply the algorithm of Theorem 5 to (G, X, Y, k, Z) with k = i=1 k i , obtaining either objects (P i ) λ i=1 , B, and C, or an answer NO; 3. if an answer NO is obtained, then return S; 4. for each (A 1 , ..., A ) such that for every j=1 of paths from X to Y such that every edge of Z appears on at most one path P j , a set B consisting of all edges that participate in some minimum Z-respecting XY -cut, a minimum Z-respecting XY -cut C closest to Y , and sets A i ⊆ [λ] of size at most k i for every i ∈ [ ] Output: a family S of minimal Z-respecting budget-respecting XY -cuts that contains all cuts C 0 that are important Z-respecting budget respecting XY -cuts and satisfy {j|E( c. apply the algorithm of Theorem 5 to (G, X, Y, k, Z), obtaining either objects ( P i ) λ i=1 , B, and C or an answer NO; d. if λ exists and λ > λ, then  Assume there exists i ∈ [ ] such that A i A i and let j ∈ A i \ A i . Consider then the branch (i, j) of the Enum procedure, that is, the recursive call with and, by the inductive hypothesis, the corresponding call to Enum enumerates C 0 . Hence, we are left only with the case A i = A i , that is, We claim that in this case C 0 = C. Assume otherwise. Since | C| = λ = λ and Z ⊆ Z, C contains exactly one edge on every path P j . Also, C ⊆ B by the definition of the set B. Since C is the minimum Z-respecting XY -cut that is closest to Y , C = {e 1 , e 2 , . . . , e λ } where e j is the last (closest to Y ) edge of B on the path P j for every j ∈ [λ].
Let R 0 and R be the set of vertices reachable from X in G − C 0 and G − C, respectively. Let D be a minimal XY -cut contained in δ + (R 0 ∪ R). (Note that δ + (R 0 ∪ R) is an XY -cut because X ⊆ R 0 ∪ R and Y ∩ (R 0 ∪ R) = ∅.) Then since D ⊆ C 0 ∪ C ⊆ Z, D is Z-respecting. By definition, every vertex reachable from X in G − R 0 is also reachable from X in G − D.
We claim that D is budget-respecting and, furthermore, dominates C 0 . Fix a color i ∈ [ ]; our goal is to To this end, we charge every edge of color i in D \ C 0 to a distinct edge of color i in C 0 \ D. Since D ⊆ C 0 ∪ C, we have that D \ C 0 ⊆ C, that is, an edge of D \ C 0 of color i is an edge e j for some j ∈ [λ] with e j ∈ E i and e j ∈ D \ C 0 . Recall that we are working in the case A i = {j|E i ∩ E(P j ) ∩ B ∩ C 0 = ∅}. Since e j ∈ C ⊆ Z, we have that j ∈ A i . Hence, there exists e j ∈ E i ∩ E(P j ) ∩ B ∩ C 0 . By the definition of C, e j is the last (closest to Y ) edge of B on P j . Since e j / ∈ C 0 , e j = e j and e j lies on the subpath of P j between X and the tail of e j . This entire subpath is contained in R and, hence, e j / ∈ D. We charge e j to e j . Since e j ∈ E(P j ) ∩ E i ∩ B ∩ (C 0 \ D), for distinct j, the edges e j are distinct as the paths P j do not share an edge belonging to Z and B ⊆ Z ⊆ Z. Consequently, |D ∩ E i | ≤ |C 0 ∩ E i |. This finishes the proof that D dominates C 0 .
Since C 0 is important, we have D = C 0 . In particular, R ⊆ R 0 . On the other hand, for every j ∈ [λ] we have that e j ∈ C ⊆ Z ⊆ Z ⊆ i=1 E i . In particular, there exists i ∈ [ ] such that e j ∈ E i and j ∈ A i . Hence, we also have E i ∩ E(P j ) ∩ B ∩ C 0 = ∅. But the entire subpath of P j from X to the tail of e j lies in R ⊆ R 0 , while e j is the last edge of B on P j . Hence, e j ∈ C 0 . Since the choice of j is arbitrary, C ⊆ C 0 . Since C is an XY -cut and C 0 is minimal, C = C 0 as claimed.
This finishes the proof of Theorem 9.

Applications
The Directed Feedback Arc Set problem is a classic problem that played major role in the development of parameterized complexity. In this problem, given a directed graph G and an integer k, the problem is to decide if there exists an arc set S of size at most k such that G−S has no directed cycles. The multi-budgeted variant is defined as follows.

Multi-budgeted Directed Feedback Arc Set
Input: A directed graph G, an integer , and for every i ∈ {1, 2, . . . , } a set E i ⊆ E(G) and an integer k i ≥ 1. Question: Is there a set of arcs S ⊆ i=1 E i such that there is no directed cycle in G − S and for every i ∈ [ ], |S ∩ E i | ≤ k i .
The first FPT algorithm for the Directed Feedback Arc Set problem is given by Chen et al. [4]. In their algorithm, they use iterative compression and reduce the Directed Feedback Arc Set compression problem to the Skew Edge Multicut problem. They propose a pushing lemma for Skew Edge Multicut and solve Skew Edge Multicut through enumerating important cuts. We show that for the multi-budgeted variant, a similar strategy works with the help of Theorem 9. Formally, the Multi-budgeted Skew Edge Multicut problem is defined as follows.

Multi-budgeted Skew Edge Multicut
Input: A directed graph G, an integer , for every i ∈ {1, 2, . . . , } a set E i ⊆ E(G) and an integer k i ≥ 1, and a sequence (s i , t i ) q i=1 of terminal pairs. Question: Is there a set of arcs C ⊆ i=1 E i such that there is no directed path from s i to t j for any i ≥ j in G − C and for every i ∈ [ ], |C ∩ E(i)| ≤ k i ?
As in the case of Multi-budgeted Cut, the assumption that k i ≥ 1 for every i ∈ [ ] implies ≤ k. We start by observing a direct corollary of the maximality criterium in the definition of important budget-respecting separators.
Lemma 10. Given an instance (G, X, Y, , (E i , k i ) i=1 ) of Multi-budgeted cut, for every minimal budgetrespecting XY -cut C there exists an important budget-respecting XY -cut C that dominates C.
Similar to the pushing lemma for Skew Edge Multicut [4], we propose a pushing lemma for the multi-budgeted variant.

Lemma 11. Every yes-instance
of Skew Edge Multicut admits a solution that contains an important budget-respecting XY -cut for X = {s q } and Y = {t 1 , t 2 , . . . , t q }.
Proof. Let C be a solution to I. Let X = {s q }, Y = {t 1 , ..., t q }, and R be the set of vertices reachable from s q in G − C. Since C is a solution, δ + (R) ⊆ C is a budget-respecting XY -cut; let D ⊆ δ + (R) be a minimal one. By Lemma 10, there exists an important budget-respecting XY -cut D * dominating D. Let R * be the set of vertices reachable from s q in G − D * . We claim that C * := (C \ D) ∪ D * is a solution to I as well.
Suppose for contradiction that there is a directed path P from s i to t j for some i ≥ j in G − C * . If P contains one vertex of R * , it contradicts that D * is an XY -cut because P must contain one edge of D * . Thus P is disjoint from R * . Since R ⊆ R * , P is disjoint from R, and hence P is disjoint from D. Since P is not cut by C * = (C \ D) ∪ D * , P is not cut by C \ D. It follows that P is not cut by C = (C \ D) ∪ D, contradicting that C is a solution.
To complete the proof, note that for Lemma 11 yields the following branching strategy. Proof. We perform a recursive branching algorithm where the budgets k i will decrease, thus we allow instances with the inequalities k i ≥ 1 violated. If k i < 0 for some i ∈ [ ], then we can answer NO. Otherwise, if q = 0, then we can answer YES. Otherwise, perform a depth-first search from s q . If no terminal t i has been reached, delete the visited vertices together with t q , decrease q by one and restart the algorithm. Since this operation can be performed in time linear in the size of the deleted part of the graph, in total it takes linear time.
Otherwise, proceed as follows. By Lemma 11 if the input instance is a yes-instance, there is a solution C * which contains an important budget-respecting s q {t 1 , t 2 , . . . , t q }-cut. By Theorem 9, we can enumerate in time 2 O(k 2 log k) (|V (G)| + |E(G)|) a set of minimal budget-respecting XY -cuts S of size 2 O(k 2 log k) that contains all important ones. We invoke this enumeration, and branch on the choice of important budgetrespecting s q {t 1 , t 2 , . . . , t q }-cut contained in the sought solution. In a branch where a cut D is chosen, we delete D from the graph and decrease each budget k i by |D ∩ E i |. Since at least one terminal t i is reachable from s q , in every branch the cut D is nonempty and thus k = i=1 k i decreases by at least one. Consequently, the depth of the recursion is bounded by k. The running time bound follows.
We now use the algorithm of Lemma 12 to give an algorithm for Multi-budgeted Directed Feedback Arc Set, completing the proof of Theorem 2. Proof. Let I = (G, , (E i , k i ) i=1 ) be an input instance. We start by applying the algorithm of Lokshtanov et al. [21] for the classic Directed Feedback Vertex Set on G with parameter k = i=1 . If the call returned that there is no solution, we can safely return NO. Otherwise, let W be the returned solution: |W | ≤ k and G − W is acyclic.
Suppose I is a yes-instance and there is a solution S. Then G − S is a directed acyclic graph, admitting a topological ordering of V (G). This ordering indices a permutation of the vertices in W . In our algorithm, we branch on every permutation of the vertices in W , ensuring that at least one of the permutation is the same as the permutation induced by the topological ordering of G − S. Let w 1 , ..., w |W | be an arbitrary permutation of the vertices in W . We construct a graph G as follows. For each i ∈ [|W |], we replace every vertex w i with two vertices s i , t i , every edge (w i , a) with (s i , a) of the same color and every edge (b, w i ) with (b, t i ) of the same color. Then we add a directed edge (t i , s i ) for each i ∈ [|W |] with no color. In this manner, we construct a Multi-budgeted Skew Edge Multicut instance I = (G , , ) corresponding to the permutation w 1 , ..., w |W | .
We claim that the input instance I of Multi-budgeted Directed Feedback Arc Set is a yesinstance if and only if there exists one permutation w 1 , ..., w |W | of W such that the corresponding Multibudgeted Skew Edge Multicut instance I is a yes-instance. For the "only if direction", let S be a solution to I. We have a topological ordering of V (G), inducing an ordering w 1 , ..., w |W | on W . For this ordering, let I be the corresponding instance of Multi-budgeted Skew Edge Multicut. According to the way we construct G , every edge in S has a corresponding edge in G . Let S be the set of the corresponding edges of edges in S. We claim that S is a solution for I . Obviously S is budget-respecting. Suppose for contradiction that there is a directed path P from s i to t j for some i ≥ j in G −S . If i = j, then the corresponding edges of P form a directed cycle passing through w i in G − S, a contradiction. Suppose that i > j. If P goes through some edge in {(t i , s i )|i ∈ [|W |]}, then there must be a subpath of P from s i to t j such that i > j and P contains no edges in {(t i , s i )|i ∈ [|W |]}. Then the corresponding edges of P is a directed path from w i to w j , contradicting that w i is later than w j in the topological ordering of V (G) after removing S.
For the "if direction", suppose that S is a solution for I and w 1 , ..., w |W | is the corresponding ordering of W . Let S be the set of edges consisting of the corresponding edges of S . We claim that S is the solution for I. Obviously S is budget-respecting. Suppose that there is a cycle Q in G − S. Since W is a feedback vertex set for G, Q must go through at least one vertex in W . Suppose that Q goes through a vertex in W , namely w i . Then we can find a path from s i to t i in G − S , contradicting that S is a solution to I .
This finishes the proof of the lemma and of the whole Theorem 2.

Bound on the number of solutions closest to t
In this section we prove Theorems 3 and 4. The central definition of this section is the following (see also Figure 3).

Definition 14.
Let G be a directed graph with distinguished vertices s and t and let k be an integer. An a-bowtie is a sequence C 1 , C 2 , . . . , C a of pairwise disjoint minimal st-cuts of size k each such that each cut C i can be partitioned C i = A i B i such that for every 1 ≤ i < j ≤ a, the set A i is exactly the set of edges of C i reachable from s in G − C j and B j is exactly the set of edges of C j reachable from s in G − C i . Figure 3: A schematic picture of a 4-bowtie.
Our main graph-theoretic result is the following.
Theorem 15. For every integers a, k ≥ 1 there exists an integer g such that for every directed graph G with distinguished s, t ∈ V (G), and a family U of pairwise disjoint minimal st-cuts of size k each, if |U| ≥ g, then U contains an a-bowtie.
The next two lemmata are key observations to prove Theorems 3 and 4, respectively, with the help of Theorem 15.
Lemma 16. Let k, g, G, s, t, F, and G be as in the statement of Theorem 3. Then G does not contain an a-bowtie for a > k+2 2 .
Proof. Assume the contrary, let be such a bowtie. Since a > k+2 2 , there exists i < j with |A i | = |A j | and |B i | = |B j | (there are k+2 2 choices for (|A i |, |B i |)). However, then A i ∪ B j and A j ∪ B i have also cardinality k, are st-cuts, and have together twice the minimum weight. Furthermore, the set of vertices reachable from s in G − (A j ∪ B i ) is a strict superset of the set of vertices reachable from s in G − C i and G − C j . This contradicts the fact that C i , C j ∈ G.
in which the edge set of every path P j intersects at most one cut C i . Proof. Assume the contrary Let be such a 4-bowtie. Consider i ∈ {2, 3} and two edges e ∈ A i and f ∈ B i . In G − C 4 , the edge e is reachable from s while f is not; consequently, e and f cannot appear on the same input path with e being earlier (by assumption, C 4 is disjoint from the input path in question). A similar reasoning for G − C 1 shows that e and f cannot appear on the same input path with f being earlier than e.
Hence, e and f cannot appear together on a single path P j . For a set of edges D, by the cost of D we denote |{j|D ∩ P j = ∅}|. Since the choice of e and f was arbitrary, we infer that the sum of costs of A 2 ∪ B 3 and of A 3 ∪ B 2 equals the sum of costs of C 2 and of C 3 . Hence, both these st-cuts have minimum cost. However, A 2 ∪ B 3 is closer to t than C 2 , a contradiction.
Proof of Theorem 3. Assume |G| > g for some sufficiently large g to be fixed later. For i ∈ [k], let G i be the set of u ∈ G of cardinality i. We apply the Sunflower Lemma to the largest set G i : If g > k · k!g k 1 for some integer g 1 to be chosen later, there exists G 1 ⊆ G with |G 1 | > g 1 , every element of G 1 being of the same size k , and a set c such that u ∩ v = c for every distinct u, v ∈ G 1 .
Let k = k − |c|, u = u \ c for every u ∈ G 1 , G 1 = { u | u ∈ G 1 } and G = G − c. Since every u ∈ U is a minimal st-cut of size k in G, every u ∈ G 1 is a minimal st-cut of size k in G. Furthermore, every u ∈ G 1 is a minimal st-cut of size at most k in G of minimum possible weight: if there existed an st-cut x of smaller weight and cardinality at most k, then x = x ∪ c would be an st-cut in G of cardinality at most k and weight smaller than every element of G 1 . Similarly, if there were a minimal st-cut x in G of minimum weight and cardinality at most k that is closer to t than u for some u ∈ G 1 , then x ∪ c would be an st-cut in G of cardinality at most k and minimum weight that is closer to t than u, a contradiction. By construction, the elements of G 1 are pairwise disjoint. Lemma 16 bounds the maximum possible size of a bowtie in G 1 . Hence, Theorem 15 asserts that G 1 has size bounded by a function of k. This finishes the proof of the theorem.
Proof of Theorem 4. We proceed similarly as in the proof of Theorem 3, but we need to be a bit more careful with the paths P j . Assume |G| > g for some sufficiently large integer g.
As before, we partition G according to the sizes of elements: for every i ∈ [k ], let G i = {u ∈ G | |u| = i}. Let i ∈ [k ] be such that |G i | > g/(k ). For u ∈ G i , let J(u) = {j | u ∩ P j = ∅}. By the assumptions of the theorem, every set J(u) is of cardinality exactly k. We apply the Sunflower Lemma to {J(u) | u ∈ G i }: If g > (k ) · k! · g k 1 for some integer g 1 to be fixed later, then there exists G 1 ⊆ G i of size larger than g 1 and a set I ⊆ [m] such that for every distinct u, v ∈ G 1 we have J(u) ∩ J(v) = I. For every u ∈ G 1 , let u I = u ∩ j∈I P j . Since |I| ≤ k, there are at most 2 k choices for u I among elements u ∈ G 1 . Consequently, there exists G 2 ⊆ G 1 of cardinality larger than g 2 := g 1 /2 k such that u I = v I for every u, v ∈ G 2 . Denote c = u I for any u ∈ G 2 .
Let u := u − c for every u ∈ G 2 . Let G 2 = { u | u ∈ G 2 }. Define now G = G − c and define a partition P of E( G) into paths of length at most as follows: we take all paths P i for i / ∈ I and, for every i ∈ I, each edge of P i \ c as a length-1 path. Furthermore, denote k = k − |I|. Note that ( G, s, t, P, k) is a Chain -SAT instance for which every u ∈ G 2 is a solution. Furthermore, ( G, s, t, P, k − 1) is a no-instance, as if x were its solution, then x ∪ c would be a solution to (G, s, t, (P i ) m i=1 , k − 1), a contradiction. Similarly, if there were a solution x to ( G, s, t, P, k) that is closer to t than u for some u ∈ G 2 , then x ∪ c would be a solution to (G, s, t, (P i ) m i=1 , k) that is closer to t than u, a contradiction. Furthermore, by construction, the elements of G 2 are pairwise disjoint and no path of P intersects more than one element of G 2 . Lemma 17 bounds the maximum possible size of a bowtie in G 2 . Hence, Theorem 15 asserts that G 2 has size bounded by a function of k and . This finishes the proof of the theorem.
We now focus on the proof of Theorem 15. To this end, we need to introduce some abstract notions. Let k be an integer. A k-maze is a family U of pairwise disjoint sets of size k, together with a function f u,v : u → {⊥, } for every ordered pair u, v ∈ U, u = v. A flower in a k-maze U is a subset F ⊆ U such that there exists a value ζ ∈ {⊥, } and an element e(u) ∈ u for every u ∈ F such that f u,v (e(u)) = ζ for every u, v ∈ F, u = v. An a-bowtie in a k-maze U is a sequence u 1 , u 2 , . . . , u a of pairwise distinct elements of U together with a partition u i = a i b i of every set in the sequence, such that the following holds for every 1 ≤ i, j ≤ a, i = j: • if i < j then f ui,uj (e) = ⊥ for e ∈ a i and f ui,uj (e) = for e ∈ b i ; • if i > j then f ui,uj (e) = for e ∈ a i and f ui,uj (e) = ⊥ for e ∈ b i . We need two basic observations. First, flowers in restrictions project to flowers in original mazes. That is, given a k-maze U and a setû ⊆ u for every u ∈ U with |û| =k, the natural restrictions of the functions f u,v give a structure of ak-maze onÛ := {û : u ∈ U }. It is immediate from the definition that a flower in U projects back to a flower in U. Second, a reverse of a bowtie is a bowtie as well, but one needs to swap the roles of a i and b i . That is, one can check directly from the definition that if (u i , a i , b i ) a i=1 is an a-bowtie, then (u i , b i , a i ) 1 i=a is an a-bowtie as well. An iterated Ramsey argument shows the following.
Theorem 18. For every integers k, a, b ≥ 1 there exists an integer g such that any k-maze of size at least g contains either an a-bowtie or a flower of size at least b.
Proof. We prove Theorem 18 by induction over k and denote the resulting value g as g(k, a, b). Pick k, a, b ≥ 1 and pick a k-maze U. For every u ∈ U pick an arbitrary element e u ∈ u and denoteû = u \ {e u }.
Fix an arbitrary total order ≺ on U. Consider a complete graph H with vertex set U and edges with the following annotations for distinct u, v ∈ U with u ≺ v.
• An edge uv is light red if f u,v (e u ) = f v,u (e v ) = ⊥.
• An edge uv is dark red if f u,v (e u ) = f v,u (e v ) = .
• An edge uv is light blue if f u,v (e u ) = ⊥ and f v,u (e v ) = .
• An edge uv is dark blue if f u,v (e u ) = and f v,u (e v ) = ⊥.
We say that an edge uv is red if it is light or dark red, and similarly for blue.
By Ramsey's theorem, if U is large enough, we have one of the following objects.
• A light red clique of size b or a dark red clique of size b. But such a clique is in fact a flower of size b with e(u) = e u and ζ = ⊥ if it is a light red clique or ζ = if it is a dark red clique.
• A light blue clique or a dark blue clique of size m 1 , for some integer m 1 to be fixed later. We denote this clique by C and proceed further.
undirected edge (u, v) ∈ E(G) such that u ∈ U and v ∈ L, we add an arc (u, v) with no color. Let E 1 be the set of arcs of color 1 in G and E 2 be the set of arcs of color 2 in G . Let Z = E 1 ∪ E 2 be the deletable arcs. Let the budgets of the Multi-budgeted cut instance be k 1 = k U , k 2 = k L . This completes the construction. Now we show that (G, k U , k L ) is a yes instance if and only if (G , X, Y, 2, (E i , k i ) 2 i=1 ) is a yes instance. Suppose (G, k U , k L ) is a yes instance. Then there exists a vertex cover U ∪ L of G such that U ⊆ U , L ⊆ L, |U | ≤ k U and |L | ≤ k L . Let C 1 = {(s, u)|u ∈ U } and C 2 = {(v, t)|v ∈ L }. We claim that C 1 ∪ C 2 is a solution for (G , X, Y, 2, (E i , k i ) 2 i=1 ). Obviously |C 1 | ≤ k 1 , |C 2 | ≤ k 2 and C is Z-respecting. For contradiction, suppose that there is a directed path su v t in G \ (C 1 ∪ C 2 ). It follows that u / ∈ U and v / ∈ L . Thus there is an edge u v which is not covered by U ∪ L in G, contradicting that U ∪ L is a vertex cover of G.
Suppose that (G , X, Y, 2, (E i , k i ) 2 i=1 ) is a yes instance. Then there is a Z-respecting budget-respecting st-cut C = C 1 ∪ C 2 such that C 1 is a set of arcs of color 1 of size at most k 1 and C 2 is a set of arcs of color 2 of size at most k 2 . Obviously any arc between U and V in G is not in the solution because they are not deletable. Let U = {u|(s, u) ∈ C 1 } and L = {v|(v, t) ∈ C 2 }. We get that U ⊆ U , L ⊆ L, |U | ≤ k 1 = k U and |L | ≤ k 2 = k L . We claim that U ∪ L is a solution for (G, k U , k L ). For contradiction, suppose that there is an edge u v not covered by U ∪ L . It follows that su v t is a directed path in G \ C, contradicting that C = C 1 ∪ C 2 is a solution for (G , X, Y, 2, (E i , k i ) 2 i=1 ). This completes the proof.

Conclusion
We would like to conclude with a discussion on future research directions. First, our upper bound of 2 O(k 2 log k) on the number of multi-budgeted important separators (Theorem 9) is far from the 4 k bound for the classic important separators. As pointed out by an anonymous reviewer at IPEC 2018, there is an easy lower bound of k! for the number of multi-budgeted important separators: Let = k, k i = 1 for every i ∈ [ ], and let G consist of k paths from s to t, each path consisting of edges of different colors. Then there are exactly k! distinct multi-budgeted important separators, as we can freely choose a different color i ∈ [ ] to cut on each path. We are not aware of any better lower bound, leaving a significant gap between the lower and upper bounds. Second, our existential statement of Theorems 3 and 4 can be treated as a weak support of tractability of Chain -SAT and Weighted st-cut. Are they really FPT when parameterized by the cardinality of the cut?