Resolution versus Search: Two Strategies for SAT

Resolution versus Search:
Two Strategies for SAT
I. Rish and R. Dechter
presented by Anya Tafliovich
Resolution versus Search:Two Strategies for SAT – p. 1
Jumping right in. . .
Resolution versus Search:Two Strategies for SAT – p. 2
Ordered Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
Resolution versus Search:Two Strategies for SAT – p. 3
Ordered Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
Resolution versus Search:Two Strategies for SAT – p. 3
Ordered Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
(BvCvD)
Resolution versus Search:Two Strategies for SAT – p. 3
Ordered Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
(BvCvD)
(CvD)
Resolution versus Search:Two Strategies for SAT – p. 3
Ordered Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
(BvCvD)
(CvD)
(D)
Resolution versus Search:Two Strategies for SAT – p. 3
Ordered Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
(BvCvD)
(CvD)
(D)
(E)
Resolution versus Search:Two Strategies for SAT – p. 3
Ordered Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
(BvCvD)
(CvD)
(D)
(E)
Resolution versus Search:Two Strategies for SAT – p. 3
Directed Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
bB = {(¬B ∨ D)}
bC = {(¬C), (C ∨ E)}
bD = {}
bE = {}
Resolution versus Search:Two Strategies for SAT – p. 4
Directed Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
(BvCvD)
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
bC = {(¬C), (C ∨ E)}
bD = {}
bE = {}
Resolution versus Search:Two Strategies for SAT – p. 4
Directed Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
(BvCvD)
(CvD)
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
bC = {(¬C), (C ∨ E), (C ∨ D)}
bD = {}
bE = {}
Resolution versus Search:Two Strategies for SAT – p. 4
Directed Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
(BvCvD)
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
(CvD)
(D)
bC = {(¬C), (C ∨ E), (C ∨ D)}
bD = {(D)}
bE = {}
Resolution versus Search:Two Strategies for SAT – p. 4
Directed Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
(BvCvD)
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
(CvD)
(D)
(E)
bC = {(¬C), (C ∨ E), (C ∨ D)}
bD = {(D)}
bE = {(E)}
Resolution versus Search:Two Strategies for SAT – p. 4
Directed Resolution
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
( A v B v C ) , ( ¬ A v D ), ( ¬ B v D ) , ( ¬ C ) , ( C v E )
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
(BvCvD)
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
(CvD)
(D)
(E)
bC = {(¬C), (C ∨ E), (C ∨ D)}
bD = {(D)}
bE = {(E)}
Eo1 (ψ) = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C),
(C ∨ E), (B ∨ C ∨ D), (C ∨ D), (D), (E)}
Resolution versus Search:Two Strategies for SAT – p. 4
Model finding
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
bC = {(¬C), (C ∨ E), (C ∨ D)}
bD = {(D)}
bE = {(E)}
Resolution versus Search:Two Strategies for SAT – p. 5
Model finding
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
bC = {(¬C), (C ∨ E), (C ∨ D)}
bD = {(D)}
bE = {(E)}
τ (E) = T
Resolution versus Search:Two Strategies for SAT – p. 5
Model finding
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
bC = {(¬C), (C ∨ E), (C ∨ D)}
bD = {(D)}
τ (D) = T
bE = {(E)}
τ (E) = T
Resolution versus Search:Two Strategies for SAT – p. 5
Model finding
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
bC = {(¬C), (C ∨ E), (C ∨ D)}
τ (C) = F
bD = {(D)}
τ (D) = T
bE = {(E)}
τ (E) = T
Resolution versus Search:Two Strategies for SAT – p. 5
Model finding
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
τ (B) = T /F
bC = {(¬C), (C ∨ E), (C ∨ D)}
τ (C) = F
bD = {(D)}
τ (D) = T
bE = {(E)}
τ (E) = T
Resolution versus Search:Two Strategies for SAT – p. 5
Model finding
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
τ (B) = F
bC = {(¬C), (C ∨ E), (C ∨ D)}
τ (C) = F
bD = {(D)}
τ (D) = T
bE = {(E)}
τ (E) = T
Resolution versus Search:Two Strategies for SAT – p. 5
Model finding
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
τ (A) = T
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
τ (B) = F
bC = {(¬C), (C ∨ E), (C ∨ D)}
τ (C) = F
bD = {(D)}
τ (D) = T
bE = {(E)}
τ (E) = T
Resolution versus Search:Two Strategies for SAT – p. 5
Model finding
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
τ (A) = T
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
τ (B) = F
bC = {(¬C), (C ∨ E), (C ∨ D)}
τ (C) = F
bD = {(D)}
τ (D) = T
bE = {(E)}
τ (E) = T
Resolution versus Search:Two Strategies for SAT – p. 5
DR - importance of orderings
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o2 : D > A > B > E > C
bD = {(¬A ∨ D), (¬B ∨ D)}
bA = {(A ∨ B ∨ C)}
bB = {}
bE = {(C ∨ D)}
bC = {(¬C)}
Resolution versus Search:Two Strategies for SAT – p. 6
DR - importance of orderings
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o2 : D > A > B > E > C
bD = {(¬A ∨ D), (¬B ∨ D)}
bA = {(A ∨ B ∨ C)}
bB = {}
bE = {(C ∨ D)}
bC = {(¬C)}
Eo2 (φ) = φ
Resolution versus Search:Two Strategies for SAT – p. 6
DR - importance of orderings
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o2 : D > A > B > E > C
bD = {(¬A ∨ D), (¬B ∨ D)}
τ (D) = T
bA = {(A ∨ B ∨ C)}
τ (A) = F
bB = {}
τ (B) = T
bE = {(C ∨ D)}
τ (E) = T
bC = {(¬C)}
τ (C) = F
Eo2 (φ) = φ
Resolution versus Search:Two Strategies for SAT – p. 6
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
o2 : D > A > B > E > C
G(φ) :
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
A
B
C
D
E
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
A
B
C
D
E
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
A
B
C
D
E
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
A
B
A
B
C
D
C
D
E
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
A
B
A
B
C
D
C
D
E
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
A
B
A
B
C
D
C
D
E
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
A
B
A
B
C
D
C
D
E
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
Io2 (G(φ)) :
A
B
A
B
C
D
C
D
E
E
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
Io2 (G(φ)) :
A
B
A
B
C
D
C
D
E
E
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
Io2 (G(φ)) :
A
B
A
B
C
D
C
D
E
E
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
Io2 (G(φ)) :
A
B
A
B
A
B
C
D
C
D
C
D
E
E
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
Io2 (G(φ)) :
A
B
A
B
A
B
C
D
C
D
C
D
E
E
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
Io2 (G(φ)) :
A
B
A
B
A
B
C
D
C
D
C
D
E
E
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
Io2 (G(φ)) :
A
B
A
B
A
B
C
D
C
D
C
D
E
E
E
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
Io2 (G(φ)) :
A
B
A
B
A
B
C
D
C
D
C
D
E
E
E
G(φ) = Io2 (G(φ)) ⊂ Io1 (G(φ))
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
G(φ) :
o2 : D > A > B > E > C
Io1 (G(φ)) :
Io2 (G(φ)) :
A
B
A
B
A
B
C
D
C
D
C
D
E
E
E
G(φ) = Io2 (G(φ)) ⊂ Io1 (G(φ))
In general, G(φ) ⊆ Io (G(φ)).
Resolution versus Search:Two Strategies for SAT – p. 7
Induced graph vs Extention graph
Eo1 (φ) = { (A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C),
(C ∨ E), (B ∨ C ∨ D), (C ∨ D), (D), (E)}
Io1 (G(φ)) :
G(Eo1 (φ)) :
A
B
A
B
C
D
C
D
E
E
G(Eo1 (φ)) ⊂ Io1 (G(φ))
Resolution versus Search:Two Strategies for SAT – p. 8
Induced graph vs Extention graph
Eo2 (φ) = φ
Io2 (G(φ)) :
G(Eo2 (φ)) :
A
B
A
B
C
D
C
D
E
E
G(Eo2 (φ)) = Io2 (G(φ))
Resolution versus Search:Two Strategies for SAT – p. 8
Induced graph vs Extention graph
In general, given an ordering o,
G(Eo (φ)) ⊆ Io (G(φ))
Resolution versus Search:Two Strategies for SAT – p. 8
Treewidth / Induced width
B
o1 : A > B > C > D > E
C
A
D
wo1 = 1
o2 : A > B > E > C > D
E
o3 : A > E > B > C > D
o4 : E > A > B > C > D
Resolution versus Search:Two Strategies for SAT – p. 9
Treewidth / Induced width
B
o1 : A > B > C > D > E
C
A
D
wo1 = 1
o2 : A > B > E > C > D
wo2 = 2
E
o3 : A > E > B > C > D
o4 : E > A > B > C > D
Resolution versus Search:Two Strategies for SAT – p. 9
Treewidth / Induced width
B
o1 : A > B > C > D > E
C
A
D
wo1 = 1
o2 : A > B > E > C > D
wo2 = 2
E
o3 : A > E > B > C > D
wo3 = 3
o4 : E > A > B > C > D
Resolution versus Search:Two Strategies for SAT – p. 9
Treewidth / Induced width
B
o1 : A > B > C > D > E
C
A
D
wo1 = 1
o2 : A > B > E > C > D
wo2 = 2
E
o3 : A > E > B > C > D
wo3 = 3
o4 : E > A > B > C > D
wo4 = 4
Resolution versus Search:Two Strategies for SAT – p. 9
Treewidth / Induced width
B
o1 : A > B > C > D > E
C
A
D
wo1 = 1
o2 : A > B > E > C > D
wo2 = 2
o3 : A > E > B > C > D
E
wo3 = 3
o4 : E > A > B > C > D
wo4 = 4
w∗ = argmin(wo ) = wo1 = 1
o
Resolution versus Search:Two Strategies for SAT – p. 9
Complexity of DR
DR is sound and complete.
Resolution versus Search:Two Strategies for SAT – p. 10
Complexity of DR
DR is sound and complete.
DR is O(n · |Eo (φ)|2 )
Resolution versus Search:Two Strategies for SAT – p. 10
Complexity of DR
DR is sound and complete.
DR is O(n · |Eo (φ)|2 )
Model-finding is O(|Eo (φ)|).
Resolution versus Search:Two Strategies for SAT – p. 10
Complexity of DR
DR is sound and complete.
DR is O(n · |Eo (φ)|2 )
Model-finding is O(|Eo (φ)|).
For var V with k parents in Io (G(φ)):
|bucketV | ≤ 2 · 3k ≤ 3k+1 in Eo (φ)
Resolution versus Search:Two Strategies for SAT – p. 10
Complexity of DR
DR is sound and complete.
DR is O(n · |Eo (φ)|2 )
Model-finding is O(|Eo (φ)|).
For var V with k parents in Io (G(φ)):
|bucketV | ≤ 2 · 3k ≤ 3k+1 in Eo (φ)
|Eo (φ)| ≤
∗
w
o
n · 3 +1
Resolution versus Search:Two Strategies for SAT – p. 10
Complexity of DR
DR is sound and complete.
DR is O(n · |Eo (φ)|2 )
Model-finding is O(|Eo (φ)|).
For var V with k parents in Io (G(φ)):
|bucketV | ≤ 2 · 3k ≤ 3k+1 in Eo (φ)
|Eo (φ)| ≤
DR is
∗
w
o
n · 3 +1
∗
w
o
O(n · 9 )
Resolution versus Search:Two Strategies for SAT – p. 10
Tractable problems
Theories with bounded w∗ are tractable.
Example: k -trees
Resolution versus Search:Two Strategies for SAT – p. 11
Tractable problems
Theories with bounded w∗ are tractable.
Example: k -trees
Resolution versus Search:Two Strategies for SAT – p. 11
Tractable problems
Theories with bounded w∗ are tractable.
Example: k -trees
Resolution versus Search:Two Strategies for SAT – p. 11
Tractable problems
Theories with bounded w∗ are tractable.
Example: k -trees
Resolution versus Search:Two Strategies for SAT – p. 11
Tractable problems
Theories with bounded w∗ are tractable.
Example: k -trees
Resolution versus Search:Two Strategies for SAT – p. 11
Tractable problems
Theories with bounded w∗ are tractable.
Example: k -trees
Resolution versus Search:Two Strategies for SAT – p. 11
Tractable problems
Theories with bounded w∗ are tractable.
Example: k -trees
2-tree =⇒ size < 27n
Resolution versus Search:Two Strategies for SAT – p. 11
Diversity
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
o2 : D > A > B > E > C
Resolution versus Search:Two Strategies for SAT – p. 12
Diversity
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
o2 : D > A > B > E > C
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
divo1 (A) = 1 × 1 = 1
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
divo1 (B) = 1 × 1 = 1
bC = {(¬C), (C ∨ E), (C ∨ D)}
divo1 (C) = 1 × 2 = 2
bD = {(D)}
divo1 (D) = 1 × 0 = 0
bE = {(E)}
divo1 (E) = 1 × 0 = 0
Resolution versus Search:Two Strategies for SAT – p. 12
Diversity
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
o2 : D > A > B > E > C
bA = {(A ∨ B ∨ C), (¬A ∨ D)}
divo1 (A) = 1 × 1 = 1
bB = {(¬B ∨ D), (B ∨ C ∨ D)}
divo1 (B) = 1 × 1 = 1
bC = {(¬C), (C ∨ E), (C ∨ D)}
divo1 (C) = 1 × 2 = 2
bD = {(D)}
divo1 (D) = 1 × 0 = 0
bE = {(E)}
divo1 (E) = 1 × 0 = 0
divo1 (φ) = argmax divo1 (V ) = divo1 (C) = 2
V
Resolution versus Search:Two Strategies for SAT – p. 12
Diversity
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
o2 : D > A > B > E > C
bD = {(¬A ∨ D), (¬B ∨ D)}
divo2 (D) = 0
bA = {(A ∨ B ∨ C)}
divo2 (A) = 0
bB = {}
divo2 (B) = 0
bE = {(C ∨ D)}
divo2 (E) = 0
bC = {(¬C)}
divo2 (C) = 0
Resolution versus Search:Two Strategies for SAT – p. 12
Diversity
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o1 : A > B > C > D > E
o2 : D > A > B > E > C
bD = {(¬A ∨ D), (¬B ∨ D)}
divo2 (D) = 0
bA = {(A ∨ B ∨ C)}
divo2 (A) = 0
bB = {}
divo2 (B) = 0
bE = {(C ∨ D)}
divo2 (E) = 0
bC = {(¬C)}
divo2 (C) = 0
divo1 (φ) = 0
Resolution versus Search:Two Strategies for SAT – p. 12
Diversity vs Width
φ = { (A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D), (¬G ∨ B),}
(G ∨ ¬C), (¬F ∨ E ∨ ¬C), (F ∨ E ∨ D)
o:A>B>C>D>E>F >G
Resolution versus Search:Two Strategies for SAT – p. 13
Diversity vs Width
φ = { (A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D), (¬G ∨ B),}
(G ∨ ¬C), (¬F ∨ E ∨ ¬C), (F ∨ E ∨ D)
o:A>B>C>D>E>F >G
bA = {(A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D)}
bB = {(¬G ∨ B)}
bC = {(G ∨ ¬C), (¬F ∨ E ∨ ¬C)}
bD = {(F ∨ E ∨ D)}
bE = bF = bG = {}
Resolution versus Search:Two Strategies for SAT – p. 13
Diversity vs Width
φ = { (A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D), (¬G ∨ B),}
(G ∨ ¬C), (¬F ∨ E ∨ ¬C), (F ∨ E ∨ D)
o:A>B>C>D>E>F >G
bA = {(A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D)}
bB = {(¬G ∨ B)}
bC = {(G ∨ ¬C), (¬F ∨ E ∨ ¬C)}
bD = {(F ∨ E ∨ D)}
bE = bF = bG = {}
divo (φ) = 0
Resolution versus Search:Two Strategies for SAT – p. 13
Diversity vs Width
φ = { (A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D), (¬G ∨ B),}
(G ∨ ¬C), (¬F ∨ E ∨ ¬C), (F ∨ E ∨ D)
o:A>B>C>D>E>F >G
Io (G(φ)) :
bA = {(A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D)}
D
bB = {(¬G ∨ B)}
A
E
B
F
bC = {(G ∨ ¬C), (¬F ∨ E ∨ ¬C)}
bD = {(F ∨ E ∨ D)}
bE = bF = bG = {}
C
G
divo (φ) = 0
Resolution versus Search:Two Strategies for SAT – p. 13
Diversity vs Width
φ = { (A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D), (¬G ∨ B),}
(G ∨ ¬C), (¬F ∨ E ∨ ¬C), (F ∨ E ∨ D)
o:A>B>C>D>E>F >G
Io (G(φ)) :
bA = {(A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D)}
D
bB = {(¬G ∨ B)}
A
E
B
F
bC = {(G ∨ ¬C), (¬F ∨ E ∨ ¬C)}
bD = {(F ∨ E ∨ D)}
bE = bF = bG = {}
C
G
divo (φ) = 0
Resolution versus Search:Two Strategies for SAT – p. 13
Diversity vs Width
φ = { (A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D), (¬G ∨ B),}
(G ∨ ¬C), (¬F ∨ E ∨ ¬C), (F ∨ E ∨ D)
o:A>B>C>D>E>F >G
Io (G(φ)) :
bA = {(A ∨ C ∨ ¬B), (A ∨ ¬B ∨ D)}
D
bB = {(¬G ∨ B)}
A
E
B
F
bC = {(G ∨ ¬C), (¬F ∨ E ∨ ¬C)}
bD = {(F ∨ E ∨ D)}
bE = bF = bG = {}
divo (φ) = 0
C
G
w(Io (G(φ))) = w(C) = 4
|Eo (φ)| ≤ 243
Resolution versus Search:Two Strategies for SAT – p. 13
Complexity of DR
|Eo (φ)| ≤ |φ| + n · divo (Eo (φ))
Resolution versus Search:Two Strategies for SAT – p. 14
Complexity of DR
|Eo (φ)| ≤ |φ| + n · divo (Eo (φ))
not useful in general
divo (φ) ≤ 1 =⇒ φ is tractable
Resolution versus Search:Two Strategies for SAT – p. 14
Computing an optimal ordering
Want an ordering that induces
Resolution versus Search:Two Strategies for SAT – p. 15
Computing an optimal ordering
Want an ordering that induces
minimum width
minimum diversity
Resolution versus Search:Two Strategies for SAT – p. 15
Computing an optimal ordering
Want an ordering that induces
minimum width
minimum diversity
NP-complete for both
Resolution versus Search:Two Strategies for SAT – p. 15
Computing an ordering - heuristics
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o:
Resolution versus Search:Two Strategies for SAT – p. 16
Computing an ordering - heuristics
{(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C)}
o:E
bE = {(C ∨ E)}
Resolution versus Search:Two Strategies for SAT – p. 16
Computing an ordering - heuristics
{(A ∨ B ∨ C), (¬C)}
o:E>D
bE = {(C ∨ E)}
bD = {(¬A ∨ D), (¬B ∨ D)}
Resolution versus Search:Two Strategies for SAT – p. 16
Computing an ordering - heuristics
{(¬C)}
o:E>D>A
bE = {(C ∨ E)}
bD = {(¬A ∨ D), (¬B ∨ D)}
bA = {(A ∨ B ∨ C)}
Resolution versus Search:Two Strategies for SAT – p. 16
Computing an ordering - heuristics
{(¬C)}
o:E>D>A>B
bE = {(C ∨ E)}
bD = {(¬A ∨ D), (¬B ∨ D)}
bA = {(A ∨ B ∨ C)}
bB = {}
Resolution versus Search:Two Strategies for SAT – p. 16
Computing an ordering - heuristics
φ = {}
o:E>D>A>B>C
bE = {(C ∨ E)}
bD = {(¬A ∨ D), (¬B ∨ D)}
bA = {(A ∨ B ∨ C)}
bB = {}
bC = {(¬C)}
Resolution versus Search:Two Strategies for SAT – p. 16
Computing an ordering - heuristics
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o:E>D>A>B>C
bE = {(C ∨ E)}
bD = {(¬A ∨ D), (¬B ∨ D)}
bA = {(A ∨ B ∨ C)}
bB = {}
bC = {(¬C)}
divo (φ) = 0
Resolution versus Search:Two Strategies for SAT – p. 16
Computing an ordering - heuristics
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o:E>D>A>B>C
bE = {(C ∨ E)}
bD = {(¬A ∨ D), (¬B ∨ D)}
bA = {(A ∨ B ∨ C)}
bB = {}
bC = {(¬C)}
divo (φ) = 0
A 0-diversity ordering can always be found in O(n2 · c)
Resolution versus Search:Two Strategies for SAT – p. 16
Computing an ordering - heuristics
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o:
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 17
Computing an ordering - heuristics
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o:E
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 17
Computing an ordering - heuristics
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o:E>D
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 17
Computing an ordering - heuristics
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o:E>D>A
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 17
Computing an ordering - heuristics
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o:E>D>A>B
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 17
Computing an ordering - heuristics
φ = {(A ∨ B ∨ C), (¬A ∨ D), (¬B ∨ D), (¬C), (C ∨ E)}
o:E>D>A>B>C
A
B
C
D
E
Resolution versus Search:Two Strategies for SAT – p. 17
DP vs DR
uniform k -CNF
random chains
(k, m)-trees
Resolution versus Search:Two Strategies for SAT – p. 18
DP vs DR
uniform k -CNF
DP outperforms DR
random chains
(k, m)-trees
Resolution versus Search:Two Strategies for SAT – p. 18
DP vs DR
uniform k -CNF
DP outperforms DR
random chains
DR outperforms DP
(k, m)-trees
Resolution versus Search:Two Strategies for SAT – p. 18
DP vs DR
uniform k -CNF
DP outperforms DR
random chains
DR outperforms DP
width < 2n − 1
(k, m)-trees
Resolution versus Search:Two Strategies for SAT – p. 18
DP vs DR
uniform k -CNF
DP outperforms DR
random chains
DR outperforms DP
width < 2n − 1
(k, m)-trees
DR outperforms DP
Resolution versus Search:Two Strategies for SAT – p. 18
DP vs DR
uniform k -CNF
DP outperforms DR
random chains
DR outperforms DP
width < 2n − 1
(k, m)-trees
DR outperforms DP
width < k + m
Resolution versus Search:Two Strategies for SAT – p. 18
Discussion
Resolution versus Search:Two Strategies for SAT – p. 19