Important separators and parameterized algorithms

Similar documents
Important separators and parameterized algorithms

Recent Advances in FPT and Exact Algorithms for NP-Complete Problems

The Square Root Phenomenon in Planar Graphs

Multicut is FPT. Lyon Cedex 07, France

Parameterized graph separation problems

Paths, Flowers and Vertex Cover

CPSC 536N: Randomized Algorithms Term 2. Lecture 10

Paths, Flowers and Vertex Cover

Paths, Flowers and Vertex Cover

FEDOR V. FOMIN. Lectures on treewidth. The Parameterized Complexity Summer School 1-3 September 2017 Vienna, Austria

Chordal deletion is fixed-parameter tractable

Chordal deletion is fixed-parameter tractable

An exact characterization of tractable demand patterns for maximum disjoint path problems

When Recursion is Better than Iteration: A Linear-Time Algorithm for Acyclicity with Few Error Vertices

W[1]-hardness. Dániel Marx 1. Hungarian Academy of Sciences (MTA SZTAKI) Budapest, Hungary

arxiv: v1 [cs.ds] 8 Jan 2019

PLANAR GRAPH BIPARTIZATION IN LINEAR TIME

8 Matroid Intersection

Parameterized Reductions

W[1]-hardness. Dániel Marx. Recent Advances in Parameterized Complexity Tel Aviv, Israel, December 3, 2017

6. Lecture notes on matroid intersection

Optimal parameterized algorithms for planar facility location problems using Voronoi diagrams

Multicut in trees viewed through the eyes of vertex cover

Vertex Cover is Fixed-Parameter Tractable

Adjacent: Two distinct vertices u, v are adjacent if there is an edge with ends u, v. In this case we let uv denote such an edge.

A single-exponential FPT algorithm for Distance-Hereditary Vertex Deletion

12.1 Formulation of General Perfect Matching

Fixed-parameter tractable canonization and isomorphism test for graphs of bounded treewidth

A Complexity Dichotomy for Finding Disjoint Solutions of Vertex Deletion Problems

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Directed Feedback Vertex Set Problem is FPT

CMPSCI 311: Introduction to Algorithms Practice Final Exam

Hardness of Subgraph and Supergraph Problems in c-tournaments

Fixed-Parameter Algorithms, IA166

Fixed Parameter Algorithms

Number Theory and Graph Theory

Abstract. A graph G is perfect if for every induced subgraph H of G, the chromatic number of H is equal to the size of the largest clique of H.

6.856 Randomized Algorithms

5. Lecture notes on matroid intersection

A Polynomial Kernel for Block Graph Vertex Deletion

Graphs: Introduction. Ali Shokoufandeh, Department of Computer Science, Drexel University

The Parameterized Complexity of Finding Point Sets with Hereditary Properties

Hitting and harvesting pumpkins. Gwenaël Joret Christophe Paul Ignasi Sau Saket Saurabh Stéphan Thomassé

Solutions for the Exam 6 January 2014

Parameterized coloring problems on chordal graphs

Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs

Assignment 4 Solutions of graph problems

arxiv: v1 [cs.ds] 7 Jul 2017

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

1. Lecture notes on bipartite matching February 4th,

1. Lecture notes on bipartite matching

arxiv: v1 [cs.ds] 28 Jul 2014

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

The Method of Extremal Structure on the k-maximum CUT Problem

On Structural Parameterizations of the Matching Cut Problem

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE

Approximate Min-Max Theorems for Steiner Rooted-Orientations of Graphs and Hypergraphs

CSE 417 Branch & Bound (pt 4) Branch & Bound

Monochromatic path and cycle partitions in hypergraphs

Discrete Wiskunde II. Lecture 6: Planar Graphs

On the Parameterized Max-Leaf Problems: Digraphs and Undirected Graphs

Disjoint directed cycles

Faster parameterized algorithms for Minimum Fill-In

Jessica Su (some parts copied from CLRS / last quarter s notes)

CS 598CSC: Approximation Algorithms Lecture date: March 2, 2011 Instructor: Chandra Chekuri

An Improved Exact Algorithm for Undirected Feedback Vertex Set

