Satisifiability and
Probabilistic Satisifiability
Marcelo Finger
Department of Computer Science Instituto de Matem´atica e Estat´ıstica
Universidade de S˜ao Paulo
2010
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Topics
1 Introduction
2 SAT
Empirical Properties
3 Probabilistic Satisfiability
4 A Brief History of PSAT
5 Canonical Reduction of PSAT to SAT
6 PSAT via Logic
7 Conclusions and Conjectures
Are they all saying the truth?
Every night, at least two of them are at the table Each says he comes “only” 60% of the nights
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Next Topic
1 Introduction
2 SAT
Empirical Properties
3 Probabilistic Satisfiability
4 A Brief History of PSAT
5 Canonical Reduction of PSAT to SAT
6 PSAT via Logic
7 Conclusions and Conjectures
The SAT Problem
The Centrality of SAT
Satisfiability is a central problem in Computer Science Both theoreticaland practicalinterests
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The SAT Problem
The Centrality of SAT
Satisfiability is a central problem in Computer Science Both theoreticaland practicalinterests
SAT was the 1st NP-complete problem
The SAT Problem
The Centrality of SAT
Satisfiability is a central problem in Computer Science Both theoreticaland practicalinterests
SAT was the 1st NP-complete problem SAT received a lot of attention [1960-now]
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The SAT Problem
The Centrality of SAT
Satisfiability is a central problem in Computer Science Both theoreticaland practicalinterests
SAT was the 1st NP-complete problem SAT received a lot of attention [1960-now]
SAT has very efficient implementations
The SAT Problem
The Centrality of SAT
Satisfiability is a central problem in Computer Science Both theoreticaland practicalinterests
SAT was the 1st NP-complete problem SAT received a lot of attention [1960-now]
SAT has very efficient implementations
SAT has become the “assembly language” of hard-problems
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The SAT Problem
The Centrality of SAT
Satisfiability is a central problem in Computer Science Both theoreticaland practicalinterests
SAT was the 1st NP-complete problem SAT received a lot of attention [1960-now]
SAT has very efficient implementations
SAT has become the “assembly language” of hard-problems SAT is logic
The PSAT Problem
Probabilistic satisfiability (PSAT) was proposed by [Boole 1854]
On the Laws of Thought Classical probability
No assumption of a priori statistical independence Rediscovered several times since Boole
PSAT is also NP-complete
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The PSAT Problem
Probabilistic satisfiability (PSAT) was proposed by [Boole 1854]
On the Laws of Thought Classical probability
No assumption of a priori statistical independence Rediscovered several times since Boole
PSAT is also NP-complete
But PSAT seems to be more complex than SAT Why?
Applications of SAT
SAT has “good” implementations SAT has many applications
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Applications of SAT
SAT has “good” implementations SAT has many applications
Planning: SatPlan Answer Set Programming Integer Programming
Map colouring, combinatorial problems Optimisation problems
etc
NP-complete problems reduced to SAT
Potential Applications of PSAT
SAT has many potential applications
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Potential Applications of PSAT
SAT has many potential applications Computer models of biological processes Machine learning
Fault tolerance
Software design and analysis.
Economics, econometrics, etc.
But there are no practical algorithms for PSAT
Next Topic
1 Introduction
2 SAT
Empirical Properties
3 Probabilistic Satisfiability
4 A Brief History of PSAT
5 Canonical Reduction of PSAT to SAT
6 PSAT via Logic
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The Setting: the language
Atoms: P ={p1, . . . ,pn} Literals: pi and¬pj
¯
p =¬p,¬p =p
A clause is a set of literals. Ex: {p,¯q,r}or p∨ ¬q∨r A formula C is a set of clauses
The Setting: semantics
Valuation for atoms v :P → {0,1}
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The Setting: semantics
Valuation for atoms v :P → {0,1}
An atomp is satisfiedif v(p) = 1
The Setting: semantics
Valuation for atoms v :P → {0,1}
An atomp is satisfiedif v(p) = 1 Valuations are extended to all formulas
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The Setting: semantics
Valuation for atoms v :P → {0,1}
An atomp is satisfiedif v(p) = 1 Valuations are extended to all formulas v(¯λ) = 1⇔v(λ) = 0
The Setting: semantics
Valuation for atoms v :P → {0,1}
An atomp is satisfiedif v(p) = 1 Valuations are extended to all formulas v(¯λ) = 1⇔v(λ) = 0
A clause c is satisfied (v(c) = 1) ifsomeliteral λ∈c is satisfied
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The Setting: semantics
Valuation for atoms v :P → {0,1}
An atomp is satisfiedif v(p) = 1 Valuations are extended to all formulas v(¯λ) = 1⇔v(λ) = 0
A clause c is satisfied (v(c) = 1) ifsomeliteral λ∈c is satisfied
A formula C is satisfied (v(C) = 1) ifallclauses in C are satisfied
The Problem
A formula C is satisfiable if exitsv,v(C) = 1.
Otherwise, C is unsatisfiable
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The Problem
A formula C is satisfiable if exitsv,v(C) = 1.
Otherwise, C is unsatisfiable The SAT Problem
Given a formulaC, decide ifC is satisfiable.
Witnesses: IfC is satisfiable, provide a v such that v(C) = 1.
The Problem
A formula C is satisfiable if exitsv,v(C) = 1.
Otherwise, C is unsatisfiable The SAT Problem
Given a formulaC, decide ifC is satisfiable.
Witnesses: IfC is satisfiable, provide a v such that v(C) = 1.
SAT has small witnesses
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
An NP Algorithm for SAT
NP-SAT(C)
Input: C, a formula in clausal form Output: v, ifv(C) = 1; no, otherwise.
1: Guess a v
2: Show, in polynomial time, that v(C) = 1
3: returnv
4: if no suchv is guessablethen
5: returnno
6: end if
A Na¨ıve SAT Solver
NaiveSAT(C)
Input: C, a formula in clausal form Output: v, ifv(C) = 1; no, otherwise.
1: for every valuationv overp1, . . . ,pn do
2: if v(C) = 1 then
3: returnv
4: end if
5: end for
6: returnno
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions Empirical
Next Topic
1 Introduction
2 SAT
Empirical Properties
3 Probabilistic Satisfiability
4 A Brief History of PSAT
5 Canonical Reduction of PSAT to SAT
6 PSAT via Logic
7 Conclusions and Conjectures
The SAT Phase Transition
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions Empirical
The Phase Transition Diagram
3-SAT, N is fixed
Higher N, more abrupt transition M/N: low (SAT); high (UNSAT)
Phase transition point: M/N≈4.3, 50%SAT [Toby & Walsh 1994]
Invariant withN
Invariant with algorithm!
The Phase Transition Diagram
3-SAT, N is fixed
Higher N, more abrupt transition M/N: low (SAT); high (UNSAT)
Phase transition point: M/N≈4.3, 50%SAT [Toby & Walsh 1994]
Invariant withN
Invariant with algorithm!
No theoretical explanation
There is another phase-transition for SAT based on
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Next Topic
1 Introduction
2 SAT
Empirical Properties
3 Probabilistic Satisfiability
4 A Brief History of PSAT
5 Canonical Reduction of PSAT to SAT
6 PSAT via Logic
7 Conclusions and Conjectures
Why PSAT?
3 forms of reasoning (According to Peirce) Deductive reasoning
Inductive reasoning Abductive reasoning
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Why PSAT?
3 forms of reasoning (According to Peirce) Deductive reasoning
Probabilisticreasoning Abductive reasoning
Why PSAT?
3 forms of reasoning (According to Peirce) Deductive reasoning
Probabilisticreasoning Abductive reasoning PSAT is at the intersection
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The Setting: the language
Logical variables or atoms: P ={x1, . . . ,xn} Connectives: ∧,∨,¬,→,↔.
Formulas (L) are inductively composed form atoms using connectives
Formulas can be brought to clausal form, but need not be.
Basics
Propositional valuation v :P → {0,1}
Generalised for any propositional formula (clausal or not) v :L → {0,1}
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Basics
Propositional valuation v :P → {0,1}
Generalised for any propositional formula (clausal or not) v :L → {0,1}
A probability distribution over propositional valuations π:V →[0,1]
2n
X
i=1
π(vi) = 1
Basics
Propositional valuation v :P → {0,1}
Generalised for any propositional formula (clausal or not) v :L → {0,1}
A probability distribution over propositional valuations π:V →[0,1]
2n
X
i=1
π(vi) = 1 Probability of a formulaα according to π
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Kolmogorov Axioms for Probability
α, β∈ L
(K1) 0≤P(α)≤1 (K2) P(⊤) = 1
(K3) If|=¬(α∧β) then P(α∨β) =P(α) +P(β)
Kolmogorov Axioms for Probability
α, β∈ L
(K1) 0≤P(α)≤1 (K2) P(⊤) = 1
(K3) If|=¬(α∧β) then P(α∨β) =P(α) +P(β) From which we can derive:
(K4) P(¬α) = 1−P(α)
(K5) Ifα|=β thenP(α)≤P(β) (K6) Ifα≡β thenP(α) =P(β)
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The PSAT Problem
Considerk formulasα1, . . . , αk defined onn atoms {x1, . . . ,xn}
A PSAT problem Σ is a set of k restrictions Σ ={P(αi) =pi|1≤i ≤k}
Probabilistic Satisfiability: are these restrictions consistent?
A PSAT example
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
A PSAT example
Σ =
P(a∨b) =P(a∨c) =P(b∨c) = 1 P(a) =P(b) =P(c) = 0.6
The PSAT Problem: An Algebraic Formalisation
Vector of probabilities p of dimensionk×1 (given) Consider a “large” matrix Ak×2n = [aij] (computed)
aij =vj(αi)∈ {0,1}
PSAT: decide if there is vector πof dimension 2n×1 such that Aπ = p
Pπi = 1
π ≥ 0
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Next Topic
1 Introduction
2 SAT
Empirical Properties
3 Probabilistic Satisfiability
4 A Brief History of PSAT
5 Canonical Reduction of PSAT to SAT
6 PSAT via Logic
7 Conclusions and Conjectures
The PSAT Problem
Probabilistic satisfiability (PSAT) was proposed in On the Laws of Thought[Boole 1854]
Classical probability
No assumption of a priori statistical independence Rediscovered several times since Boole
Hailperin 1965 De Finetti 1937, 1974
Nilsson 1986, (re)introduces PSAT to AI
and many others (see [Hansen & Jaumard 1996])
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Potential Applications of PSAT
PSAT has many potential applications
Potential Applications of PSAT
PSAT has many potential applications Computer models of biological processes Machine learning
Fault tolerance.
Software design and analysis.
Economics, econometrics, etc.
But there are no practical algorithms for PSAT
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
PSAT is NP-complete
PSAT is NP-complete: [Georgakopoulos & Kavvadias &
Papadimitriou 1988]
A PSAT problem has a solution, then there is a solution π with at mostk+ 1 elementsπi >0
Carath´eodory’s Lemma
So PSAT has a polynomial size witness
1 · · · 1
0/1 · · · 0/1 ... . .. ...
0/1 · · · 0/1
·
π1 π2
... πk+1
=
1 p1
... pk
PSAT is NP-complete
PSAT is NP-complete: [Georgakopoulos & Kavvadias &
Papadimitriou 1988]
A PSAT problem has a solution, then there is a solution π with at mostk+ 1 elementsπi >0
Carath´eodory’s Lemma
So PSAT has a polynomial size witness
1 · · · 1
0/1 · · · 0/1 ... . .. ...
·
π1 π2
...
=
1 p1
...
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Existing Algorithms for PSAT
All algorithms are algebraic
Try to solve an exponential linear program Column generation heuristics
Easy cases: quickly generates witness (k≈300)
Hard cases: solves aweighted MAXSAT instance at each step weighted MAXSAT is a “hard” NP-complete problem
Existing Algorithms for PSAT
All algorithms are algebraic
Try to solve an exponential linear program Column generation heuristics
Easy cases: quickly generates witness (k≈300)
Hard cases: solves aweighted MAXSAT instance at each step weighted MAXSAT is a “hard” NP-complete problem
No phase-transition observed
[Kavvadias-Papadimitriou 1990, Hansen-Jaumard 1997]
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Idea
Goal:
Obtain a “decent” algorithm for PSAT Study its empiric properties
Both SAT and PSAT are NP-complete problems SAT has good implementations
Idea
Goal:
Obtain a “decent” algorithm for PSAT Study its empiric properties
Both SAT and PSAT are NP-complete problems SAT has good implementations
Let’s reduce PSAT to SAT.
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Next Topic
1 Introduction
2 SAT
Empirical Properties
3 Probabilistic Satisfiability
4 A Brief History of PSAT
5 Canonical Reduction of PSAT to SAT
6 PSAT via Logic
7 Conclusions and Conjectures
Canonical Reductions
A reductiontransforms an instance of PSAT into one of SAT One such reduction in polynomial time exists, due to
NP-completeness
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Canonical Reductions
A reductiontransforms an instance of PSAT into one of SAT One such reduction in polynomial time exists, due to
NP-completeness
A reduction iscanonical if it encodes an NP-witness Easier if witness has a simple format
Normal forms simplify the study of complex objects
A PSAT Normal Form
PSAT atomic normal formΣ = (Γ,Ψ) Γ is a SAT problem, ie{α|P(α) = 1}
Ψ ={P(xi) =pi|xi is an atom}
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
A PSAT Normal Form
PSAT atomic normal formΣ = (Γ,Ψ) Γ is a SAT problem, ie{α|P(α) = 1}
Ψ ={P(xi) =pi|xi is an atom}
Theorem
Every PSAT problem has an equivalent atomic normal form, that can be computed in linear time.
That PSAT example is already normal form!
Γ =
a∨b a∨c
Ψ ={P(a) =P(b) =P(c) = 0.6}
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
A Second Example
Σ =
P(a∨b∨c) = 1
P(a∧b) = 0.61;P(a∧c) = 0.60;P(b∧c) = 0.59
Can be put in normal form (Γ,Ψ)
Γ =
¯
x∨a ¯y∨a ¯z∨b a∨b∨c
¯
x∨b ¯y∨c ¯z∨c
¯
a∨¯b∨x ¯a∨¯c∨y ¯b∨¯c∨z
Ψ ={P(x) = 0.61;P(y) = 0.60;P(z) = 0.59}
Algebraic Notation
An×m is a matrix of n lines by mcolumns.
Aj is the j-th column of matrix A Let p be a vector of dimension n.
A[j :=p] is obtained fromAby replacingAj withp IfA is a square matrix,|A|isA’s determinant IfA·x =b then, by Cramer’s Rule
xj = |A[j :=b]|
|A|
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Properties of Atomic Normal Form
(Γ,Ψ) has a solution iff there isA= [ai,j] and π satisfying
1 · · · 1 a1,1 · · · a1,k+1
... . .. ... ak,1 · · · ak,k+1
·
π1 π2 ... πk+1
=
1 p1
... pk
ai,j ∈ {0,1} πj ≥0
(1)
Ifπj >0 thenAj is a valuation satisfying Γ.
Second Example – Part II
Γ =
¯
x∨a ¯y∨a ¯z∨b a∨b∨c
¯
x∨b ¯y∨c ¯z∨c
¯
a∨¯b∨x ¯a∨¯c∨y ¯b∨¯c∨z
Ψ ={P(x) = 0.61;P(y) = 0.60;P(z) = 0.59}
is P-satisfiable because
x y z
1 1 1 1 1 1 0 0 1 0 1 0 1 0 0 1
·
0.4 0.21
0.2 0.19
=
1 0.61 0.60 0.59
a 1 1 1 0
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
The Canonical Reduction
Canonical reduction direct encoding of the solution A·π=p of the normal form (Γ,Ψ).
Γ(x1, . . . ,xk;y1, . . .yl) Ψ ={P(xi) =pi}
Aj = [1 a1,j · · · ak,j]t, so Γ(a1,j, . . . ,ak,j;y1j, . . .ylj) must hold Each πi is encoded as a sequence of b bits
Each pi is encoded as a sequence of b+k bits Direct encoding of sums of bits
Direct encoding of bit product as a conjunction Number of variables isO(b·k2)
The Canonical Reduction
Canonical reduction direct encoding of the solution A·π=p of the normal form (Γ,Ψ).
Γ(x1, . . . ,xk;y1, . . .yl) Ψ ={P(xi) =pi}
Aj = [1 a1,j · · · ak,j]t, so Γ(a1,j, . . . ,ak,j;y1j, . . .ylj) must hold Each πi is encoded as a sequence of b bits
Each pi is encoded as a sequence of b+k bits Direct encoding of sums of bits
Direct encoding of bit product as a conjunction Number of variables isO(b·k2)
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Number of Bits in the Canonical Reduction
Cramer’s Rule xj = |A[j|A|:=b]|
Number of Bits in the Canonical Reduction
Cramer’s Rule xj = |A[j|A|:=b]|
Theorem (Hadamard’s Maximum Determinant Problem 1893)
Let A= [aij]n×n, aij ∈ {0,1}. Then
|A| ≤ (n+ 1)(n+1)/2 2n
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Number of Bits in the Canonical Reduction
Cramer’s Rule xj = |A[j|A|:=b]|
Theorem (Hadamard’s Maximum Determinant Problem 1893)
Let A= [aij]n×n, aij ∈ {0,1}. Then
|A| ≤ (n+ 1)(n+1)/2 2n b = (k+1)2 ⌈log(k+ 1)⌉ −k
Number of variables in the canonical reduction isO(k3·logk)
Number of Bits in the Canonical Reduction
Cramer’s Rule xj = |A[j|A|:=b]|
Theorem (Hadamard’s Maximum Determinant Problem 1893)
Let A= [aij]n×n, aij ∈ {0,1}. Then
|A| ≤ (n+ 1)(n+1)/2 2n b = (k+1)2 ⌈log(k+ 1)⌉ −k
Number of variables in the canonical reduction is (k3·logk)
EC AA !
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Implementation
A canonical reduction of PSAT to SAT n = 80 variables
k = 5, b= 10
52 hours to compute!
Implementation
A canonical reduction of PSAT to SAT n = 80 variables
k = 5, b= 10
52 hours to compute! ECAA!
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Implementation
A canonical reduction of PSAT to SAT n = 80 variables
k = 5, b= 10
52 hours to compute! ECAA!
Phase-transition found for PSAT
Implementation
A canonical reduction of PSAT to SAT n = 80 variables
k = 5, b= 10
52 hours to compute! ECAA!
Phase-transition found for PSATYippie!
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
PSAT Phase Transition
Lessons Learned So Far
Canonical reduction in nota “decent” implementation of a PSAT-solver
A “decent” one may not exits
There may not exist a linear reduction of PSAT to SAT PSAT may be more complex than SAT
even if P=NP or not
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
What to do now?
Explore other reduction strategies Explore other forms of reductions
Turing reduction: an algorithm that invokes a polynomial number of SAT problems
Turing reductions explore properties of PSAT problems We are going to explore some logical properties of PSAT
Next Topic
1 Introduction
2 SAT
Empirical Properties
3 Probabilistic Satisfiability
4 A Brief History of PSAT
5 Canonical Reduction of PSAT to SAT
6 PSAT via Logic
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Probabilistic Entailment
Normal form problem (Γ,Ψ) Ψ|≈α iff ({¬α},Ψ) is P-UNSAT Intuition: Ψ forces P(α)>0
Probabilistic Entailment
Normal form problem (Γ,Ψ) Ψ|≈α iff ({¬α},Ψ) is P-UNSAT Intuition: Ψ forces P(α)>0
Theorem (PSAT Logic-Algebraic Characterization) The following are equivalent:
(Γ,Ψ)is P-satisfiable
∃ A, π such that A·π=p, aij∈ {0,1},π≥0, vAj(Γ) = 1
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Partial Solutions
A partial solution (A, π),
A·π =p, π≥0, aij ∈ {0,1}
Allowed: Aj such thatvAj(Γ) = 0
A partial solution always exists (relaxedsolution)
1 · · · 1
0 . .. ...
... . .. . .. ...
0 · · · 0 1
·
π1
π2 ... πk+1
=
1 p1
... pk
Second Example – Part III
Γ =
¯
x∨a ¯y∨a ¯z∨b a∨b∨c
¯
x∨b ¯y∨c ¯z∨c
¯
a∨¯b∨x ¯a∨¯c∨y ¯b∨¯c∨z
Ψ ={P(x) = 0.61;P(y) = 0.60;P(z) = 0.59}
The relaxed solution is
x y z
1 1 1 1
0 1 1 1
0 0 1 1
0 0 0 1
·
0.39 0.01 0.01 0.59
=
1 0.61 0.60 0.59
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
New PSAT Algorithm
1 Input: (Γ,Ψ)
2 Start with a relaxed solution
3 Transform partial solution into partial solution
4 Until either a solution is found, or (Γ,Ψ) is proven P-UNSAT.
New PSAT Algorithm
1 Input: (Γ,Ψ)
2 Start with a relaxed solution
3 Transform partial solution into partial solution
4 Until either a solution is found, or (Γ,Ψ) is proven P-UNSAT.
Transformation is by finding formulas α,ψ|≈α Submit Γ∪ {α} to SAT solver.
if UNSAT, (Γ,Ψ) is P-UNSAT
else, takev(Γ∪ {α}) = 1 and substitute one column of partial solution with it
This can always be done so as to obtain a new partial solution
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
New PSAT Algorithm
1 Input: (Γ,Ψ)
2 Start with a relaxed solution
3 Transform partial solution into partial solution
4 Until either a solution is found, or (Γ,Ψ) is proven P-UNSAT.
Transformation is by finding formulas α,ψ|≈α Submit Γ∪ {α} to SAT solver.
if UNSAT, (Γ,Ψ) is P-UNSAT
else, takev(Γ∪ {α}) = 1 and substitute one column of partial solution with it
This can always be done so as to obtain a new partial solution 2 Problems:
How to compute conditionα
Second Example – Part IV
Choose a columnj, replace it with [1 x1 · · · xk]t
A′=
1 1 1 1
0 1 x 1
0 0 y 1
0 0 z 1
Cramer’s:ruleπ′l = |A′[l:=p]||A′| ≥0, l ∈[1,k+ 1]. For l =j:
1 1 1 1
0 1 .61 1 0 0 .60 1 0 0 .59 1
1 1 1 1 ≥0 =⇒ y¯+z≤0
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Second Example – Part IV (cont.)
Whenx,y,z ∈ {0,1},α= [¯y+z ≤0]is a formula Any linear (in)equality with {0,1}-variablesis a formula There is a linear-time SAT-translation of (in)equalities Lemma: Ψ|≈α
So Γ∪ {α}must be satisfiable if problem is P-SAT Valuation: [10 1 0]t
Lemma: any column can replace some column of A, keeping π ≥0
Second Example – Part IV (cont.)
x y z
1 1 1 1
0 1 0 1
0 0 1 1
0 0 0 1
·
0.38 0.02 0.01 0.59
=
1 0.61 0.60 0.59
As all columns are Γ-consistent, the problem is P-satisfiable (We were lucky!)
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Back to the First Example
Γ =
a∨b a∨c b∨c
Ψ ={P(a) =P(b) =P(c) = 0.6}
First Example (cont)
Relaxed solution
a b c
1 1 1 1 0 1 1 1 0 0 1 1 0 0 0 1
·
0.4
0 0 0.6
=
1 0.6 0.6 0.6
Applying the process, obtain Ψ|≈[¯b≥1]∧[a+c ≤1]
But Γ∪ {[¯b≥1]∧[a+c ≤1]} is UNSAT So the problem is P-UNSAT
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Computing Conditions from Partial Solutions
Partial solution A·π=p, computeA′·π′ =p Choose a column j, replace it with [1 x1 · · · xk]t
1 · · · 1 · · · 1 a1,1 · · · x1 · · · a1,k+1
... ... ...
ak,1 · · · xk · · · ak,k+1
·
π1 π2 ... πk+1
=
1 p1
... pk
Computing Conditions from Partial Solutions
Partial solution A·π=p, computeA′·π′ =p Choose a column j, replace it with [1 x1 · · · xk]t
1 · · · 1 · · · 1 a1,1 · · · x1 · · · a1,k+1
... ... ...
ak,1 · · · xk · · · ak,k+1
·
π1 π2 ... πk+1
=
1 p1
... pk
By Cramer’s rule πj′ = |A′[j:=p]||A′| ≥0
Note: |A′[j :=p]|is a number, |A′|is a polynomial of degree 1
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Computing Conditions (Cont.)
Linear inequalities with variables over {0,1}are the inteface between SAT, algebra and probabilities
Other conditions obtained from Cramer’s Rule for other columns
πj′′ = |A′[j′ :=p]|
|A′| ≥0
A suitable combination of those lead to a halting condition This algorithm is aTuring Reduction
Complexity of SAT calls is O(k3) variables We hope to bring it down toO(k2) variables
Computing Conditions (Cont.)
Linear inequalities with variables over {0,1}are the inteface between SAT, algebra and probabilities
Other conditions obtained from Cramer’s Rule for other columns
πj′′ = |A′[j′ :=p]|
|A′| ≥0
A suitable combination of those lead to a halting condition This algorithm is aTuring Reduction
Complexity of SAT calls is O(k3) variables We hope to bring it down toO(k2) variables
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Next Topic
1 Introduction
2 SAT
Empirical Properties
3 Probabilistic Satisfiability
4 A Brief History of PSAT
5 Canonical Reduction of PSAT to SAT
6 PSAT via Logic
7 Conclusions and Conjectures
Conclusions and Conjectures
Relationship between Deductive and Probabilistic reasoning Deductive bridge: Linear Algebra Probabilistic Not sure if PSAT will have a use in practice.
Introduction SAT PSAT History Canonical PSAT via Logic Conclusions
Conclusions and Conjectures
Relationship between Deductive and Probabilistic reasoning Deductive bridge: Linear Algebra Probabilistic Not sure if PSAT will have a use in practice.
Conjecture: the internal structure of class NP revealed by reductions to SAT
Subclasses NPf ⊆NP: A problem Π∈NPf if there is a reduction of Π into SAT of sizeO(f)-variables
PSAT is NPn3logn
If Turing reductions are used, PSAT is in NPn3