Conditional Lower Bounds for Failed Literals and Related Techniques
Matti Järvisalo Janne H. Korhonen*
- University of Helsinki, Department of Computer Science, and
Helsinki Institute for Information Technology HIIT
Conditional Lower Bounds for Failed Literals and Related Techniques - - PowerPoint PPT Presentation
Conditional Lower Bounds for Failed Literals and Related Techniques Matti Jrvisalo Janne H. Korhonen* University of Helsinki, Department of Computer Science, and Helsinki Institute for Information Technology HIIT 1.
Matti Järvisalo Janne H. Korhonen*
Helsinki Institute for Information Technology HIIT
formula simplification CNF formula “simpler” formula
CNF formula SAT/ UNSAT SAT solver formula simplification
CNF formula SAT/ UNSAT SAT solver formula simplification
CNF formula SAT/ UNSAT SAT solver formula simplification simplification techniques faster stronger
repeated application of unit resolution rule (¬ℓ1), (¬ℓ2), …, (¬ℓk) (ℓ)
(ℓ1∨…∨ℓk∨ℓ)
repeated application of unit resolution rule
for some ℓ’ ∈ F
(ℓ)
(¬ℓ1), (¬ℓ2), …, (¬ℓk) (ℓ1∨…∨ℓk∨ℓ)
Failed literal existence problem Input: CNF formula F Problem: Decide whether F has a failed literal
Failed literal existence problem Input: CNF formula F Problem: Decide whether F has a failed literal
O((n+m)2-ε) time on Horn-3-CNFs for some ε > 0, then CNF-SAT can be solved in time 2(1-ε/2)n poly(n,m)
most one unnegated variable
O((n+m)2-ε) time on Horn-3-CNFs for some ε > 0, then CNF-SAT can be solved in time 2(1-ε/2)n poly(n,m)
2(1-ε)n poly(n,m) for any ε > 0
lim inf {δ : k-SAT can be solved in time O(2δn)} = 1
n→∞
[Calabro, Impagliazzo, and Paturi 2009]
CNF-SAT with unrestricted clause length cannot be solved in time 2(1-ε)n poly(n,m) for any ε > 0
CNFs cannot be solved in time O((n+m)2-ε) for any ε > 0 unless SETH fails.
CNFs cannot be solved in time O((n+m)2-ε) for any ε > 0 unless SETH fails.
cannot solve
length clauses in time O(n2-ε)
[Pătraşcu and Williams 2010] [Abboud, Vassilevska Williams, and Weimann 2014]
O((n+m)2-ε) time on Horn-3-CNFs for some ε > 0, then CNF-SAT can be solved in time 2(1-ε/2)n poly(n,m)
Horn-3-CNF O((n+m)2-ε) failed literal / no failed literals n variables m clauses F
CNF formula 2(1-ε/2)n poly(n,m) F n variables m clauses SAT / UNSAT
CNF formula n variables m clauses F
CNF formula Reduction 2n/2 poly(n,m) N = 2n/2 poly(n,m) M = 2n/2 poly(n,m) n variables m clauses Horn-3-CNF F F’
CNF formula Reduction 2n/2 poly(n,m) O((N+M)2-ε) = 2(1-ε/2)n poly(n,m) N = 2n/2 poly(n,m) M = 2n/2 poly(n,m) n variables m clauses Horn-3-CNF failed literal / no failed literals F F’
CNF formula Reduction 2n/2 poly(n,m) O((N+M)2-ε) = 2(1-ε/2)n poly(n,m) SAT / UNSAT F N = 2n/2 poly(n,m) M = 2n/2 poly(n,m) n variables m clauses F’ Horn-3-CNF failed literal / no failed literals
CNF formula Reduction 2n/2 poly(n,m) O((N+M)2-ε) = 2(1-ε/2)n poly(n,m) SAT / UNSAT F N = 2n/2 poly(n,m) M = 2n/2 poly(n,m) n variables m clauses F’ Horn-3-CNF failed literal / no failed literals
n variables input formula F
n variables n/2 “upper” variables n/2 “lower” variables input formula F
n variables n/2 “upper” variables n/2 “lower” variables 2n/2 partial truth assignments P 2n/2 partial truth assignments Q input formula F
constructing the output formula F’ P Q ~ m clauses in F c1 c2 c3 … cm ~ 2n/2 partial truth assignments in Q ~ 2n/2 partial truth assignments in P yp yq
constructing the output formula F’ P Q c1 c2 c3 … cm yp yq add clause (yp → ci) if p(Ci) = 1
constructing the output formula F’ P Q yp yq add clause ((⋀i∈S ci)→ yq) where S = { i : q(Ci) ≠ 1 }
add clause (yp → ci) if p(Ci) = 1
constructing the output formula F’ P Q yp yq add clause ((⋀i∈S ci)→ yq) where S = { i : q(Ci) ≠ 1 }
add clause (yp → ci) if p(Ci) = 1 F∧(yp) ⊢up (yq) pq(F) = 1 if and only if
time O((n+m)2-ε)
O((n+m)2-ε)
O((n+m)2-ε)
if (F \ C)∧(¬ℓ1)∧…∧(¬ℓk) ⊢up (ℓ’), (¬ℓ’) for some ℓ’ ∈ F
F∧(ℓ) ⊢up (ℓ’) for some ℓ’ ∈ C \ {ℓ}