Minimum Spanning Trees My T. UF

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

Math 443/543 Graph Theory Notes 11: Graph minors and Kuratowski s Theorem

Lecture 3: Graphs and flows

Graph Algorithms Using Depth First Search

Section 3.1: Nonseparable Graphs Cut vertex of a connected graph G: A vertex x G such that G x is not connected. Theorem 3.1, p. 57: Every connected

HW Graph Theory SOLUTIONS (hbovik)

Faster parameterized algorithms for Minimum Fill-In

Iterative Compression and Exact Algorithms

CS473-Algorithms I. Lecture 13-A. Graphs. Cevdet Aykanat - Bilkent University Computer Engineering Department

Embedded Width, A Variation of Treewidth for Planar Graphs

Project Report for CMSC 858F (Previous Work)

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Eulerian disjoint paths problem in grid graphs is NP-complete

Fixed-Parameter Algorithm for 2-CNF Deletion Problem

Theorem 2.9: nearest addition algorithm

The Parameterized Complexity of the Rainbow Subgraph Problem. Falk Hüffner, Christian Komusiewicz *, Rolf Niedermeier and Martin Rötzschke

Notes on Minimum Cuts and Modular Functions

On the Min-Max 2-Cluster Editing Problem

Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University

Bipartite Roots of Graphs

Monochromatic loose-cycle partitions in hypergraphs

In this lecture, we ll look at applications of duality to three problems:

Decreasing the Diameter of Bounded Degree Graphs

Branching Algorithms

Solution for Homework set 3

10. EXTENDING TRACTABILITY

Math 776 Graph Theory Lecture Note 1 Basic concepts

Subexponential algorithms for rectilinear Steiner tree and arborescence problems

Greedy Approximations

Lecture 19 Thursday, March 29. Examples of isomorphic, and non-isomorphic graphs will be given in class.

Dynamic programming. Trivial problems are solved first More complex solutions are composed from the simpler solutions already computed

1 Undirected Vertex Geography UVG

Transcription:

Important separators and parameterized algorithms Dániel Marx 1 1 Institute for Computer Science and Control, Hungarian Academy of Sciences (MTA SZTAKI) Budapest, Hungary PCSS 2017 Vienna, Austria September 2, 2017 1

2 Overview Main message Small separators in graphs have interesting extremal properties that can be exploited in combinatorial and algorithmic results. Bounding the number of important cuts. Edge/vertex versions, directed/undirected versions. Algorithmic applications: FPT algorithm for Multiway cut Directed Feedback Vertex Set

3 Minimum cuts Definition: δ(r) is the set of edges with exactly one endpoint in R. Definition: A set S of edges is a minimal (X, Y )-cut if there is no X Y path in G \ S and no proper subset of S breaks every X Y path. Observation: Every minimal (X, Y )-cut S can be expressed as S = δ(r) for some X R and R Y =. δ(r) X Y R

3 Minimum cuts Theorem A minimum (X, Y )-cut can be found in polynomial time. Theorem The size of a minimum (X, Y )-cut equals the maximum size of a pairwise edge-disjoint collection of X Y paths. δ(r) X Y R

4 Submodularity Fact: The function δ is submodular: for arbitrary sets A, B, δ(a) + δ(b) δ(a B) + δ(a B)

4 Submodularity Fact: The function δ is submodular: for arbitrary sets A, B, δ(a) + δ(b) δ(a B) + δ(a B) Proof: Determine separately the contribution of the different types of edges. A B

4 Submodularity Fact: The function δ is submodular: for arbitrary sets A, B, δ(a) + δ(b) δ(a B) + δ(a B) 0 1 1 0 Proof: Determine separately the contribution of the different types of edges. A B

4 Submodularity Fact: The function δ is submodular: for arbitrary sets A, B, δ(a) + δ(b) δ(a B) + δ(a B) 1 0 1 0 Proof: Determine separately the contribution of the different types of edges. A B

4 Submodularity Fact: The function δ is submodular: for arbitrary sets A, B, δ(a) + δ(b) δ(a B) + δ(a B) 0 1 0 1 Proof: Determine separately the contribution of the different types of edges. A B

