An Introduction to Parameterized Complexity and Algorithms Part 2 65
Total Page:16
File Type:pdf, Size:1020Kb
An Introduction to Parameterized . Complexity Dimitris Chatzidimitriou Advanced Topics on Algorithms and Complexity Corelab June 30, 2014 Part I Introduction FPT para-NP XP Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 2 / 49 Why parameterized complexity? Parameterized Complexity... a new notion of feasibility? Let’s revisit some classic NP-complete problems. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 3 / 49 Why parameterized complexity? Parameterized Complexity... a new notion of feasibility? Let’s revisit some classic NP-complete problems. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 3 / 49 Three NP-complete problems Vertex Coloring Instance: A graph G and an integer k ≥ 0. Question: 9σ : V(G) ! f1;:::; kg : 8fv; ug 2 E(G) σ(v) =6 σ(u)? It can be solved in O(n2 · kn) steps. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 4 / 49 Three NP-complete problems Vertex Coloring Instance: A graph G and an integer k ≥ 0. Question: 9σ : V(G) ! f1;:::; kg : 8fv; ug 2 E(G) σ(v) =6 σ(u)? It can be solved in O(n2 · kn) steps. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 4 / 49 Three NP-complete problems Independent Set Instance: A graph G and an integer k ≥ 0. Question: 9S 2 V(G)k : 8e 2 E(G) je \ Sj ≤ 1? It can be solved in O(nk+1) steps. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 5 / 49 Three NP-complete problems Independent Set Instance: A graph G and an integer k ≥ 0. Question: 9S 2 V(G)k : 8e 2 E(G) je \ Sj ≤ 1? It can be solved in O(nk+1) steps. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 5 / 49 Three NP-complete problems Vertex Cover Instance: A graph G and an integer k ≥ 0. Question: 9S 2 V(G)k : 8e 2 E(G) je \ Sj ≥ 1? It can be solved in (1:2738)k + O(n) steps. (Chen, Kanj, Xia. 2010) Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 6 / 49 Three NP-complete problems Vertex Cover Instance: A graph G and an integer k ≥ 0. Question: 9S 2 V(G)k : 8e 2 E(G) je \ Sj ≥ 1? It can be solved in (1:2738)k + O(n) steps. (Chen, Kanj, Xia. 2010) Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 6 / 49 Parameterized problems Notice that, for fixed values of k, Vertex Cover can be solved in linear time, Independent Set in polynomial, while Vertex Coloring still needs exponential time. Given an alphabet Σ, a parameterization of Σ∗ is a recursive mapping κ :Σ∗ ! N. A parameterized problem (with respect to Σ) is a pair (L; κ) where L ⊆ Σ∗ and κ is a parameterization of Σ∗. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 7 / 49 Parameterized problems Notice that, for fixed values of k, Vertex Cover can be solved in linear time, Independent Set in polynomial, while Vertex Coloring still needs exponential time. Given an alphabet Σ, a parameterization of Σ∗ is a recursive mapping κ :Σ∗ ! N. A parameterized problem (with respect to Σ) is a pair (L; κ) where L ⊆ Σ∗ and κ is a parameterization of Σ∗. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 7 / 49 Parameterized Satisfiability A parameterization κ of SAT: { number of variables in x, if x is a valid encoding κ(x) = 1; otherwise κ defines the following parameterized problem: p -SAT Instance: A propositional formula ϕ. Parameter: The number of variables in ϕ. Question: Is ϕ satisfiable? Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 8 / 49 Parameterized Satisfiability A parameterization κ of SAT: { number of variables in x, if x is a valid encoding κ(x) = 1; otherwise κ defines the following parameterized problem: p -SAT Instance: A propositional formula ϕ. Parameter: The number of variables in ϕ. Question: Is ϕ satisfiable? Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 8 / 49 Other examples A parameterization of Independent Set can be defined as κ(G; k) = k. We can do the same with all the problems that have some integer in their instances, such as Vertex Coloring or Vertex Cover. That way, we define the parameterized problems p -Vertex Coloring and p -Vertex Cover. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 9 / 49 Other examples A parameterization of Independent Set can be defined as κ(G; k) = k. We can do the same with all the problems that have some integer in their instances, such as Vertex Coloring or Vertex Cover. That way, we define the parameterized problems p -Vertex Coloring and p -Vertex Cover. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 9 / 49 Other examples A parameterization of Independent Set can be defined as κ(G; k) = k. We can do the same with all the problems that have some integer in their instances, such as Vertex Coloring or Vertex Cover. That way, we define the parameterized problems p -Vertex Coloring and p -Vertex Cover. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 9 / 49 New & exciting complexity classes! The classes FPT, para-NP, XP The classes W[P] and W[SAT] The classes W[1], W[2],… The classes A[P] and A[SAT] The classes A[1], A[2],… Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 10 / 49 The class FPT Given an alphabet Σ and a parameterization κ :Σ∗ ! N, (a) An algorithm A is a FPT-algorithm with respect to κ if there is a computable function f : N ! N and a polynomial function p : N ! N such that for every x 2 Σ∗, the algorithm A requires ≤ f (κ(x)) · p(jxj) steps (b) A parameterized problem (L; κ) is fixed parameter tractable if there exists an FPT-algorithm with respect to κ that decides L. We will then say that (L; κ) 2 FPT. p -SAT is in FPT while p -Vertex Coloring is not! Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 11 / 49 The class FPT Given an alphabet Σ and a parameterization κ :Σ∗ ! N, (a) An algorithm A is a FPT-algorithm with respect to κ if there is a computable function f : N ! N and a polynomial function p : N ! N such that for every x 2 Σ∗, the algorithm A requires ≤ f (κ(x)) · p(jxj) steps (b) A parameterized problem (L; κ) is fixed parameter tractable if there exists an FPT-algorithm with respect to κ that decides L. We will then say that (L; κ) 2 FPT. p -SAT is in FPT while p -Vertex Coloring is not! Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 11 / 49 The class FPT Given an alphabet Σ and a parameterization κ :Σ∗ ! N, (a) An algorithm A is a FPT-algorithm with respect to κ if there is a computable function f : N ! N and a polynomial function p : N ! N such that for every x 2 Σ∗, the algorithm A requires ≤ f (κ(x)) · p(jxj) steps (b) A parameterized problem (L; κ) is fixed parameter tractable if there exists an FPT-algorithm with respect to κ that decides L. We will then say that (L; κ) 2 FPT. p -SAT is in FPT while p -Vertex Coloring is not! Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 11 / 49 The class FPT Given an alphabet Σ and a parameterization κ :Σ∗ ! N, (a) An algorithm A is a FPT-algorithm with respect to κ if there is a computable function f : N ! N and a polynomial function p : N ! N such that for every x 2 Σ∗, the algorithm A requires ≤ f (κ(x)) · p(jxj) steps (b) A parameterized problem (L; κ) is fixed parameter tractable if there exists an FPT-algorithm with respect to κ that decides L. We will then say that (L; κ) 2 FPT. p -SAT is in FPT while p -Vertex Coloring is not! Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 11 / 49 FPT-reductions Let (L; κ) and (L0; κ0) be parameterized problems (with respect to the alphabets Σ and Σ0). A FPT-reduction from (L; κ) to (L0; κ0), is a mapping R :Σ∗ ! (Σ0)∗ where ∗ 0 1. 8x 2 Σ : x 2 L , R(x) 2 L 2. R is computable by an FPT-algorithm (with respect to κ) [i.e. R is computable in f (κ(x)) · p(jxj) steps] 3. there is a computable function g : N ! N such that 8x 2 Σ∗ : κ0(R(x)) ≤ g(κ(x)) Observation: The class FPT is closed under FPT-reductions. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 12 / 49 FPT-reductions Let (L; κ) and (L0; κ0) be parameterized problems (with respect to the alphabets Σ and Σ0). A FPT-reduction from (L; κ) to (L0; κ0), is a mapping R :Σ∗ ! (Σ0)∗ where ∗ 0 1. 8x 2 Σ : x 2 L , R(x) 2 L 2. R is computable by an FPT-algorithm (with respect to κ) [i.e. R is computable in f (κ(x)) · p(jxj) steps] 3. there is a computable function g : N ! N such that 8x 2 Σ∗ : κ0(R(x)) ≤ g(κ(x)) Observation: The class FPT is closed under FPT-reductions. Dimitris Chatzidimitriou (MPLA) Parameterized Complexity June 30, 2014 12 / 49 FPT-reductions Let (L; κ) and (L0; κ0) be parameterized problems (with respect to the alphabets Σ and Σ0). A FPT-reduction from (L; κ) to (L0; κ0), is a mapping R :Σ∗ ! (Σ0)∗ where ∗ 0 1. 8x 2 Σ : x 2 L , R(x) 2 L 2. R is computable by an FPT-algorithm (with respect to κ) [i.e.