Talk 4

advertisement
Fine-Grained Complexity and Algorithm Design Boot Camp
Lower Bounds Based on SETH
Dániel Marx
(slides by Daniel Lokshtanov)
Simons Institute, Berkeley, CA
September 4, 2015
Tight lower bounds
Have seen that ETH can give tight lower bounds
How tight? ETH «ignores» constants in exponent
How to distinguish 1.85n from 1.0001n?
SAT
Input: Formula πœ“ with m clauses over n boolean
variables.
Question: Does there exist an assignment to the
variables that satisfies all clauses?
Note: Input can have size superpolynomial in n!
Fastest algorithm for SAT: 2npoly(m)
d-SAT
Here all clauses have size ≤ d
Input size ≤ nd
Fastest algorithm for 2-SAT:
Fastest algorithm for 3-SAT:
Fastest algorithm for 4-SAT:
…
Fastest algorithm for d-SAT:
Fastest algorithm for SAT:
n+m
1.31n
1.47n
1−𝑐 𝑑 𝑛
2
𝑛
2
Strong ETH
Let 𝑠𝑑 = inf{𝑐 ∢ d-SAT has a 2𝑐𝑛 algorithm}
Let 𝑠∞ = lim 𝑠𝑑
𝑑→∞
Know: 0 ≤ sd ≤ s∞ ≤ 1
ETH: s3 > 0
SETH: s∞
=1
Showing Lower Bounds under SETH
d-SAT
Your Problem
1.99999𝑛
Too fast algorithm?
The number of 9’s MUST
be independent of d
Dominating Set
Input: n vertices, integer k
Question: Is there a set S of at most k vertices
such that N[S] = V(G)?
Naive: nk+1
Smarter: nk+o(1)
Assuming ETH: no f(k)no(k)
k/10
n ?
nk-1?
SAT οƒ  k-Dominating Set
Variables
SAT-formula
k groups, each on
n/k variables.
One vertex for each of the 2n/k
assignments to the variables
in the group.
Variables
SAT-formula
k groups, each on
n/k variables.
x
x
y
Cliques
y
x
y
x
Selecting one vertex from each
cloud corrsponds to selecting
an assignment to the variables.
y
x
y
Variables
SAT-formula
k groups, each on
n/k variables.
x
y
x
y
x
y
x
y
x
Edge if the partial assignment
satisfies the clause
One vertex per clause in the formula
y
SAT οƒ  k-Dominating Set
analysis
Too fast algorithm for k-Dominating Set: nk-0.01
For any fixed k (like k=3)
If m ≥ 2n/k then 2n is at most mk,
which is polynomial!
So m ≤ 2n/k
(2π‘˜ ⋅
2𝑛/π‘˜ )π‘˜−0.01
The output graph has
k2n/k + m ≤ 2k ⋅ 2n/k vertices
𝑛
≤ (2π‘˜)π‘˜ ⋅ 2
π‘˜−0.01
π‘˜
= 𝑂(1.999𝑛 )
Dominating Set, wrapping up
A O(n2.99) algorithm for 3-Dominating Set, or
a O(n3.99) algorithm for 4-Dominating Set, or a
a O(n4.99) algorithm for 5-Dominating Set, or a …
… would violate SETH.
Treewidth
• We have seen: 2tnO(1), 3tnO(1), etc. algorithms and no
2o(t)nO(1) algorithms assuming ETH.
Independent Set / Treewidth
Input: Graph G, integer k, tree-decomposition of
G of width ≤ t.
Question: Does G have an independent set of
size at least k?
DP: O(2tn) time algorithm
Can we do it in 1.99t poly(n) time?
Next: If yes, then SETH fails!
Independent Set / Treewidth
Will reduce n-variable d-SAT to Independent Set
in graphs of treewidth t, where t ≤ n+d.
So a 1.99tpoly(N) algorithm for Independent Set
gives a 1.99n+dpoly(n) ≤ O(1.999n) time algorithm
for d-SAT.
Independent Sets on an Even Path
t
f
True
t
t
f
Infindependent
set:
t
f
Not in solution:
False
first
True
then
False
t
f
d-SAT ≤ Independent Set
proof by example
πœ“ = (a ∨ b ∨ c) ∧ (a ∨ c ∨ d) ∧ (b ∨ c ∨ d)
b
a
c
c
a
c
d
b
d
a
t
f
t
f
t
f
b
t
f
t
f
t
f
c
t
f
t
f
t
f
d
t
f
t
f
t
f
Independent Sets ↔ Assignments
πœ“ = (a ∨ b ∨ c) ∧ (a ∨ c ∨ d) ∧ (b ∨ c ∨ d)
b
a
c
c
a
c
d
b
d
True
But what about the
a true
first
then
sets?
t
f false
t independent
f
t
f
False
b
t
f
t
f
t
f
True
c
t
f
t
f
t
f
False
d
t
f
t
f
t
f
Dealing with truefalse
Clause
gadgets
1
2
3
1
2
3
1
2
3
1
2
3
1
a
b
c
d
Every variable flips truefalse at most once!
2
3
Treewidth Bound
by picture
b
d
n
a
c
c
a
c
d
b
d
a
t
f
t
f
t
f
b
t
f
t
f
t
f
c
t
f
t
f
t
f
…
…
…
d
t
f
t
f
t
f
…
Formal proof - exercise
Independent Set / Treewidth
wrap up
Reduced n-variable d-SAT to Independent Set in
graphs of treewidth t, where t ≤ n+d.
A 1.99tpoly(N) algorithm for Independent Set
gives a 1.99n+dpoly(n) ≤ O(1.999n) time algorithm
for d-SAT.
Thus, no
1.99t algorithm for
Independent Set assuming SETH
Assuming SETH, the following algorithms are
optimal:
– 2t ⋅ poly(n) for Independent Set
– 3t ⋅ poly(n) for Dominating Set
– ct ⋅ poly(n) for c-Coloring
– 3t ⋅ poly(n) for Odd Cycle Transversal
– 2t ⋅ poly(n) for Partition Into Triangles
– 2t ⋅ poly(n) for Max Cut
– 2t ⋅ poly(n) for #Perfect Matching
–…
3t lower bound for Dominating Set?
Need to reduce k-SAT formulas on n-variables to
Dominating Set in graphs of treewidth t, where
3𝑑 ≈ 2𝑛
So t ≈ 𝑛
log 3
≈0.58𝑛
Hitting Set / n
Input: Family F = {S1,…,Sm} of sets over universe
U = {v1, …, vn}, integer k.
Question: Does there exist a set X ⊆ U of size at
most k such that for every Si ∈ F, Si ∩ X ≠ ∅?
Naive algorithm runs in O(2n nm) time.
Next: 1.41n poly(n, m) implies that SETH fails
d-SAT ≤ Hitting Set
πœ“ = (a ∨ b ∨ c) ∧ (a ∨ c ∨ d) ∧ (b ∨ c ∨ d)
a
b
c
d
Budget = 4
a
b
c
d
d-SAT vs Hitting Set
A cn algorithm for Hitting Set makes a c2n
algorithm for d-SAT.
Since 1.412n < 1.9999n, a 1.41n algorithm for
Hitting Set violates the SETH.
Have a
n
2 algorithm
and a 1.41n
lower bound.
n
Next: 2 lower bound
Hitting Set
For any fixed Ο΅ > 0, will reduce k-SAT with n
variables to Hitting Set with universe with at
most (1+πœ–)n elements.
So a 1.99n algorithm for Hitting Set gives a
1.99n(1+πœ–) ≤ 1.999n time algorithm for k-SAT
Some deep math
For every πœ– > 0 there exists a natural number g
such that, for t = g(1 + Ο΅) odd we have:
𝑑
𝑑
≥ 2𝑔
2
Why is this relevant?
d-SAT ≤ Hitting Set
Group the variables into groups of size g, and set
t = 𝑔(1 + Ο΅) odd .
𝑑
Solutiongbudget
g
Variables:
𝑑
Will force ≥
Elements:
t οƒ  Exactly
t
𝑑
2
2
2
g
from eachggroup
g
from each group
from each group
t
t
Elements ≤ (1 + Ο΅) ⋅ variables
t
Analyzing a group
Group of g variables
2g assignments to variables
Injection
𝑑
𝑑
2
subsets of elements of size
exactly
Group of t elements
𝑑
2
.
𝑑
Forcing solution 2 vertices
in a group?
Add all subsets of the group of size
𝑑
2
to the family F.
Lets call these sets guards
Any set that picks less than 𝑑 2
elements the group misses a guard.
Any set that picks at least 𝑑 2 elements from
each group hits all the guards
Analyzing a group
Group of g variables
assignments to variables
Injection
subsets of elements of size exactly
𝑑
2
.
Group of t elements
What about the element subsets of size 𝑑
do not correspond to assignments?
2
that
Sets of size
𝑑
2
Adding a set of size 𝑑 2 to the family F ensures
that the «group complement» set is not picked.
All other sets of size 𝑑
be picked in solution.
Forbid sets of size
to assignments.
𝑑
2
2
in the group may still
that do not correspond
d-SAT ≤ Hitting Set
Variables:
g
g
g
g
g
assignments
potential
solutions
Elements:
t
t
t
t
Want:
Solutions ↔ Satisfying assignments
t
Forbidding partial assignments
Pick any d groups of variables, and consider
some assignment to these variables.
If this assignment falsifies πœ“ we want to forbid
the corresponding set in the Hitting Set instance
from being selected.
Forbidding partial assignments
Bad assignment
Variables
…
…
Set added to F to forbid the bad assignment
Forbidding partial assignments
For each bad assignment to at most d groups,
forbid it by adding a «bad assignment guard»
This adds O(nd2gd) = O(nd) sets to F.
Satisfying Assignments ↔ Hitting Sets
A satisfying assignment has no bad
sub-assignments οƒ  corresponds to a hitting set.
A hitting set corresponds to an assignment.
If this assignment falsified a clause C, the
assignment would be bad for the ≤ d groups C
lives in, and miss a bad assignment guard.
Hitting Set wrap up
Can reduce n variable d-SAT to n(1+Ο΅) element
Hitting Set.
So a cn algorithm for Hitting Set yields a (c+πœ–)n
algorithm for d-SAT.
A 1.99n algorithm for Hitting Set would violate
SETH.
Conclusions
SETH can be used to give very tight running time
bounds.
SETH recently has been used to give lower
bounds for polynomial time solvable problems,
and for running time of approximation
algorithms.
Important Open Problems
Can we show a 2n lower bound for Set Cover
assuming SETH?
Can we show a 1.00001 lower bound for 3-SAT
assuming SETH?
Download