4 Submodularity Fact: The function δ is submodular: for arbitrary sets A, B, δ(a) + δ(b) δ(a B) + δ(a B) 1 0 0 1 Proof: Determine separately the contribution of the different types of edges. A B

4 Submodularity Fact: The function δ is submodular: for arbitrary sets A, B, δ(a) + δ(b) δ(a B) + δ(a B) 1 1 1 1 Proof: Determine separately the contribution of the different types of edges. A B

4 Submodularity Fact: The function δ is submodular: for arbitrary sets A, B, δ(a) + δ(b) δ(a B) + δ(a B) 1 1 0 0 Proof: Determine separately the contribution of the different types of edges. A B

5 Submodularity Lemma Let λ be the minimum (X, Y )-cut size. There is a unique maximal R max X such that δ(r max ) is an (X, Y )-cut of size λ.

5 Submodularity Lemma Let λ be the minimum (X, Y )-cut size. There is a unique maximal R max X such that δ(r max ) is an (X, Y )-cut of size λ. Proof: Let R 1, R 2 X be two sets such that δ(r 1 ), δ(r 2 ) are (X, Y )-cuts of size λ. δ(r 1 ) + δ(r 2 ) δ(r 1 R 2 ) + δ(r 1 R 2 ) λ λ λ δ(r 1 R 2 ) λ R 1 Y X R 2 Note: Analogous result holds for a unique minimal R min.

6 Important cuts Definition: δ(r) is the set of edges with exactly one endpoint in R. Definition: A set S of edges is a minimal (X, Y )-cut if there is no X Y path in G \ S and no proper subset of S breaks every X Y path. Observation: Every minimal (X, Y )-cut S can be expressed as S = δ(r) for some X R and R Y =. δ(r) X Y R

6 Important cuts Definition A minimal (X, Y )-cut δ(r) is important if there is no (X, Y )-cut δ(r ) with R R and δ(r ) δ(r). Note: Can be checked in polynomial time if a cut is important (δ(r) is important if R = R max ). δ(r) X Y R

Important cuts Definition A minimal (X, Y )-cut δ(r) is important if there is no (X, Y )-cut δ(r ) with R R and δ(r ) δ(r). Note: Can be checked in polynomial time if a cut is important (δ(r) is important if R = R max ). δ(r) X R δ(r ) Y R 6

6 Important cuts Definition A minimal (X, Y )-cut δ(r) is important if there is no (X, Y )-cut δ(r ) with R R and δ(r ) δ(r). Note: Can be checked in polynomial time if a cut is important (δ(r) is important if R = R max ). δ(r) X Y R

7 Important cuts The number of important cuts can be exponentially large. Example: Y 1 2 k/2 X This graph has 2 k/2 important (X, Y )-cuts of size at most k.

7 Important cuts The number of important cuts can be exponentially large. Example: Y 1 2 k/2 X This graph has 2 k/2 important (X, Y )-cuts of size at most k. Theorem There are at most 4 k important (X, Y )-cuts of size at most k.

8 Important cuts Theorem There are at most 4 k important (X, Y )-cuts of size at most k. Proof: Let λ be the minimum (X, Y )-cut size and let δ(r max ) be the unique important cut of size λ such that R max is maximal. (1) We show that R max R for every important cut δ(r).

8 Important cuts Theorem There are at most 4 k important (X, Y )-cuts of size at most k. Proof: Let λ be the minimum (X, Y )-cut size and let δ(r max ) be the unique important cut of size λ such that R max is maximal. (1) We show that R max R for every important cut δ(r). By the submodularity of δ: δ(r max ) + δ(r) δ(r max R) + δ(r max R) λ λ δ(r max R) δ(r) If R R max R, then δ(r) is not important.

Important cuts Theorem There are at most 4 k important (X, Y )-cuts of size at most k. Proof: Let λ be the minimum (X, Y )-cut size and let δ(r max ) be the unique important cut of size λ such that R max is maximal. (1) We show that R max R for every important cut δ(r). By the submodularity of δ: δ(r max ) + δ(r) δ(r max R) + δ(r max R) λ λ δ(r max R) δ(r) If R R max R, then δ(r) is not important. Thus the important (X, Y )- and (R max, Y )-cuts are the same. We can assume X = R max. 8

