330 likes | 446 Views
Data reduction lower bounds: Problems without polynomial kernels. Hans L. Bodlaender Joint work with Downey, Fellows, Hermelin, Thomasse, Yeo. This talk. Kernelisation Distillation conjecture and problems without polynomial kernels Example: Long Path Composability
E N D
Data reduction lower bounds:Problems without polynomial kernels Hans L. BodlaenderJoint work with Downey, Fellows, Hermelin, Thomasse, Yeo
This talk • Kernelisation • Distillation conjecture and problems without polynomial kernels • Example: Long Path • Composability • Proofs using transformations • Example: Disjoint cycles • Conclusions • If you want: sketch of Fortnow-Santhanam theorem No Polynomial Kernels
Why kernelisation? • Approach for solving NP-hard problem • Data reduction: transform input to equivalent, smaller input • Solve smaller input (e.g., ILP, branch and reduce, …) • Transform solution back to solution of original problem No Polynomial Kernels
Parameterised problem • Input: pair (X,k) • Parameter: k • Question: Q(X,k)? • Fixed parameter theory (Downey and Fellows) helps to analyze • NP-complete for fixed k • O(nf(k)) • O(f(k)* nc No Polynomial Kernels
Kernelisation • A kernelisation algorithm • Receives an input to a parameterized problem Q • Transforms (X,k) to (X’,k’) with k £g(k) such that Q(X,k) Û Q(X’,k’) (Equivalent) • In polynomial time • |X’| £ f(k) (Size bounded by function of parameter) No Polynomial Kernels
Small kernels • Given a parameterized problem Q, we can ask: • Does it have a kernel? • If so, what is the best size of the kernel that we can obtain • Polynomial kernel: kernelisation algorithm that yields reduced instances of size bounded by polynomial in k No Polynomial Kernels
Kernel iff FPT • A problem belongs to FPT, iff it can be solved in O(nc f(k)) time • Proposition: a problem belongs to FPT, if and only if it has a kernelisation algorithm • Consequence: hardness for W[1] or larger classes shows that a problem has no kernel, unless the Exponential Time Hypothesis does not hold No Polynomial Kernels
Kernel sizes • O(1): problem belongs to P • NP-hardness gives negative evidence • Polynomial in k: can be shown with polynomial kernelisation algorithm • This talk: negative evidence • Any function of k: can be shown with FPT-algorithm • W[1]-hardness gives negative evidence No Polynomial Kernels
Examples • Dominating set: no kernel (unless …) • Dominating set on planar graphs: O(n) (Alber et al, 2002) • Feedback vertex set: O(n2) (Thomasse, 2008) • Feedback vertex set on planar graphs: O(n) (Penninkx, B. 2008) • Disjoint cycles: exponential kernel, no polynomial kernel (unless …) • Disjoint cycles on planar graphs: O(n) (Penninkx, B, 2008) • Long path: exponential kernel, no polynomial kernel (unless …) • Long path on planar graphs: exponential kernel, no polynomial kernel (unless …) No Polynomial Kernels
This talk • Arguments why a problem does not have a kernel of polynomial size • Techniques that are used: • Composability (and-composable, or-composable) • Distillation conjectures • Result by Fortnow and Santhanam • Polynomial time and parameter transformations No Polynomial Kernels
Long path Instance: Undirected graph G, integer k Parameter k Question: Does G have a simple path of length at least k? Disjoint cycles Instance: Undirected graph G, integer k Parameter k Question: Does G have at least k vertex disjoint cycles? Example problems Both are FPT, but no kernels of polynomial size are known No Polynomial Kernels
Example theorem • The Long Path problem has no polynomial kernel, unless NP Í coNP/poly. • Intuition: • Consider a graph with many connected components. It has a path of length k, if and only if at least one of its components has a path of length k. • If we have >> p(k)connected components, it seems unlikely that we can kernelise to a kernel of size p(k)… No Polynomial Kernels
Or-distillation conjecture • There is no algorithm, that given instances X(1), …, X(r) of an NP-complete problem, finds an instance X’ of the problem, such that • X’ has a solution, if and only if there is an i with X(i) has a solution • The time of the algorithm is polynomial in the sum of the sizes of the X(j)’s • The size of X’ is bounded by a polynomial in the maximum size of the X(j)’s. • Note: if it holds for one NP-complete problem, then for all. We use Satisfiability. No Polynomial Kernels
Fortnow-Santhanam result • If the Or-distillation conjecture does not hold, then NP Í coNP/poly • Some problems (e.g., Treewidth) need And-Distillation conjecture. No such result is known for and-distillation No Polynomial Kernels
Proof for Long Path • Suppose we have a kernelisation algorithm for Long Path. • Note that Long Path is NP-complete. • We build an or-distillation algorithm for Satisfiability, as follows: • Take formulas F(1), …, F(r) (inputs of SAT) • Use polynomial time transformation (implied by NP-completeness), and transform each to an equivalent instance of Long Path: (G(1),k(1)), … , (G(r), k(r)) No Polynomial Kernels
Proof continued • Group these in sets with the same parameter: (G(1,1),1), (G(1,2),1), … (G(1,r1),1), (G(2,1),2), (G(2,2),1), … (G(2,r2),2), … (G(s,1),s), (G(s,2),s), … (G(s,rs),s). • For each group, build one instance of Long Path by taking the disjoint union of the graphs(G(1,1) È G(1,2) È … È G(1,r1), 1),(G(2,1) È G(2,2) È … È G(2,r2), 2), …, (G(s,1) È G(s,2) È … È G(s,rs), s). No Polynomial Kernels
Proof further continued • Apply the kernelization algorithm to each group: (G’(1),k1), …, (G’(s),ks) • Use polynomial time transformation (implied by NP-completeness), and transform each to an equivalent instance of Satisfiability: F’(1), .., F’(s) • “Or” the formulas: F=F’(1) or F’(2) or … or F’(s) No Polynomial Kernels
Correctness • Satisfiability: easy check • Size: • Say maximum size of formula F(i) is n. • Maximum parameter s is bounded by polynomial in n • Each of the F’(i)’s has size bounded by polynomial in value at most s QED No Polynomial Kernels
Technique works for many problems • If problem has or-compositionality: • If we have several instances x(1), … , x(r) with the same parameter, we can build in polynomial time one instance that holds, if and only if at least one x(i) holds • Several graph problems are or-compositional, often just using disjoint union of connected components (does G contain a certain substructure?) • Some graph problems need and-compositionality: • If we have several instances x(1), … , x(r) with the same parameter, we can build in polynomial time one instance that holds, if and only if allx(i) hold • Example: Treewidth No Polynomial Kernels
Theorem • If problem is or-compositional and NP-complete, it has no polynomial kernel, unless NP Í coNP/poly. • If problem is and-compositional and NP-complete, it has no polynomial kernel, unless and-distillation conjecture does not hold. Extending this with transformations… No Polynomial Kernels
Transformations • Theorem: Disjoint Cycles has no polynomial kernel, unless NP Í coNP/poly. • Note: unexpected: related problems (Feedback Vertex Set, Edge Disjoint Cycles) have polynomial kernels • Transformation via Disjoint Factors • Disjoint Factors • Input: string s in {1,…,k}* • Parameter: k • Question: find disjoint substrings in s, starting and ending with 1, with 2, …, with k, each of length at least 2 • 41412323141343433 No Polynomial Kernels
Or-compositionality of Disjoint factors • Suppose we have inputs s(1), …,s(r) Î {1, …,k}* • If r > 2k, we can solve with dynamic programming each input in O(2k |s(i)|) time which is polynomial • Suppose r £ 2k. • Adding at most k extra letters, we build one input as follows, e.g., for k=3: • 6 5 4 s(1) 4 s(2) 4 5 4 s(3) 4 s(4) 4 5 6 5 4 s(5) 4 s(6) 4 5 4 s(7) 4 s(8) 4 5 6 • (2k) recursive string with first half (2k) recursive string with second half (2k) • … if and only if … No Polynomial Kernels
Disjoint cycles theorem proved • Disjoint factors is NP-complete (proof omitted), and or-compositional, so has no polynomial kernel unless NP Í coNP/poly. • Suppose we have a polynomial kernelisation algorithm for Disjoint Cycles. We build one for Disjoint Factors: • Take string s in {1, …, k}* • Build graph: take path a vertex for each letter in s • Take k new vertices vi, one for each element in {1,…,k} • Make viadjacent to each letter i No Polynomial Kernels
4 1 4 2 2 3 1 3 1 1 2 3 4 Graph has k disjoint cycles: each uses onegreen vertex: string has k disjoint factors No Polynomial Kernels
Proof with reductions • Polynomial time and parameter reduction: • Reduction from a parameterized problem to another parameterized problem: • Uses time, polynomial in input size + k • Maps to equivalent instances • New parameter is bounded by polynomial in old parameter • Similar to classic notion from NP-completeness theory, but now also parameter bound No Polynomial Kernels
Use of reductions • Suppose that we have parameterized problems P and Q. Let P’ and Q’ be the corresponding non-parameterized problems, assuming that parameters are given in unary. If Q’ is NP-complete, P’ is in NP, and we have a polynomial time and parameter reduction from P to Q. • Then, if Q has a polynomial kernel, then P has a polynomial kernel. No Polynomial Kernels
Examples • Or-compositional: Long Path, Long Cycle, Cycle of Length exactly k, k-Clique minor, several problems parameterized by treewidth of graph • And-compositional: Treewidth, Pathwidth, Cutwidth, Branchwidth, • Transformations: Disjoint Cycles, Disjoint Paths (Linkage), Hamiltonian Circuit parameterized by Treewidth • …??? No Polynomial Kernels
Conclusions • Data reduction and kernelisation: interesting research topic • Compositionality is easy to use, and gives easy arguments that problems are not likely to have polynomial kernel • Kernelisation gives interesting insights in problems, as data reduction is used in practical settings • Transformations extend applicability of results • Many angles for interesting further research No Polynomial Kernels
Fortnow-Santhanam Theorem. If the Or-distillation conjecture does not hold, then NP Í coNP/poly No Polynomial Kernels
Fortnow Santhanam proof • Suppose L Î {0,1}* is NP-complete problem with Or-distillation algorithm A • Let LC be the complement of L • Let LC(n) all strings in LC of length at most n • A maps a sequence x(1), …, x(t) Î LC(n) to a string in LC(nc) with c not depending on t No Polynomial Kernels
Claim (part of proof) • Claim. If n, t large enough, there is a set S(n) Í LC(n) such that • |S(n)| is polynomially bounded in n • If x Î LC(n), then there exists strings x(1), .., x(t), each of length at most n with x(i)=x for some i, such that A maps x(1), .., x(t) to an element in S(n) • If x ÏLC(n), then for all strings x(1), .., x(t), each of length at most n with x(i)=x for some i, A maps x(1), .., x(t) to an element not in S(n) No Polynomial Kernels
Proof of claim (sketch) • If x Î LC(n) and there exists strings x(1), .., x(t), each of length at most n with x(i)=x for some i, such that A maps x(1), .., x(t) to an element y in S(n), we say that y covers x. • We need polynomial size set that cover all strings in LC(n). • Counting argument: there is a string that covers a constant fraction of the not yet covered strings, if we take t = O(nc). • Repeating this gives the desired set No Polynomial Kernels
Using the claim and ending the proof • coNP/poly algorithm to check if given string belongs to LC(n) • Given a string x of length n: • Guess t strings of length at most n. • If neither is x, reject. • Otherwise, apply A, say we get y • If y Î S(n), then accept, otherwise reject QED No Polynomial Kernels