Title: Solving the Resolution-Free SAT Problem by Hyper-Unit Propagation in Linear Time
1Solving the Resolution-Free SAT Problemby
Hyper-Unit Propagation in Linear Time
- Gábor Kusper
- gkusper_at_risc.uni-linz.ac.at
- Research Institute for Symbolic Computation
(RISC-Linz) - Johannes Kepler University, Linz, Austria
- http//www.risc.uni-linz.ac.at/
2Outline
- Motivation
- Hyper-Unit Propagation
- Resolution-Free SAT Problem
- Unicorn-SAT Algorithm
- Example
- General-Unicorn-SAT Algorithm
- Conclusion
3Motivation
- Theorema, Prof. Buchbergerhttp//www.theorema.org
/ - A1, ..., An G
- A1, ..., An, ?G is unsatisfiable
4Unit Propagation
a ? b ? c ?a ? ?b ?a ? ?c ?a ? b ? c
a ? b ? c ?a ? ?b ?a ? ?c ?a ? b ? c
unit prop. by a
5Hyper-Unit Propagation
a ? b ? c ?a ? ?b ?a ? ?c ?a ? b ? c
a ? b ? c ?a ? ?b ?a ? ?c ?a ? b ? c
HUP by a ? b
- Hyper-Unit Prop. (HUP) by assignment A on S is
denoted by SA.
6Resolution
Resolution (tautologies are not allowed)
a ? ?b a ? b
?a ? b a ? c
Examples Resolution OK
b ? c
a
b ? ?b ? ?c
a ? b a ? c
?a ? b ? ?c a ? ?b ? ?c
Examples Resolution-Free
?a ? a ? ?c
?a ? ?b ? c ?a ? b ? ?c a ? ?b ? ?c a ? b ?
c
Tautologies!
Example Resolution-Free Clause Set
7Definition
- A clause set is resolution-free iff resolution
cannot be performed on any two clauses of the
clause set.
8L(C) Negation of a Resolution-Mate
a ? b ? c
Let C be
negate a literal
A Resolution-Mate of C
?a ? b ? c
a ? ?b ? c
a ? b ? ?c
These are clauses!
L(C) negate all but one literal
negate
A Sub-Model generated from C
a ? ?b ? ?c
?a ? b ? ?c
?a ? ?b ? c
These are assignments!
9Definition
- We obtain a resolution-mate of a clause by
negating one literal of it. - A sub-model generated from clause C is the
negation of a resolution-mate of C. It is denoted
by L(C). By definition L(?) ?. - L(C) is an assignment, ?L(C) is a clause.
- ?L(C) is a resolution-mate of clause C.
10Res.-Mate is not in S
- If S is resolution-free, ??S, C?S and B is a
resolution-mate of C. Then B?S. - Proof C resolves with B!
?a ? ?b ? c ?a ? b ? ?c a ? ?b ? ?c a ? b ?
c
?a ? b ? c
?a ? b ? c
11? is not in S afterSub-Model Propagation
- If S is resolution-free, ??S, C?S and C is
minimal (B ?L(C) ,i.e., B is a resolution-mate
of C). Then ??SL(C). - Proof Since C is minimal it suffices to show
that ?B ? S. It is known from the previous slide.
a resolution-mate
S is resolution-free
a sub-model
a ? ?b a ? ?b ? ?c ?a ? b ? ?c
minimal subsumed not subsumed
a ? b
?a ? ?b
a ? ?b ? c
?a ? b ? ?c
?a ? b ? c
a ? ?b ? ?c
12In Picture
START
input S
SA ??SA
S is resolution-free and ??S
HUP by A
LC A ?a ? b
Let A negation of B
B a ? ?b
if SA ? then M A
a ? b
Let B a res.-mate of C
Let C be a min. clause from S
C a ? b
END
13HUP Preserves Resolution-Free-ness
- If S is resolution-free and A is an assignment.
Then SA is resolution-free. - Proof Assume SA is not resolution-free. We
show that this contradict with S is
resolution-free.
SA
S
... y ... ?x ... ... ... ?y ... x ...
14Unicorn-SAT Algorithm
START
input S i 1
SAi is res.-free ??SAi
S SAi, i i1
S is resolution-free and ??S
HUP by Ai
Ai ?a ? b
Let Ai negation of B
B a ? ?b
if SAi ? then M A1?A2?...?Ai
a ? b
Let B a res.-mate of C
Let C be a min. clause from S
C a ? b
END
15Termination
- If S ? ?, ??S and C?S.Then SL(C)
- has fewer clauses than S and
- contains fewer variables than S.
- Proof Hyper-Unit propagation inherits this
property from unit propagation.
16Example
a ? b ? c a ? b ? ?d ? e a ? ?b ? ?c
? d a ? d ? ?e ?a ? b ? ?c ? d ?
e ?a ? ?b ? c ? ?d ? e ?a ? ?b ? ?c ? ?d ? ?e
b ? c ? d ? ?e
sub-model
?a ? ?b ? c
HUP
sub-mo.
?d ? e d ? ?e
d ? e
HUP
?a ? ?b ? c ? d ? e
17Time Complexity
variables n clauses m
O(nm)
Argument
HUP by Ai can be simulated by length(Ai) UP. If
we need k HUP then Summa(length(Ai), i1..k)
n. So we can simulate k HUP by n UP. Since UP
is O(m) time method Unicorn-SAT is O(nm).
18General-Unicorn-SAT Algorithm
if i 0 then unsatisfiable
satisfiable
if ??Si i i-1
i i1
if Si1 ?
if ??Si1 Si Si?res(C,?L(C)) Correct the
guess!
Si
Si1
if ??Si then Ai L(C), where C is a min.
clause form Si. Guess a solution!
if ??Si1 i i1
i i-1
START i 1, S0 S, A0 ?, Si Si-1Ai-1
19Conclusion
- DPLL like algorithms
- use unit propagation
- incrementally construct a solution
- General-Unicorn-SAT
- uses hyper-unit propagation
- guesses a sub-model correct it if necessary
20Thank you for your attention!