9 Important cuts (2) Search tree algorithm for enumerating all these cuts: An (arbitrary) edge uv leaving X = R max is either in the cut or not. u X = R max v Y

9 Important cuts (2) Search tree algorithm for enumerating all these cuts: An (arbitrary) edge uv leaving X = R max is either in the cut or not. u X = R max v Y Branch 1: If uv S, then S \ uv is an important (X, Y )-cut of size at most k 1 in G \ uv. Branch 2: If uv S, then S is an important (X v, Y )-cut of size at most k in G.

9 Important cuts (2) Search tree algorithm for enumerating all these cuts: An (arbitrary) edge uv leaving X = R max is either in the cut or not. u X = R max v Y Branch 1: If uv S, then S \ uv is an important (X, Y )-cut of size at most k 1 in G \ uv. k decreases by one, λ decreases by at most 1. Branch 2: If uv S, then S is an important (X v, Y )-cut of size at most k in G. k remains the same, λ increases by 1.

Important cuts (2) Search tree algorithm for enumerating all these cuts: An (arbitrary) edge uv leaving X = R max is either in the cut or not. u X = R max v Y Branch 1: If uv S, then S \ uv is an important (X, Y )-cut of size at most k 1 in G \ uv. k decreases by one, λ decreases by at most 1. Branch 2: If uv S, then S is an important (X v, Y )-cut of size at most k in G. k remains the same, λ increases by 1. The measure 2k λ decreases in each step. Height of the search tree 2k 2 2k = 4 k important cuts of size at most k. 9

10 Important cuts Theorem There are at most 4 k important (X, Y )-cuts of size at most k. Example: The bound 4 k is essentially tight. X Y

10 Important cuts Theorem There are at most 4 k important (X, Y )-cuts of size at most k. Example: The bound 4 k is essentially tight. X Any subtree with k leaves gives an important (X, Y )-cut of size k. Y

10 Important cuts Theorem There are at most 4 k important (X, Y )-cuts of size at most k. Example: The bound 4 k is essentially tight. X Any subtree with k leaves gives an important (X, Y )-cut of size k. Y

Important cuts Theorem There are at most 4 k important (X, Y )-cuts of size at most k. Example: The bound 4 k is essentially tight. X Y Any subtree with k leaves gives an important (X, Y )-cut of size k. The number of subtrees with k leaves is the Catalan number C k 1 = 1 ( ) 2k 2 4 k /poly(k). k k 1 10

11 Multiway Cut Definition: A multiway cut of a set of terminals T is a set S of edges such that each component of G \ S contains at most one vertex of T. Multiway Cut Input: Graph G, set T of vertices, integer k t 3 Find: A multiway cut S of at most k edges. t 4 t 4 t 1 t 2 t 5 Polynomial for T = 2, but NP-hard for any fixed T 3 [Dalhaus et al. 1994].

11 Multiway Cut Definition: A multiway cut of a set of terminals T is a set S of edges such that each component of G \ S contains at most one vertex of T. Multiway Cut Input: Graph G, set T of vertices, integer k t 3 Find: A multiway cut S of at most k edges. t 4 t 4 t 1 t 2 t 5 Trivial to solve in polynomial time for fixed k (in time n O(k) ). Theorem Multiway cut can be solved in time 4 k k 3 ( V (G) + E(G) ).

12 Multiway Cut Intuition: Consider a t T. A subset of the solution S is a (t, T \ t)-cut. t

12 Multiway Cut Intuition: Consider a t T. A subset of the solution S is a (t, T \ t)-cut. t There are many such cuts.

12 Multiway Cut Intuition: Consider a t T. A subset of the solution S is a (t, T \ t)-cut. t There are many such cuts.

12 Multiway Cut Intuition: Consider a t T. A subset of the solution S is a (t, T \ t)-cut. t There are many such cuts. But a cut farther from t and closer to T \ t seems to be more useful.

13 Multiway Cut and important cuts Pushing Lemma Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut.

13 Multiway Cut and important cuts Pushing Lemma Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut. Proof: Let R be the vertices reachable from t in G \ S for a solution S. t R

