the strong exponential time hypothesis daniel lokshtnaov
TRANSCRIPT
The Strong Exponential Time Hypothesis
Daniel Lokshtnaov
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 dInput size nd
Fastest algorithm for 2-SAT: n+mFastest algorithm for 3-SAT: 1.31n
Fastest algorithm for 4-SAT: 1.47n
…Fastest algorithm for d-SAT:Fastest algorithm for SAT:
Strong ETH
Let d-SAT has a algorithm
Know: 0 Sd 1
ETH: s3 0 SETH: 1
Let
Showing Lower Bounds under SETH
Your ProblemToo fast algorithm?
d-SAT1.99999𝑛
The number of 9’s MUST be independent of d
Dominating Set
Input: n vertices, integer kQuestion: 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)
nk/10?
nk-1?
SAT k-Dominating SetVariables
SAT-formula
k groups, each onn/k variables.
One vertex for each of the 2n/k assignments to the variablesin the group.
x yx y x y x y x y
Variables
SAT-formula
k groups, each onn/k variables.
Selecting one vertex from eachcloud corrsponds to selectingan assignment to the variables.
Cliques
x yx y x y x y x y
Variables
SAT-formula
k groups, each onn/k variables.
One vertex per clause in the formula
Edge if the partial assignmentsatisfies the clause
SAT k-Dominating Setanalysis
Too fast algorithm for k-Dominating Set: nk-0.01
For any fixed k (like k=3)
The output graph has k2n/k + m 2k 2n/k vertices
If m 2n/k then 2n is at most mk, which is polynomial!
So m
≤(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 aa O(n4.99) algorithm for 5-Dominating Set, or a …… would violate SETH.
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 algorithmCan 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 t f t f t f t f
True
False
In independent set:
Not in solution:
first
Truethen
False
d-SAT Independent Setproof by example
= (a b c) (a c d) (b c d)
t f t f t f
t f t f t f
t f t f t f
t f t f t f
a
b
c
d
a c
b
a d
c
b d
c
Independent Sets Assignments
= (a b c) (a c d) (b c d)
t f t f t f
t f t f t f
t f t f t f
t f t f t f
a
b
c
d
a c
b
a d
c
b d
c
True
True
False
False
But what about the first true then false independent sets?
Dealing with truefalse
a
bc
d
Clausegadgets
1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
Every variable flips truefalse at most once!
Treewidth Boundby picture
t f t f t f
t f t f t f
t f t f t f
t f t f t f
a
b
c
d
a c
b
a d
c
b d
c
………
…
n
d
Formal proof - exercise
Independent Set / Treewidthwrap 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– …
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
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 time.
Next: implies that SETH fails
d-SAT Hitting Set
a
a
= (a b c) (a c d) (b c d)
b
b
c
c
d
dBudget = 4
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 2n algorithm and a 1.41n lower bound.
Next: 2n lower bound
Hitting Set
For any fixed , 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 there exists a natural number g such that, for t = we have:
( 𝑡
⌈ 𝑡2⌉ )≥2𝑔
Why is this relevant?
d-SAT Hitting SetGroup the variables into groups of size g, and set t =.
Variables: g g g g g
tt t t t
Elements (1 + ) variables
Elements:
Solution budget from each group
Will force from each group
Exactly from each group
Analyzing a group
Group of g variables
Group of t elements
2g assignments to variables
subsets of elements of sizeexactly .
Injection
Forcing solution vertices in a group?
Add all subsets of the group of size to the family F.
Any set that picks less than elements the group misses a guard.
Any set that picks at least elements from each group hits all the guards
Lets call these sets guards
Analyzing a groupGroup of g variables
Group of t elements
assignments to variables
subsets of elements of size exactly .
Injection
What about the element subsets of size thatdo not correspond to assignments?
Sets of size
Adding a set of size to the family F ensures that the «group complement» set is not picked.
All other sets of size in the group may still be picked in solution.
Forbid sets of size that do not correspond to assignments.
d-SAT Hitting Set
Variables: g g g g g
tt t t t
Elements:
potentialsolutions
assignments
Want:Solutions Satisfying assignments
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
Variables …
…
Bad assignment
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?
Exercises
Show that SETH implies ETH (Hint: use the sparsification lemma)
Exercise 4.16, 4.17, 4.18, 4.19.
Postdoc in Bergen?Much better than Budapest. Really.
Thank You