Abstract. The stochastic Boolean satisfiability (SSAT) problem was introduced by Papadimitriou in 1985 by adding a probabilistic model of uncertainty to ...
Resolution for Stochastic Boolean Satisfiability⋆ Tino Teige and Martin Fr¨anzle Carl von Ossietzky Universit¨ at, Oldenburg, Germany {teige|fraenzle}@informatik.uni-oldenburg.de
Abstract. The stochastic Boolean satisfiability (SSAT) problem was introduced by Papadimitriou in 1985 by adding a probabilistic model of uncertainty to propositional satisfiability through randomized quantification. SSAT has many applications, e.g., in probabilistic planning and, more recently by integrating arithmetic, in probabilistic model checking. In this paper, we first present a new result on the computational complexity of SSAT: SSAT remains PSPACE-complete even for its restriction to 2CNF. Second, we propose a sound and complete resolution calculus for SSAT complementing the classical backtracking search algorithms.
1
Introduction
In 1985, Papadimitriou proposed the idea of modeling uncertainty in propositional satisfiability (SAT) by introducing randomized quantification in addition to existential quantification. This gives the notion of stochastic Boolean satisfiability (SSAT) [1]. An SSAT formula consists of a quantifier prefix and of a propositional formula. The quantifier prefix is an alternating sequence of existentially quantified variables and variables bound by randomized quantifiers. The meaning of a randomized variable x is that x takes value true with a certain probability p and value false with the complementary probability 1 − p. Due to the presence of such probabilistic assignments, the semantics of an SSAT formula Φ is no longer qualitative in the sense that Φ is true or false, as it is for existential and universal quantifiers, but rather quantitative. For SSAT formulae Φ, we ask for the maximum probability of satisfaction. Intuitively, a solution of Φ is a tree of assignments to the existential variables, depending on the probabilistically determined values of preceding randomized variables, that maximize the probability of satisfying the propositional formula. In recent years, the SSAT framework became popular within the Artificial Intelligence (AI) community, as many problems from that area exhibiting uncertainty can be described as SSAT problems or even special cases of SSAT, in particular probabilistic planning problems [2–4]. Inspired by that work, other communities have started to exploit the idea of SSAT in their formalisms and methods. The Constraint Programming (CP) community is working on stochastic constraint satisfaction problems [5–7] to address, e.g., multi-objective decision ⋆
This work has been partially supported by the German Research Council (DFG) as part of the Transregional Collaborative Research Center “Automatic Verification and Analysis of Complex Systems” (SFB/TR 14 AVACS, www.avacs.org).
Tino Teige and Martin Fr¨ anzle Φ = ∃x
R
2
0.3
y : (x ∨ ¬y) ∧ (¬x ∨ y)
P r(Φ) = max(0.3, 0.7) = 0.7 x x = true
P r = 0.3 · 1 + 0.7 · 0 = 0.3 y = true p = 0.3 true
Pr = 1
x = false
y
y y = false y = true p = 0.3 p = 0.7
P r = 0.3 · 0 + 0.7 · 1 = 0.7 y = false p = 0.7
false
false
true
Pr = 0
Pr = 0
Pr = 1
Fig. 1. Semantics of an SSAT formula depicted as a tree.
making under uncertainty [8]. Most recently, the Model Checking community suggested an approach based on stochastic satisfiability for the symbolic analysis of probabilistic (hybrid) systems. To do so, the authors of [9] extended SSAT wrt. arithmetic theories –as known from satisfiability modulo theories (SMT) [10]– which leads to the notion of stochastic satisfiability modulo theories (SSMT). By the expressive power of SSMT, bounded probabilistic reachability problems of uncertain hybrid systems can be phrased as SSMT formulae. Though the general SSAT problem is PSPACE-complete, the plethora of real-world applications calls for practically efficient algorithms. The first SSAT algorithm was suggested by Littman [11] and is an extension of the Davis-Putnam-Logemann-Loveland (DPLL) procedure [12, 13] for SAT with appropriate quantifier handling and algorithmic optimizations like unit propagation, purification, and thresholding. Recently, Majercik further improved the DPLL-style SSAT algorithm by nonchronological backtracking [14]. The SSMT algorithm from [9, 15] builds on the SSAT procedures but also integrates an underlying theory solver, and was successfully applied to a realistic case study [16]. In this paper, we make two contributions that shed a bit more light on the nature of SSAT. In Section 3, we investigate the computational complexity of the SSAT subclass where the propositional formula is in 2CNF. It turns out that even this special case, called S2SAT, is as hard as the general problem, i.e. PSPACE-complete. To the best of our knowledge the precise complexity of S2SAT was so far open. In Section 4, we propose a novel approach to solve SSAT problems. All existing SSAT algorithms implement a DPLL-based backtracking search explicitly traversing the tree given by the quantifier prefix. Following the idea of resolution for propositional and first-order formulae [17] and for QBF formulae [18], we develop a sound and complete resolution calculus for SSAT and theoretically compare it with the classical DPLL-SSAT approach.
2
Preliminaries
A stochastic Boolean satisfiability (SSAT) formula is given by Φ = Q : ϕ with a prefix Q = Q1 x1 . . . Qn xn of quantified propositional variables xi , where Qi is either an existential quantifier ∃ or a randomized quantifier pi with a rational R
Resolution for Stochastic Boolean Satisfiability
3
constant 0 < pi < 1, and a propositional formula ϕ s.t. Var (ϕ) ⊆ {x1 , . . . , xn }, where Var (ϕ) denotes the set of all variables in ϕ. W.l.o.g., we may assume that ϕ is in conjunctive normal form (CNF), i.e. a conjunction of disjunctions of propositional literals. A literal ℓ is a propositional variable, i.e. ℓ = xi , or its negation, i.e. ℓ = ¬xi . The semantics of Φ, as illustrated in Fig. 1, is defined by the maximum probability of satisfaction P r(Φ) as follows. ( 0 if ϕ is equivalent to false P r(ε : ϕ) = 1 if ϕ is equivalent to true P r(∃x Q : ϕ) R
p
= max(P r(Q : ϕ[true/x]), P r(Q : ϕ[false/x]))
P r( x Q : ϕ) = p · P r(Q : ϕ[true/x]) + (1 − p) · P r(Q : ϕ[false/x]) Note that the semantics is well-defined as Φ has no free variables s.t. all variables have been substituted by the constants true and false when reaching the quantifier-free base case. Given any SSAT formula Φ and any rational constant 0 ≤ t ≤ 1, the SSAT decision problem (Φ, t) asks for whether P r(Φ) ≥ t holds. All existing algorithms to solve SSAT are based on a DPLL-based backtracking search that mimics the semantics above. Fig. 2 shows the standard SSAT procedure presented in [19] (in a version without universal quantifiers). DPLL-SSAT(Φ, θl , θu ) takes as inputs an SSAT formula Φ and two threshold values θl , θu with 0 ≤ θl ≤ θu ≤ 1. DPLL-SSAT then returns value p = P r(Φ) if θl ≤ P r(Φ) < θu . Otherwise, it returns a witness value p < θl iff P r(Φ) < θl , and p ≥ θu iff P r(Φ) ≥ θu . These thresholds are exploited during search to boost efficiency by skipping some recursive calls of DPLL-SSAT which is called thresholding (cf. Fig. 2). Two other algorithmic optimizations are unit propagation and purification. The first one detects unit literals and immediately propagates them. A literal in clause c is unit if it is undecided and all other literals in c are false. Similarly, purification propagates pure literals. A literal ℓ in an undecided clause is pure if no undecided clause contains the negation of ℓ. Purification is not possible for randomized variables as both branches have some contribution. Before we state some properties of SSAT formulae that are essential for the resolution calculus introduced in Section 4, we formally define the assignment ff c that falsifies a disjunctive clause c and that is unique wrt. c’s variables. Let c be a non-tautological disjunction of propositional literals, i.e. 6|= c. Then, the mapping true ; ¬x ∈ c ff c : Var (c) → B is defined by ∀x ∈ Var(c) : ff c (x) = . That false ; x ∈ c is, c evaluates to false under assignment ff c . The following rather technical proposition comprises simple but important observations which the soundness of the proposed SSAT resolution relies on. Intuitively, property 1 states that under an assignment τ that falsifies a clause c in a propositional formula ϕ in CNF, the satisfaction probability of the SSAT formula Q : ϕ under τ is 0. Property 2 rephrases the semantics of quantifiers: from P r(Q : ϕ[true/x]) = p1 and P r(Q : ϕ[false/x]) = p2 it immediately follows that P r(∃x Q : ϕ) = max(p1 , p2 ) and P r( p x Q : ϕ) = p · p1 + (1 − p) · p2 . Property 3 safely estimates the value of P r( p x Q : ϕ) if just one of the values P r(Q : ϕ[true/x]) or P r(Q : ϕ[false/x]) is known by taking the safe upper bound 1 for the other value. R R
4
Tino Teige and Martin Fr¨ anzle
DPLL-SSAT(Q : ϕ, θl , θu ) if ϕ contains a clause equivalent to false then return 0. if all clauses in ϕ equivalent to true then return 1. // Unit propagation if ϕ contains a unit literal ℓ with Var (ℓ) = {x} then if Q = Q1 ∃xQ2 then return DPLL-SSAT(Q1 Q2 : ϕ[v(ℓ)/x], θl , θu ). if Q = Q1 p xQ2 then return DPLL-SSAT(Q1 Q2 : ϕ[v(ℓ)/x], θl /p(ℓ), θu /p(ℓ)) · p(ℓ). // Purification if ϕ contains a pure literal ℓ with Var (ℓ) = {x} then if Q = Q1 ∃xQ2 then return DPLL-SSAT(Q1 Q2 : ϕ[v(ℓ)/x], θl , θu ). // Branching and thresholding if Q = ∃xQ′ then p1 = DPLL-SSAT(Q′ : ϕ[true/x], θl , θu ). if p1 ≥ θu then return p1 . p2 = DPLL-SSAT(Q′ : ϕ[false/x], max(θl , p1 ), θu ). return max(p1 , p2 ). if Q = p xQ′ then p1 = DPLL-SSAT(Q′ : ϕ[true/x], (θl − (1 − p))/p, θu /p). if p1 · p + (1 − p) < θl then return p1 · p. if p1 · p ≥ θu then return p1 · p. p2 = DPLL-SSAT(Q′ : ϕ[false/x], (θl − p1 · p)/(1 − p), (θu − p1 · p)/(1 − p)). return p1 · p + p2 · (1 − p). R
R
Fig. 2. DPLL-based backtracking algorithm for SSAT from [19]. If literal ℓ is positive then v(ℓ) = true, p(ℓ) = p, otherwise v(ℓ) = false, p(ℓ) = 1 − p.
Proposition 1. Let ϕ be some propositional formula with Var (ϕ) = {x1 , . . . , xn }, Q = Qi+1 xi+1 . . . Qn xn be a quantifier prefix, and Var(ϕ) ↓j := {x1 , . . . , xj } for j ≤ n. Then, the following properties hold. 1. If ϕ is in CNF and there is a non-tautological clause c ∈ ϕ s.t. Var (c) ⊆ Var (ϕ) ↓i then for each τ : Var (ϕ) ↓i → B with ∀x ∈ Var(c) : τ (x) = ff c (x) : P r(Q : ϕ[τ (x1 )/x1 ] . . . [τ (xi )/xi ]) = 0. 2. For k ∈ {1, 2} let be Vk ⊆ Var (ϕ) ↓(i−1) , and τk : Vk → B s.t. for each τk′ : Var(ϕ) ↓(i−1) → B with ∀x ∈ Vk : τk′ (x) = τk (x) it holds that P r(Q : ϕ[τ1′ (x1 )/x1 ] . . . [τ1′ (xi−1 )/xi−1 ][true/xi ]) ≤ p1 , P r(Q : ϕ[τ2′ (x1 )/x1 ] . . . [τ2′ (xi−1 )/xi−1 ][false/xi ]) ≤ p2 . If ∀x ∈ V1 ∩ V2 : τ1 (x) = τ2 (x) then for each τ : Var (ϕ) ↓(i−1) → B with ∀x ∈ V1 : τ (x) = τ1 (x) and ∀x ∈ V2 : τ (x) = τ2 (x) it holds that (a) P r(∃xi Q : ϕ[τ (x1 )/x1 ] . . . [τ (xi−1 )/xi−1 ]) ≤ max(p1 , p2 ) and (b) P r( p xi Q : ϕ[τ (x1 )/x1 ] . . . [τ (xi−1 )/xi−1 ]) ≤ p · p1 + (1 − p) · p2 . 3. Let V1 ⊆ Var (ϕ) ↓(i−1) , and τ1 : V1 → B s.t. for each τ : Var (ϕ) ↓(i−1) → B with ∀x ∈ V1 : τ (x) = τ1 (x) it holds that P r(Q : ϕ[τ (x1 )/x1 ] . . . [τ (xi−1 )/xi−1 ][vxi /xi ]) ≤ p1 where vxi ∈ B. Then, P r( p xi Q : ϕ[τ (x1 )/x1 ] . . . [τ (xi−1 )/xi−1 ]) ≤ p′ · p1 + (1 − p′ ) where p′ = p if vxi = true, and p′ = 1 − p if vxi = false. R
R
Resolution for Stochastic Boolean Satisfiability
5
Proof. For property 1, by construction of τ and since clause c is non-tautological, it holds that c[τ (x1 )/x1 ] . . . [τ (xi )/xi ] ≡ false. Since ϕ is in CNF and c ∈ ϕ, it follows that formula ϕ[τ (x1 )/x1 ] . . . [τ (xi )/xi ] with variables xi+1 , . . . , xn is unsatisfiable. Immediately, P r(Q : ϕ[τ (x1 )/x1 ] . . . [τ (xi )/xi ]) = 0. Property 2 follows immediately from the definition of P r. Property 3 is a direct consequence of property 2b since w.l.o.g. we may assume that 0 ≤ p2 ≤ 1 holds. 2
3
Computational complexity of SSAT
It is well-known that the general SSAT decision problem is PSPACE-complete. The hardness can be easily shown by a reduction from the quantified Boolean formula (QBF) problem: given a QBF instance Q : ϕ (where Q may contain existential and universal quantifiers), we construct the SSAT formula Q′ : ϕ s.t. Q′ arises from Q by replacing all universal quantifiers by randomized ones p with some rational 0 < p < 1. Then Q : ϕ is true iff P r(Q′ : ϕ) ≥ 1. This reduction shows that QBF can be seen as a special case of SSAT, while both general problems share PSPACE-completeness. There is some extensive work on the complexity of SSAT and QBF subcases that gives a better insight into the relation of both problems. When restricting a QBF formula to just existential or to just universal variables, this results in the well-known NPcomplete SAT problem and the co-NP-complete tautology (TAUT) problem, respectively. The subclass of SSAT that allows only randomized variables gives the PP-complete (“probabilistic polynomial time”) MAJSAT problem. Recall that (co-)NP ⊆ PP ⊆ PSPACE holds. Thus, randomized quantifiers are in some sense computationally harder than just existential or just universal ones. In addition to restricting the quantifier prefix, it is of interest to consider special shapes of the propositional formula. A propositional formula is in kCNF iff it is in CNF and each of its clauses contains exactly k literals. The special cases of SAT, TAUT, QBF, MAJSAT, and SSAT for which the formulae are in 3CNF do not change the complexity results mentioned above. Restricting however a QBF formula to be in 2CNF, the resulting QBF subproblem can be solved in linear time [20], and thus also the corresponding subcases of SAT and TAUT. The same restriction of MAJSAT, called MAJ2SAT, however remains PP-complete [21]. This is an interesting result as alternating existential and universal quantifiers seem to be computationally harder than just randomized ones for formulae in kCNF with k ≥ 3, but computationally weaker for formulae in 2CNF. In the following, we will investigate the complexity of the SSAT subclass for which the propositional formula is in 2CNF. We call this problem S2SAT. As MAJ2SAT is PP-complete, it immediately follows that S2SAT is PP-hard. The precise complexity of S2SAT, however, was so far open to the best of our knowledge. We will show that S2SAT is as hard as the general SSAT problem, i.e. PSPACE-complete. PSPACE-membership immediately follows from the fact that S2SAT is a subcase of SSAT. We prove PSPACE-hardness by a linear-time manyone reduction from the PSPACE-complete decision problem 1-in-3 Q3SAT. A 1-in-3 Q3SAT formula Q : ϕ is simply a Q3SAT formula, i.e. a QBF formula R
6
Tino Teige and Martin Fr¨ anzle
with ϕ in 3CNF. While quantifier treatment remains unchanged, satisfaction of ϕ, however, differs from the standard definition: ϕ is 1-in-3 satisfied under truth assignment τ iff each clause c ∈ ϕ is 1-in-3 satisfied under τ iff exactly one literal in each c is satisfied under τ . PSPACE-hardness can be shown by reduction from Q3SAT that relies on the reduction from 3SAT to 1-in-3 3SAT by Schaefer [22]. For an arbitrary Q3SAT instance Q : ϕ with ϕ = cl1 ∧ . . . ∧ clm we construct the 1-in-3 Q3SAT instance Q′ : ϕ′ as follows. For each clause cli = (ℓi1 ∨ ℓi2 ∨ ℓi3 ) ∈ ϕ we introduce five 1-in-3 Q3SAT clauses one-in-three(cli ) := (ℓi1 ∨ ai ∨ di ) ∧ (ℓi2 ∨ bi ∨ di ) ∧ (ai ∨ bi ∨ ei ) ∧ (ci ∨ di ∨ fi ) ∧ (ℓi3 ∨ ci ∨ false) with six fresh Boolean variables ai , bi , ci , di , ei , fi and the constant literal false that is never satisfied. It holds that cli is satisfied under τ iff ∃ai , bi , ci , di , ei , fi : one-in-three(cli )Vis 1-in-3 satisfied under τ . By m setting Q′ := Q ∃a1 , b1 , . . . , em , fm and ϕ′ := i=1 one-in-three(cli ), it follows ′ ′ that Q : ϕ is true iff Q : ϕ is 1-in-3 true, i.e. true under 1-in-3 satisfaction. Note that Q′ : ϕ′ is of size linear in Q : ϕ (6m new variables and 5m clauses). Theorem 1. S2SAT is PSPACE-complete. Proof. PSPACE-membership is obvious as SSAT lies in PSPACE. We prove PSPACE-hardness by a linear-time many-one reduction from 1-in-3 Q3SAT. Let Q : ϕ be a 1-in-3 Q3SAT instance. We will construct an S2SAT instance (Φ, t) s.t. Q : ϕ is 1-in-3 true iff P r(Φ) ≥ t. First observe that Q : ϕ is 1in-3 true iff P r(Q′ : ϕ) ≥ 1 under 1-in-3 satisfaction where Q′ arises from Q by replacing all universal quantifiers by randomized ones 0.5 . Let be ϕ = m m {(ℓ11 ∨ ℓ12 ∨ ℓ13 ), . . . , (ℓm 1 ∨ ℓ2 ∨ ℓ3 )}. Now, we introduce 3m fresh randomized variables (three randomized variables per clause) all with the same probability p = 0.9 resulting in the prefix Q′′ := Q′ 0.9 r11 , r21 , r31 , . . . , r1m , r2m , r3m of Φ. The following propositional formula ψ of Φ ensures that at most one literal per clause in ϕ is true. To also enforce that at least one literal per clause is true, the probability threshold t will be set correspondingly by taking account of the probabilities of the randomized variables 0.9 rji to rule out non-solutions of ϕ. identify value of literal ℓij with variable rji at most one true literal per clause z z }| }| { m { ^ i i 3 ∧(¬r ∨ ¬r ) 1 2 ψ := ^ i i i i i i ∧(¬r1 ∨ ¬r3 ) (ℓj ∨ ¬rj ) ∧ (neg(ℓj ) ∨ rj ) i=1 i i j=1 ∧(¬r2 ∨ ¬r3 ) where neg(ℓ) returns the opposite literal of ℓ, i.e. it returns x if ℓ = ¬x, and ¬x otherwise. Note that ψ is in 2CNF and Φ is of size linear in Q : ϕ (Φ contains 3m new variables and 9m clauses). We now show that P r(Q′ : ϕ) ≥ 1 under 1-in-3 satisfaction iff P r(Φ) ≥ 0.009m. Let be Q′ = Q1 x1 . . . Qn xn . Note that under each assignment τ to the variables in Q′ there exists a unique assignment τ ′ to the randomized variables r1i , r2i , r3i s.t. the combined assignment τ ′′ to all variables in Q′′ with τ ′′ (xi ) = V3 τ (xi ) and τ ′′ (rji ) = τ ′ (rji ) satisfies j=1 (ℓij ∨ ¬rji ) ∧ (neg(ℓij ) ∨ rji ) in ψ for each 1 ≤ i ≤ m, i.e. at least one of R
R
R
R R
P r( P r(
0.9 0.9
rk+1 , . . . , r3m : ψ[τ (x1 )/x1 ] . . . [τ ′ (r1 )/r1 ] . . . [τ ′ (rk−1 )/rk−1 ][true/rk ]), rk+1 , . . . , r3m : ψ[τ (x1 )/x1 ] . . . [τ ′ (r1 )/r1 ] . . . [τ ′ (rk−1 )/rk−1 ][false/rk ])
Resolution for Stochastic Boolean Satisfiability
7
is 0 for each 1 ≤ k ≤ 3m. Due to (¬r1i ∨ ¬r2i ) ∧ (¬r1i ∨ ¬r3i ) ∧ (¬r2i ∨ ¬r3i ) ∈ ψ and because of setting rji to true with probability 0.9 and to false with 0.1, for each assignment τ to the variables in Q′ it holds that P r( 0.9 r11 , . . . , r3m : ψ[τ (x1 )/x1 ] . . . [τ (xn )/xn ]) ≤ 0.009m. Furthermore, for each assignment τ to the variables in Q′ that 1-in-3 satisfies ϕ, i.e. P r(ε : ϕ[τ (x1 )/x1 ] . . . [τ (xn )/xn ]) ≥ 1 under 1-in-3 satisfaction, the unique assignment τ ′ also satisfies (¬r1i ∨ ¬r2i ) ∧ (¬r1i ∨ ¬r3i ) ∧ (¬r2i ∨ ¬r3i ) for each 1 ≤ i ≤ m, since each clause in ϕ has exactly one true literal under τ , and thus τ ′′ satisfies ψ. Therefore, for each 1 ≤ i ≤ m exactly one variable of r1i , r2i , r3i is set to true by τ ′ , from which follows that P r( 0.9 r11 , . . . , r3m : ψ[τ (x1 )/x1 ] . . . [τ (xn )/xn ]) = 0.009m. Vice versa, if for some assignment τ to the variables in Q′ it holds that P r( 0.9 r11 , . . . , r3m : ψ[τ (x1 )/x1 ] . . . [τ (xn )/xn ]) = 0.009m then for each 1 ≤ i ≤ m exactly one variable of r1i , r2i , r3i is set to true by τ ′ due to (¬r1i ∨ ¬r2i ) ∧ (¬r1i ∨ ¬r3i ) ∧ (¬r2i ∨ ¬r3i ) and due to 0.9 rji . From V3 i i i i j=1 (ℓj ∨ ¬rj ) ∧ (¬ℓj ∨ rj ), we conclude that each clause in ϕ has exactly one true literal under τ . Thus, P r(ε : ϕ[τ (x1 )/x1 ] . . . [τ (xn )/xn ]) ≥ 1 under 1-in-3 satisfaction. Summarizing, P r(ε : ϕ[τ (x1 )/x1 ] . . . [τ (xn )/xn ]) ≥ 1 under 1-in-3 satisfaction iff P r( 0.9 r11 , . . . , r3m : ψ[τ (x1 )/x1 ] . . . [τ (xn )/xn ]) = 0.009m. From this fact and due to P r( 0.9 r11 , . . . , r3m : ψ[τ (x1 )/x1 ] . . . [τ (xn )/xn ]) ≤ 0.009m for each τ , it immediately follows by definition that P r(Q′ : ϕ) ≥ 1 under 1-in-3 satisfaction iff P r(Φ) = 0.009m iff P r(Φ) ≥ 0.009m. To complete the reduction, we choose the rational constant t := 0.009m . The resulting S2SAT instance (Φ, t) contains n+3m variables and 9m clauses where n is the number of variables and m is the number of clauses in Q : ϕ. The rational constant t = 0.009m can be represented by a decimal fraction of size O(m). Thus, (Φ, t) can be constructed in linear time. 2 R
R
R
R
R
R
We remark that S2SAT with just homogeneous probabilities in randomized quantifiers, i.e. 0.5 , is of the same complexity while the proof is slightly more complex. In brief, 3m more randomized variables are appended to Q′′ (on the right) and ψ is extended by 3m more clauses, i.e. 0.5 hi1 , hi2 , hi3 and (r1i ∨ ¬hi1 ) ∧ (r2i ∨ ¬hi2 ) ∧ (r3i ∨ ¬hi3 ) per clause ci . Then, if rji = true both assignments to hij satisfy (rji ∨ ¬hij ), and otherwise, i.e. rji = false, just hij = false does. Thus, for each i one of r1i , r2i , r3i is true iff the corresponding probability is 0.55 , and all rji are false iff the probability is 0.56 . It remains to set t := 0.55m . R
R
4
Resolution for SSAT
In this section, we propose a novel approach to solve SSAT problems. All existing SSAT algorithms implement a DPLL-based backtracking procedure as in Fig. 2, explicitly traversing the tree given by the quantifier prefix and computing the individual satisfaction probabilities for each subtree, as indicated by Fig. 1. Following the idea of resolution for propositional and first-order formulae [17] and for QBF formulae [18], we develop a sound and complete resolution calculus for SSAT. Recall that resolution for both SAT and QBF shows polynomial-time
8
Tino Teige and Martin Fr¨ anzle
solvability on their restrictions to 2CNF as each resolution step yields clauses of size at most two, of which just quadratically many exist. Note that the same property cannot be expected for SSAT resolution due to PSPACE-completeness of S2SAT (Theorem 1). Therefore, a sound and complete resolution calculus for SSAT must involve some rule that destroys the above property. In the sequel, let Φ = Q : ϕ be an SSAT formula where ϕ is in CNF. W.l.o.g., ϕ does not contain tautological clauses1 , i.e. ∀c ∈ ϕ : 6|= c. Let Q = Q1 x1 . . . Qn xn be some quantifier prefix and ϕ be some propositional formula with Var (ϕ) ⊆ {x1 , . . . , xn }. Then, the quantifier prefix Q(ϕ) is given by the smallest prefix of Q that contains all variables from ϕ, i.e. Q(ϕ) = Q1 x1 . . . Qi xi where xi ∈ Var(ϕ) and for each j > i : xj ∈ / Var(ϕ). Starting with clauses in ϕ, S-resolution is given by the consecutive application of rules R.1-R.5 to derive new clauses cp that are annotated with some values 0 ≤ p < 1. It is important to remark that in contrast to classical resolution such clauses cp are not necessarily semantic consequences of ϕ but are just entailed with some probability. Informally speaking, the derivation of a clause cp means that under SSAT formula Q : ϕ, the clause c is violated with a maximum probability at most p, i.e. the satisfaction probability of Q : (ϕ ∧ ¬c) is at most p. More intuitively, the minimum probability that clause c is implied by ϕ is at least 1 − p. This follows from the observation that P r(Q : ψ) = 1 − P r(Q′ : ¬ψ), where Q′ arises from Q by replacing existential quantifiers by universal ones, where universal quantifiers call for minimizing the satisfaction probability. We thus have P r(Q′ : (ϕ ⇒ c)) ≥ 1 − P r(Q : (ϕ ∧ ¬c)). Once the empty clause ∅p is derived, it follows that the probability of the given SSAT formula is at most p, i.e. P r(Q : (ϕ ∧ ¬false)) = P r(Q : ϕ) ≤ p. The first rule R.1 is just of technical nature, and derives a clause c0 from an original clause c in ϕ. (R.1)
c∈ϕ c0
The second rule R.2 derives a redundant clause by adding some literal ℓ to clause cp . To keep soundness of this rule, the literal ℓ may not talk about a variable x that already occurs in cp . Furthermore, the variable x must appear in the quantifier prefix Q(c) of clause c. Such an extension rule is redundant in classical resolution schemes for SAT and QBF. In the stochastic case, we need such rule to achieve completeness of S-resolution. Note that this rule impedes a potential polynomial-time solvability for SSAT formulae in 2CNF as sizes of derived clauses are no longer guaranteed to be at most two. Though completeness might be obtained in another way, the choice of extension rule R.2 seems to be justified by Theorem 1 (PSPACE-completeness of S2SAT), indicating that a polynomial time algorithm for S2SAT cannot be expected. (R.2) 1
cp , Qx ∈ Q(c), x ∈ / Var (c), ℓ ∈ {x, ¬x} (c ∨ ℓ)p
Tautological clauses c are redundant, i.e. P r(Q : (ϕ ∧ c)) = P r(Q : ϕ).
Resolution for Stochastic Boolean Satisfiability
9
Rules R.3 and R.4 constitute the actual resolution rules as known from the non-stochastic case. Depending on whether an existential (R.3) or a randomized variable (R.4) is resolved upon, the probability value of the resolvent clause is computed according to the semantics P r(Φ). (R.3)
/ Q(c1 ∨ c2 ), 6|= (c1 ∨ c2 ) (c1 ∨ ¬x)p1 , (c2 ∨ x)p2 , ∃x ∈ Q, ∃x ∈ max(p ,p2 ) 1 (c1 ∨ c2 )
(R.4)
(c1 ∨ ¬x)p1 , (c2 ∨ x)p2 , p x ∈ Q, p x ∈ / Q(c1 ∨ c2 ), 6|= (c1 ∨ c2 ) p·p +(1−p)·p 1 2 (c1 ∨ c2 )
R
R
The final rule R.5 is similar in nature to rule (a) of the QBF resolution scheme in [18], where all universal literals not preceding any existential literal in a clause can be removed. In the stochastic case, we yet have to take care about the probability of the resulting clause. Therefore, we pessimistically resolve clause (c ∨ ℓ)p1 with the non-existing clause (c ∨ ¬ℓ)1 . The latter clause is annotated with the highest possible probability 1 that is always a safe upper bound. Thus, ′ ′ the resolvent clause cp ·p1 +(1−p ) takes a valid upper bound probability. p ; ℓ = ¬x (c ∨ ℓ)p1 , ℓ ∈ {x, ¬x}, p x ∈ Q, p x ∈ / Q(c), p′ = 1 − p ;ℓ = x (R.5) cp′ ·p1 +(1−p′ ) R
R
Given the above rules R.1 to R.5, S-resolution is sound in the following sense. Lemma 1. Let clause cp be derivable by S-resolution. Further, let be Q(c) = Q1 x1 . . . Qi xi . Then, for each τ : Var (ϕ) ↓i → B with ∀x ∈ Var(c) : τ (x) = ff c (x) it holds that P r(Qi+1 xi+1 . . . Qn xn : ϕ[τ (x1 )/x1 ] . . . [τ (xi )/xi ]) ≤ p. Proof. We show the lemma by induction over the application of rules R.1-R.5. In the base case, we can just derive clauses cp=0 by R.1 from clauses in ϕ. For this step, the assumption holds by property 1 of Proposition 1. Now assume that the assumption holds for all clauses in the premises of rules R.2-R.5. For rules R.3, R.4, and R.5, by Proposition 1, properties 2a, 2b, and 3, resp., it follows that for each τ ′ : Var (ϕ) ↓j−1 → B with ∀x ∈ Var (c) : τ ′ (x) = ff c (x) : P r(Qj xj . . . Qn xn : ϕ[τ ′ (x1 )/x1 ] . . . [τ ′ (xj−1 )/xj−1 ]) ≤ p, where xj = x and j ≥ i + 1. Since variables xi+1 , . . . , xj−1 do not occur in the derived clause cp , for k = j − 1 to i + 1 we successively conclude that P r(Qk+1 xk+1 . . . Qn xn : ϕ[τ ′ (x1 )/x1 ] . . . [τ ′ (xk−1 )/xk−1 ][true/xk ]) ≤ p, P r(Qk+1 xk+1 . . . Qn xn : ϕ[τ ′ (x1 )/x1 ] . . . [τ ′ (xk−1 )/xk−1 ][false/xk ]) ≤ p, which finally leads to the desired result by choosing τ := τ ′ , i.e. P r(Qi+1 xi+1 . . . Qn xn : ϕ[τ (x1 )/x1 ] . . . [τ (xi )/xi ]) ≤ p. Soundness of rule R.2 is obvious: x ∈ / Var(c) and thus there are at least two τ1 , τ2 with τ1 (x) = true and τ2 (x) = false that satisfy the assumption for cp . Hence, each such τ with τ (x) = ff (c∨ℓ) (x) satisfies the assumption for (c ∨ l)p .2
10
Tino Teige and Martin Fr¨ anzle
Corollary 1 (Soundness of S-resolution). If the empty clause ∅p is derivable by S-resolution from a given SSAT formula Q : ϕ then P r(Q : ϕ) ≤ p. Corollary 1 follows directly from Lemma 1. Theorem 2 shows completeness. Theorem 2 (Completeness of S-resolution). If P r(Q : ϕ) = p < 1 for some SSAT formula Q : ϕ then the empty clause ∅p is derivable by S-resolution. Proof. If ∅ ∈ ϕ, i.e. ϕ contains an empty clause, then p = 0 and the empty clause ∅0 is derivable by rule R.1. In the remaining proof, we assume that ∅ ∈ / ϕ. We prove the theorem by induction over the number of quantifiers in the quantifier prefix Q. If Q = ∃x then (¬x), (x) ∈ ϕ, hence p = 0, since otherwise p = 1. Then, (¬x)0 and (x)0 are derivable from (¬x) and (x) by R.1, and R.3 finally yields ∅0 . If Q = px x then (¬x) ∈ ϕ or (x) ∈ ϕ, since otherwise p = 1. If (¬x) ∈ ϕ and (x) ∈ / ϕ, i.e. p = 1 − px , the empty clause ∅1−px =p is derivable by R.1, yielding (¬x)0 , and R.5, yielding ∅px ·0+(1−px ) . Analogously, if (¬x) ∈ /ϕ and (x) ∈ ϕ, i.e. p = px , the empty clause ∅px =p is derivable. If (¬x) ∈ ϕ and (x) ∈ ϕ, i.e. p = 0, the empty clause ∅0 is derivable by R.1, yielding (¬x)0 and (x)0 , and R.4, yielding ∅px ·0+(1−px )·0 . In the induction step, we will show that ∅pr is derivable for P r(Qx Q : ϕ) = pr < 1. Let p1 = P r(Q : ϕ[true/x]) and p2 = P r(Q : ϕ[false/x]). Induction hypothesis assumes that if p1 < 1 (resp. p2 < 1) then ∅p1 (resp. ∅p2 ) is derivable from Q : ϕ[true/x] (resp. Q : ϕ[false/x]). If Q = ∃ then pr = max(p1 , p2 ), and since pr < 1 it follows that p1 , p2 < 1. By induction hypothesis, the same resolution sequence as for Q : ϕ[true/x] derives one of the clauses ∅p1 , (¬x)p1 for ∃x Q : ϕ. Analogously, one of the clauses ∅p2 , (x)p2 is derivable by the same resolution sequence as for Q : ϕ[false/x]. Let us consider any resolution sequence R for ∃x Q : ϕ deriving ∅p1 that is minimal in the sense that no application of any rule in R can be omitted in order to derive ∅p1 . Observe that each clause c involved in R does not contain variable x, i.e. x∈ / Var (c): first, the positive literal x cannot be contained in c since R yields ∅p1 for Q : ϕ[true/x]. Second, the negative literal ¬x cannot be contained in c since R yields ∅p1 for ∃x Q : ϕ and R is minimal. Furthermore, ∅p1 cannot be derived directly from a clause c ∈ ϕ, since ∅ ∈ / ϕ. Thus, one of the rules R.3, R.4, or R.5 must be applied in R. Let R′ be the resolution sequence that works as R except for the following modifications: for one clause c0 that occurs in R and is derived by R.1, rule R.2 is applied to obtain clause (¬x ∨ c)0 . For the latter application, note that ∃x ∈ Q(c). In the premise of each rule in R, c0 is then replaced by (¬x ∨ c)0 . Since R is minimal, i.e. c0 is a predecessor of ∅p1 , and by the rules of S-resolution, it follows that R′ derives (¬x)p1 for ∃x Q : ϕ. Hence, (¬x)p1 is always derivable from ∃x Q : ϕ. With the same argument, (x)p2 is derivable. R.3 finally yields ∅max(p1 ,p2 )=pr . If Q = px then pr = px · p1 + (1 − px ) · p2 . As pr < 1 holds, at least one of p1 , p2 is less than 1. For case p1 , p2 < 1, as shown above for Q = ∃, clauses (¬x)p1 and (x)p2 are derivable from px x Q : ϕ. R.4 then gives ∅px ·p1 +(1−px )·p2 =pr . For case p1 < 1, p2 = 1, clause (¬x)p1 is derivable, and R.5 yields ∅px ·p1 +(1−px )=pr . Analogously for p1 = 1, p2 < 1, clause ∅(1−px )·p2 +px =pr is derivable. 2 R
R
R
Resolution for Stochastic Boolean Satisfiability
x1 ∃x2
R
R
0.8
0.3
x3 :
(x1 ∨ x2)
R.1
(x1 ∨ x2)0
R.1
(¬x2)0
R.3
(x1)0
(x2 ∨ x3)
(¬x2)
R.1
(x2 ∨ x3)0 R.5
R.2
(x2)0.3
(¬x1 ∨ ¬x2)0
R.5
R.3
R.3
∅0.8
11
∅0.3
(¬x1)0.3 R.4
∅0.24 Fig. 3. Different derivations of the empty clause by S-resolution. Arrows denote applications of the corresponding resolution rules.
R
R
Example. Consider the SSAT formula Φ = 0.8 x1 ∃x2 0.3 x3 : (x1 ∨x2 )∧(¬x2 )∧ (x2 ∨ x3 ). There is just one satisfying assignment, namely x1 = true, x2 = false, x3 = true, and the maximum probability of satisfaction thus is P r(Φ) = 0.24. In Fig. 3, three different derivations of empty clauses are depicted. Each empty clause proves an upper bound of P r(Φ) according to Corollary 1, while only ∅0.24 constitutes the exact probability of satisfaction. Such a derivation of ∅p with p = P r(Φ) always exists due to Theorem 2. Theoretical evaluation. For a theoretical assessment, we compare S-resolution with the standard SSAT procedure DPLL-SSAT from Fig. 2. As both approaches are sound and complete, we are interested in their proof complexity, i.e. the size of their proofs. We define the size of a proof that an SSAT instance (Φ, t) is true or false as the number of steps needed by a method to decide (Φ, t), i.e. the number of rule applications for S-resolution and the number of recursions for DPLL-SSAT. Both approaches may produce proofs of exponential size in worst case (examples are given below). We will thus compare their smallest proofs. For a fair comparison we have to distinguish between true and false SSAT instances. The rationale is that S-resolution yields only upper bounds on satisfaction probabilities. To decide a true SSAT instance (Φ, t), i.e. P r(Φ) ≥ t, S-resolution needs to derive all empty clauses ∅p (which implies to apply all rules until no new clause can be derived) to give a positive answer. Note that there can be exponentially many derivations of empty clauses. DPLL-SSAT with its algorithmic optimizations however potentially outputs the result much earlier. For instance, consider the family of SSAT formulae 0.5 y1 . . . 0.5 yn : (y1 )∧. . . ∧(yn ) and t = 0.5n+1 . Observe that the number of derivations of empty clauses ∅p is exponential in n and that for each ∅p it holds that p > t. DPLL-SSAT, however, solves the problem in n steps, e.g., just by unit propagation. Thus, DPLL-SSAT R
R
12
Tino Teige and Martin Fr¨ anzle
will never be worse, and potentially much more efficient, than S-resolution on true SSAT instances whenever exponentially many empty-clause derivations exist, which generally is the case. Let us consider the case where the SSAT instance (Φ, t) is false, i.e. P r(Φ) < t. We will first show that on such instances, each DPLL-SSAT proof of size k can be easily transformed into an S-resolution proof of size O(k 2 ), i.e. with just a quadratic overhead. Thereafter, we present a family of SSAT instances for which the smallest S-resolution proof is of constant size while DPLL-SSAT needs in best case exponentially many computation steps. Proposition 2. For false SSAT instances each DPLL-SSAT proof of size k can be transformed into an S-resolution proof of size O(k 2 ). We sketch the proof of Proposition 2 by explaining how a derivation of an empty clause ∅p with p < t can be constructed from a DPLL-SSAT(Φ, t, t) proof search. Foremost observe that due to assumption P r(Φ) < t, the upper threshold θu will never be exceeded by any intermediate probability result (cf. Fig. 2), as otherwise P r(Φ) ≥ t would hold. For our purpose, we slightly modify DPLL-SSAT. In order to keep track of the current partial variable assignment, DPLL-SSAT takes an additional input pa that is a set of literals representing the current partial assignment. To solve an SSAT problem, we call DPLL-SSAT(Φ, t, t, pa) with pa = ∅. Moreover, the return value of DPLL-SSAT now is a pair of the probability value p and a derived clause cpr annotated with a probability value pr, as explained below. Note that the concrete implementation as shown in Fig. 2 must be adapted correspondingly. However, both changes do not influence the probability result p of DPLL-SSAT. For base case “false” of DPLL-SSAT, we return the pair (0, c0 ) where clause c consists of all negated literals in the set pa. This clause c0 is derivable by one application of R.1 and at most |pa| − 1 applications of R.2. In case that all clauses are satisfied, i.e. base case “true”, we cannot apply any rule. To indicate this “failure”, we return (1, ∅1 ) with the non-derivable clause ∅1 . When branching for variable x we recursively call DPLL-SSAT on the extended assignment pa ∪ {ℓ} where ℓ = x if x is substituted by true and ℓ = ¬x 1 2 otherwise. Let cpr and cpr be the clauses returned by the recursive calls. We 1 2 first consider the existential case. Recall again that p1 ≥ θu will never be satisfied. If both pr1 , pr2 < 1, i.e. both clauses could be derived by S-resolution, we return the resolved clause ((c1 ∪ c2 ) − {x, ¬x})max(pr1 ,pr2 ) by rule R.3. If pr1 = 1 or pr2 = 1 then no rule is applicable and we return clause ∅1 to indicate this. For the randomized case, let first be pr1 , pr2 < 1. If p1 · p + (1 − p) < θl holds then we return (c1 − {¬x})pr1 ·p+(1−p) by R.5. Otherwise, the returned clause is ((c1 ∪ c2 ) − {x, ¬x})pr1 ·p+pr2 ·(1−p)) by R.4. If pr1 < 1 and pr2 = 1 then we derive (c1 − {¬x})pr1 ·p+(1−p) by R.5. Analogously for pr1 = 1 and pr2 < 1, (c2 − {x})p+pr2 ·(1−p) . If pr1 = pr2 = 1 then no rule is applicable indicated by ∅1 . Special attention must be devoted to unit propagation and purification. For purification observe that propagating a pure literal will never cause a clause violation by definition. Thus, we neglect this assignment and keep the set pa for the recursive call of DPLL-SSAT and just pass through clause cpr returned by recursion. Note that unit propagation moves a quantifier in the prefix to the
Resolution for Stochastic Boolean Satisfiability
13
left, i.e. Q1 QxQ2 ; QxQ1 Q2 . This of course is not a valid operation in general. However, this is correct for unit literals, i.e. P r(Q1 QxQ2 : ϕ∧ℓ) = P r(QxQ1 Q2 : ϕ∧ℓ) with ℓ ∈ {x, ¬x}, as the value of x satisfying ℓ does not depend on Q1 . This semantics-preserving quantifier reshuffling justifies the derivation of clause cpr by recursive call DPLL-SSAT with updated assignment pa ∪ {ℓ}. Now observe that assignment pa ∪ {¬ℓ} violates some clause, as ℓ is unit. Clause (c′ ∪ {ℓ})0 is thus derivable by S-resolution, where c′ consists of all negated literals in pa. If pr < 1, we return clause ((c ∪ c′ ) − {¬ℓ})pr in the existential case by R.3, and ((c ∪ c′ ) − {¬ℓ})pr·p(ℓ) in the randomized case by R.4. If pr = 1, we return ∅1 and (c′ )p(ℓ) for the existential and randomized case, respectively. For each returned pair (p, cpr ) it holds that p ≤ pr. Furthermore, if p < θl then pr < θl . This is given by the base case p1 · p + (1 − p) < θl and by manipulating the thresholds for recursion (cf. Fig. 2). Thus, the initial call DPLL-SSAT(Φ, t, t, ∅) returns a pair (p, ∅pr ) with pr < t, i.e. the empty clause ∅pr is derivable by S-resolution, iff P r(Φ) < t. Observe that at most one clause is derived per DPLL-SSAT call, except for the base case “false”. Let k be the DPLL-SSAT proof size and f ≤ k be the number of DPLL-SSAT calls that directly lead to the base case “false”. Further, let ai for 1 ≤ i ≤ f be the number of variables that are assigned values when reaching the i-th base case “false”. Clearly, ai ≥ |pa|. Thus, for i-th base case “false”, at most ai new clauses are Pfderived by R.1 and R.2. Hence, the S-resolution proof size k ′ is at most k + i=1 ai . Very conservatively, ai ≤ k for each i. Immediately, k ′ ≤ k + f · k ≤ k + k 2 ∈ O(k 2 ). Proposition 3. There is a family of false SSAT instances for which the smallest S-resolution proof is of constant size while the smallest DPLL-SSAT proof is of exponential size. To prove Proposition 3, consider the family of SSAT formulae Φn∈N>0 = Q1,1 x1,1 . . . Q1,n x1,n Q2,n x2,n Q3,n x3,n . . . Q2,1 x2,1 Q3,1 x3,1 :
n ^
all comb(x1,i , x2,i , x3,i )
i=1
where all comb(x1,i , x2,i , x3,i ) = (x1,i ∨ x2,i ∨ x3,i ) ∧ (x1,i ∨ x2,i ∨ ¬x3,i ) ∧ . . . ∧ (¬x1,i ∨ ¬x2,i ∨ ¬x3,i ) is a predicate in 3CNF that gives all non-tautological clauses with the three variables x1,i , x2,i , x3,i . Obviously, all comb(x1,i , x2,i , x3,i ) is unsatisfiable, and thus P r(Φn ) = 0. Hence, for each t > 0 it holds that the SSAT instance (Φn , t) is false. S-resolution needs in best case only 7 resolution steps to derive the empty clause ∅0 , namely by resolving only clauses in all comb(x1,i , x2,i , x3,i ) for some i. DPLL-SSAT however needs exponentially many steps in n to solve the problem. The rationale is that a conflict, i.e. base case “false”, is detected not before variables x1,1 . . . x1,n x2,n are assigned. After setting x2,n , the conflict in all comb(x1,n , x2,n , x3,n ) is revealed by unit propagation. However, after backtracking to some point where x2,n is unassigned, the conflict is no longer present and is only revisited after branching for x2,n again. Hence, DPLL-SSAT must traverse all 2n+1 assignments to the variables x1,1 . . . x1,n x2,n until Φn is solved. It is expected that conflict-driven clause learning [23] as employed in DPLLbased SAT solvers is beneficial to significantly improve DPLL-SSAT proof sizes
14
Tino Teige and Martin Fr¨ anzle
on problems of such or similar structures. An interesting issue for future research thus is to investigate how S-resolution can be instrumental in developing a more general clause learning scheme to be integrated into DPLL-based SSAT algorithms: by Lemma 1, a derived clause (c ∨ ℓ)p means that under each assignment that falsifies (c ∨ ℓ), the satisfaction probability of the remaining subproblem is at most p. The inductive argument in the proof of Theorem 2 suggests that there are also clauses (c ∨ ℓ)p for which the probability of the subproblem is exactly p. Thus, under a partial assignment that falsifies c one could directly propagate literal ℓ as the satisfaction probability of the other branch, for which the negation of ℓ holds, is already known, namely p.
5
Discussion and future work
In this paper, we have explained two contributions to the field of stochastic propositional satisfiability solving. First, we have shown that the restriction of SSAT to formulae in 2CNF is PSPACE-complete, i.e. as hard as the general problem. Second, we have introduced a sound and complete resolution calculus for SSAT that complements the work on classical DPLL-based SSAT algorithms. While each DPLL-SSAT proof for false SSAT instances can be transformed into an S-resolution proof with just a quadratic overhead, there is a family of SSAT instances for which the smallest S-resolution proof is of constant size and each DPLL-SSAT proof, however, is of exponential size. Similar to proofs of unsatisfiability for SAT, S-resolution provides a theoretical framework to generate proofs of satisfiability with insufficient probability. Such proofs permit the subsequent validation of SSAT solver results as well as the extraction of small subformulae having the same satisfaction probabilities as the original formula. In future work, we will concentrate on two challenging issues. Motivated by the success of clause learning in SAT solving, we will investigate an SSAT clause learning scheme based on S-resolution to significantly improve performance of DPLL-based SSAT solvers. Another topic is the potential application of S-resolution for computing stochastic variants of Craig interpolants, expected to provide a technique enhancing applications of SSAT solving, among them the extension of SSAT-based bounded model checking of probabilistic systems like Markov Decision Processes to unbounded model checking.
References 1. Papadimitriou, C.H.: Games against nature. J. Comput. Syst. Sci. 31(2) (1985) 288–301 2. Littman, M.L., Majercik, S.M., Pitassi, T.: Stochastic Boolean Satisfiability. Journal of Automated Reasoning 27(3) (2001) 251–296 3. Majercik, S.M., Littman, M.L.: MAXPLAN: A New Approach to Probabilistic Planning. In: Artificial Intelligence Planning Systems. (1998) 86–93 4. Majercik, S.M., Littman, M.L.: Contingent Planning Under Uncertainty via Stochastic Satisfiability. Artificial Intelligence Special Issue on Planning With Uncertainty and Incomplete Information 147(1-2) (2003) 119–162
Resolution for Stochastic Boolean Satisfiability
15
5. Walsh, T.: Stochastic constraint programming. In: Proc. of the 15th European Conference on Artificial Intelligence (ECAI’02), IOS Press (2002) 6. Tarim, A., Manandhar, S., Walsh, T.: Stochastic constraint programming: A scenario-based approach. Constraints 11(1) (2006) 53–80 7. Balafoutis, T., Stergiou, K.: Algorithms for Stochastic CSPs. In Benhamou, F., ed.: CP. Volume 4204 of LNCS., Springer (2006) 44–58 8. Bordeaux, L., Samulowitz, H.: On the stochastic constraint satisfaction framework. In: SAC, ACM (2007) 316–320 9. Fr¨ anzle, M., Hermanns, H., Teige, T.: Stochastic satisfiability modulo theory: A novel technique for the analysis of probabilistic hybrid systems. In Egerstedt, M., Mishra, B., eds.: HSCC. Volume 4981 of LNCS., Springer (2008) 172–186 10. Barrett, C., Sebastiani, R., Seshia, S.A., Tinelli, C.: Satisfiability modulo theories. [24] chapter 26 825–885 11. Littman, M.L.: Initial Experiments in Stochastic Satisfiability. In: Proc. of the 16th National Conference on Artificial Intelligence. (1999) 667–672 12. Davis, M., Putnam, H.: A Computing Procedure for Quantification Theory. Journal of the ACM 7(3) (1960) 201–215 13. Davis, M., Logemann, G., Loveland, D.: A Machine Program for Theorem Proving. Communications of the ACM 5 (1962) 394–397 14. Majercik, S.M.: Nonchronological backtracking in stochastic Boolean satisfiability. In: ICTAI, IEEE Computer Society (2004) 498–507 15. Teige, T., Fr¨ anzle, M.: Stochastic satisfiability modulo theories for non-linear arithmetic. In Perron, L., Trick, M.A., eds.: CPAIOR. Volume 5015 of LNCS., Springer (2008) 248–262 16. Teige, T., Eggers, A., Fr¨ anzle, M.: Constraint-based analysis of concurrent probabilistic hybrid systems: An application to networked automation systems. Nonlinear Analysis: Hybrid Systems (2010) to appear. 17. Robinson, J.A.: A machine-oriented logic based on the resolution principle. J. ACM 12(1) (1965) 23–41 18. B¨ uning, H.K., Karpinski, M., Fl¨ ogel, A.: Resolution for quantified Boolean formulas. Inf. Comput. 117(1) (1995) 12–18 19. Majercik, S.M.: Stochastic Boolean satisfiability. [24] chapter 27 887–925 20. Aspvall, B., Plass, M.F., Tarjan, R.E.: A linear-time algorithm for testing the truth of certain quantified Boolean formulas. Inf. Process. Lett. 8(3) (1979) 121–123 21. Goldsmith, J., Hagen, M., Mundhenk, M.: Complexity of DNF and isomorphism of monotone formulas. In Jedrzejowicz, J., Szepietowski, A., eds.: MFCS. Volume 3618 of Lecture Notes in Computer Science., Springer (2005) 410–421 22. Schaefer, T.J.: The complexity of satisfiability problems. In: Proc. of the Tenth Annual ACM Symposium on Theory of Computing, ACM (1978) 216–226 23. Silva, J.P.M., Lynce, I., Malik, S.: Conflict-driven clause learning SAT solvers. [24] chapter 4 131–153 24. Biere, A., Heule, M.J.H., van Maaren, H., Walsh, T., eds.: Handbook of Satisfiability. Volume 185 of Frontiers in Artificial Intelligence and Applications. IOS Press (February 2009)