13 Multiway Cut and important cuts Pushing Lemma Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut. Proof: Let R be the vertices reachable from t in G \ S for a solution S. t R R δ(r) is not important, then there is an important cut δ(r ) with R R and δ(r ) δ(r). Replace S with S := (S \ δ(r)) δ(r ) S S

Multiway Cut and important cuts Pushing Lemma Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut. Proof: Let R be the vertices reachable from t in G \ S for a solution S. t R v u R δ(r) is not important, then there is an important cut δ(r ) with R R and δ(r ) δ(r). Replace S with S := (S \ δ(r)) δ(r ) S S S is a multiway cut: (1) There is no t-u path in G \ S and (2) a u-v path in G \ S implies a t-u path, a contradiction. 13

Multiway Cut and important cuts Pushing Lemma Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut. Proof: Let R be the vertices reachable from t in G \ S for a solution S. t R v u R δ(r) is not important, then there is an important cut δ(r ) with R R and δ(r ) δ(r). Replace S with S := (S \ δ(r)) δ(r ) S S S is a multiway cut: (1) There is no t-u path in G \ S and (2) a u-v path in G \ S implies a t-u path, a contradiction. 13

14 Algorithm for Multiway Cut 1 If every vertex of T is in a different component, then we are done. 2 Let t T be a vertex that is not separated from every T \ t. 3 Branch on a choice of an important (t, T \ t) cut S of size at most k. 4 Set G := G \ S and k := k S. 5 Go to step 1. We branch into at most 4 k directions at most k times: 4 k2 n O(1) running time. Next: Better analysis gives 4 k bound on the size of the search tree.

15 Multicut Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of edges such that G \ S has no s i -t i path for any i. Theorem Multicut can be solved in time f (k, l) n O(1) (FPT parameterized by combined parameters k and l).

Multicut Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of edges such that G \ S has no s i -t i path for any i. Theorem Multicut can be solved in time f (k, l) n O(1) (FPT parameterized by combined parameters k and l). Proof: The solution partitions {s 1, t 1,..., s l, t l } into components. Guess this partition, contract the vertices in a class, and solve Multiway Cut. Theorem [Bousquet, Daligault, Thomassé 2011] [M., Razgon 2011] Multicut is FPT parameterized by the size k of the solution. 15

16 Directed graphs Definition: δ(r) is the set of edges leaving R. Observation: Every inclusionwise-minimal directed (X, Y )-cut S can be expressed as S = δ(r) for some X R and R Y =. Definition: A minimal (X, Y )-cut δ(r) is important if there is no (X, Y )-cut δ(r ) with R R and δ(r ) δ(r). δ(r) X Y R

16 Directed graphs Definition: δ(r) is the set of edges leaving R. Observation: Every inclusionwise-minimal directed (X, Y )-cut S can be expressed as S = δ(r) for some X R and R Y =. Definition: A minimal (X, Y )-cut δ(r) is important if there is no (X, Y )-cut δ(r ) with R R and δ(r ) δ(r). δ(r) δ(r ) X Y R R

16 Directed graphs Definition: δ(r) is the set of edges leaving R. Observation: Every inclusionwise-minimal directed (X, Y )-cut S can be expressed as S = δ(r) for some X R and R Y =. Definition: A minimal (X, Y )-cut δ(r) is important if there is no (X, Y )-cut δ(r ) with R R and δ(r ) δ(r). The proof for the undirected case goes through for the directed case: Theorem There are at most 4 k important directed (X, Y )-cuts of size at most k.

Directed Multiway Cut The undirected approach does not work: the pushing lemma is not true. Pushing Lemma (for undirected graphs) Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut. Directed counterexample: s a b t Unique solution with k = 1 edges, but it is not an important cut (boundary of {s, a}, but the boundary of {s, a, b} has same size). 17

Directed Multiway Cut The undirected approach does not work: the pushing lemma is not true. Pushing Lemma (for undirected graphs) Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut. Directed counterexample: s a b t Unique solution with k = 1 edges, but it is not an important cut (boundary of {s, a}, but the boundary of {s, a, b} has same size). 17

