data reduction lower bounds: problems without polynomial kernels
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
Data reduction lower bounds:Problems without polynomial kernels
Hans L. BodlaenderJoint work with Downey, Fellows,
Hermelin, Thomasse, Yeo
No Polynomial Kernels2
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 Kernels3
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 Kernels4
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 Kernels5
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 Kernels6
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 Kernels7
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 Kernels8
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 Kernels9
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 Kernels10
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 Kernels11
Example problems
• 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?
Both are FPT, but no kernels ofpolynomial size are known
Both are FPT, but no kernels ofpolynomial size are known
No Polynomial Kernels12
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 Kernels13
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 Kernels14
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 Kernels15
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:
1. Take formulas F(1), …, F(r) (inputs of SAT)
2. 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 Kernels16
Proof continued
3. 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).
4. 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 Kernels17
Proof further continued
5. Apply the kernelization algorithm to each group: (G’(1),k1), …, (G’(s),ks)
6. Use polynomial time transformation (implied by NP-completeness), and transform each to an equivalent instance of Satisfiability: F’(1), .., F’(s)
7. “Or” the formulas: F=F’(1) or F’(2) or … or F’(s)
No Polynomial Kernels18
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 Kernels19
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 all x(i) hold
– Example: Treewidth
No Polynomial Kernels20
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 Kernels21
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 Kernels22
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 Kernels23
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 vi adjacent to each letter i
No Polynomial Kernels24
1 2 3 4
4 1 4 2 2 3 1 3 1
Graph has k disjoint cycles: each uses onegreen vertex: string has k disjoint factors
No Polynomial Kernels25
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 Kernels26
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 Kernels27
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 Kernels28
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 Kernels29
Fortnow-Santhanam
Theorem. If the Or-distillation conjecture does not hold, then NP coNP/poly
No Polynomial Kernels30
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 Kernels31
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 Kernels32
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 Kernels33
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