Directed Multiway Cut The undirected approach does not work: the pushing lemma is not true. Pushing Lemma (for undirected graphs) Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut. Directed counterexample: s a b t Unique solution with k = 1 edges, but it is not an important cut (boundary of {s, a}, but the boundary of {s, a, b} has same size). 17

Directed Multiway Cut The undirected approach does not work: the pushing lemma is not true. Pushing Lemma (for undirected graphs) Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut. Problem in the undirected proof: t R v u R Replacing R by R cannot create a t u path, but can create a u t path. 17

17 Directed Multiway Cut The undirected approach does not work: the pushing lemma is not true. Pushing Lemma (for undirected graphs) Let t T. The Multiway Cut problem has a solution S that contains an important (t, T \ t)-cut. Using additional techniques, one can show: Theorem [Chitnis, Hajiaghayi, M. 2011] Directed Multiway Cut is FPT parameterized by the size k of the solution.

18 Directed Multicut Directed Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of edges such that G \ S has no s i t i path for any i. Theorem [Pilipczuk and Wahlström 2016] Directed Multicut with l = 4 is W[1]-hard.

18 Directed Multicut Directed Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of edges such that G \ S has no s i t i path for any i. Theorem [Pilipczuk and Wahlström 2016] Directed Multicut with l = 4 is W[1]-hard. But the case l = 2 can be reduced to Directed Multiway Cut: s 1 t 1 t 2 s 2

18 Directed Multicut Directed Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of edges such that G \ S has no s i t i path for any i. Theorem [Pilipczuk and Wahlström 2016] Directed Multicut with l = 4 is W[1]-hard. But the case l = 2 can be reduced to Directed Multiway Cut: x s 1 t 1 y t 2 s 2

18 Directed Multicut Directed Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of edges such that G \ S has no s i t i path for any i. Theorem [Pilipczuk and Wahlström 2016] Directed Multicut with l = 4 is W[1]-hard. But the case l = 2 can be reduced to Directed Multiway Cut: x s 1 t 1 y t 2 s 2

Directed Multicut Directed Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of edges such that G \ S has no s i t i path for any i. Theorem [Pilipczuk and Wahlström 2016] Directed Multicut with l = 4 is W[1]-hard. Corollary Directed Multicut with l = 2 is FPT parameterized by the size k of the solution.? Open: Is Directed Multicut with l = 3 FPT? 18

19 Skew Multicut Skew Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of k directed edges such that G \ S contains no s i t j path for any i j. s 1 s 2 s 3 s 4 t 1 t 2 t 3 t 4

19 Skew Multicut Skew Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of k directed edges such that G \ S contains no s i t j path for any i j. s 1 s 2 s 3 s 4 t 1 t 2 t 3 t 4 Pushing Lemma Skew Multcut problem has a solution S that contains an important (s l, {t 1,..., t l })-cut.

Skew Multicut Skew Multicut Input: Graph G, pairs (s 1, t 1 ),..., (s l, t l ), integer k Find: A set S of k directed edges such that G \ S contains no s i t j path for any i j. s 1 s 2 s 3 s 4 t 1 t 2 t 3 t 4 Pushing Lemma Skew Multcut problem has a solution S that contains an important (s l, {t 1,..., t l })-cut. Theorem [Chen, Liu, Lu, O Sullivan, Razgon 2008] Skew Multicut can be solved in time 4 k n O(1). 19

20 Directed Feedback Vertex Set Directed Feedback Vertex/Edge Set Input: Directed graph G, integer k Find: A set S of k vertices/edges such that G \ S is acyclic. Note: Edge and vertex versions are equivalent, we will consider the edge version here. Theorem [Chen, Liu, Lu, O Sullivan, Razgon 2008] Directed Feedback Edge Set is FPT parameterized by the size k of the solution. Solution uses the technique of iterative compression introduced by [Reed, Smith, Vetta 2004].

21 The compression problem Directed Feedback Edge Set Compression Input: Directed graph G, integer k, a set W of k + 1 edges such that G \ W is acyclic A set S of k edges such that G \ S is Find: acyclic. Easier than the original problem, as the extra input W gives us useful structural information about G. Lemma The compression problem is FPT parameterized by k.

The compression problem Directed Feedback Edge Set Compression Input: Directed graph G, integer k, a set W of k + 1 vertices such that G \ W is acyclic A set S of k edges such that G \ S is Find: acyclic. Easier than the original problem, as the extra input W gives us useful structural information about G. Lemma The compression problem is FPT parameterized by k. A useful trick for edge deletion problems: we define the compression problem in a way that a solution of k + 1 vertices are given and we have to find a solution of k edges. 21

22 The compression problem Proof: Let W = {w 1,..., w k+1 } Let us split each w i into an edge t i s i. t 1 s 1 t 2 s 2 t 3 s 3 t 4 s 4 By guessing the order of {w 1,..., w k+1 } in the acyclic ordering of G \ S, we can assume that w 1 < w 2 < < w k+1 in G \ S [(k + 1)! possibilities].

22 The compression problem Proof: Let W = {w 1,..., w k+1 } Let us split each w i into an edge t i s i. Claim: t 1 s 1 t 2 s 2 s 3 t 3 t 4 s 4 G \ S is acyclic and has an ordering with w 1 < w 2 < < w k+1 S covers every s i t j path for every i j G \ S is acyclic

22 The compression problem Proof: Let W = {w 1,..., w k+1 } Let us split each w i into an edge t i s i. Claim: t 1 s 1 t 2 s 2 t 3 s 3 t 4 s 4 G \ S is acyclic and has an ordering with w 1 < w 2 < < w k+1 S covers every s i t j path for every i j G \ S is acyclic

The compression problem Proof: Let W = {w 1,..., w k+1 } Let us split each w i into an edge t i s i. Claim: t 1 s 1 t 2 s 2 t 3 s 3 t 4 s 4 G \ S is acyclic and has an ordering with w 1 < w 2 < < w k+1 S covers every s i t j path for every i j G \ S is acyclic We can solve the compression problem by (k + 1)! applications of Skew Multicut. 22

23 Iterative compression We have given a f (k)n O(1) algorithm for the following problem: Directed Feedback Edge Set Compression Input: Directed graph G, integer k, a set W of k + 1 vertices such that G \ W is acyclic A set S of k edges such that G \ S is Find: acyclic. Nice, but how do we get a solution W of size k + 1?

23 Iterative compression We have given a f (k)n O(1) algorithm for the following problem: Directed Feedback Edge Set Compression Input: Directed graph G, integer k, a set W of k + 1 vertices such that G \ W is acyclic A set S of k edges such that G \ S is Find: acyclic. Nice, but how do we get a solution W of size k + 1? We get it for free! Powerful technique: iterative compression (introduced by [Reed, Smith, Vetta 2004] for Bipartite Deletion).

24 Iterative compression Let v 1,..., v n be the edges of G and let G i be the subgraph induced by {v 1,..., v i }. For every i = 1,..., n, we find a set S i of at most k edges such that G i \ S i is acyclic.

Iterative compression Let v 1,..., v n be the edges of G and let G i be the subgraph induced by {v 1,..., v i }. For every i = 1,..., n, we find a set S i of at most k edges such that G i \ S i is acyclic. For i = 1, we have the trivial solution S i =. Suppose we have a solution S i for G i. Let W i contain the head of each edge in S i. Then W i {v i+1 } is a set of at most k + 1 vertices whose removal makes G i+1 acyclic. Use the compression algorithm for G i+1 with the set W i {v i+1 }. If there is no solution of size k for G i+1, then we can stop. Otherwise the compression algorithm gives a solution S i+1 of size k for G i+1. We call the compression algorithm n times, everything else is polynomial. Directed Feedback Edge Set is FPT. 24

25 Summary Definition of important cuts. Combinatorial bound on the number of important cuts. Pushing argument: we can assume that the solution contains an important cut. Solves Multiway Cut, Skew Multiway Cut. Iterative compression reduces Directed Feedback Vertex Set to Skew Multiway Cut.

26 Advertisement Postdoc positions available in parameterized algorithms and complexity! Institute for Computer Science and Control Hungarian Academy of Sciences Budapest, Hungary