Presentation is loading. Please wait.

Presentation is loading. Please wait.

Resolution proof system Presenter Valeriy Balabanov NTU, GIEE, AlCom lab.

Similar presentations


Presentation on theme: "Resolution proof system Presenter Valeriy Balabanov NTU, GIEE, AlCom lab."— Presentation transcript:

1 Resolution proof system Presenter Valeriy Balabanov NTU, GIEE, AlCom lab

2 Outline Basic definitions Key-facts about resolution proofs Intractability of resolution Heuristics for proof minimization Resolution in first-order logic Conclusion and future work References

3 Basic definitions

4

5 Resolution is a deductive rule in a form: – where a, b, c are some distinct logical facts – “a” is called pivot – (b or c) is called resolvent A Resolution refutation proof for F is a sequence of clauses R = (C 1,..,C t ), where – C t = ∅ ; – C i ∈ F or C i is derived from two previous clauses by the resolution rule

6 The length of the proof = # of clauses in the derivation Resolution proof can also be seen as DAG, where the nodes represent clauses, and edges represent resolution steps; the single sink node is an empty clause Tree-like resolution is a resolution, with special property – each parent node has exactly one child (in other words each clause in a proof is resolved only once) – Note: Tree-like resolution can be derived from DAG resolution by splitting multiply used nodes into separate nodes

7 Key-facts about resolution proofs For 2SAT it is possible to find the shortest resolution proof in polynomial time (2SAT ∈ P) For HornSAT polynomial resolution proof exists (HornSAT ∈ P-complete), but finding the shortest proof is NP-hard Generally, finding the shortest resolution proof is NP-hard (generally, as we will see the shortest proof can be exponential in number of clauses)

8 Intractability of resolution Resolution is complete and sound Proof: – Soundness: every clause, resolved from the formula is implied by that formula, thus, if resolved clause is empty – formula is UNSAT – Completeness: elimination of variable “a” from CNF, is a procedure, when we make all possible resolutions using “a” as a pivot, and then eliminating all the clauses containing “a” from the original formula

9 Completeness(continued): – Let F be UNSAT CNF with m-variables a 1,a 2 …a m – Let S i be the set of clauses, which are left after elimination of i variables from F; S 0 is the original formula F; S m has at most the empty clause. – Let’s prove by induction on i, that every truth assignment to variables in F will make some clause in S i to be false For i=0 S 0 is UNSAT, and thus has false clause for every assignment Assume for S k it is also true, and for some assignment V, the false clause is θ, then if θ doesn’t contain variable a k+1, then θ also will be present after elimination of a k+1 ;

10 Completeness(continued): – now, if θ has variable a k+1, let W be the truth assignment, same as V, but with different assignment to variable a k+1 ; let β be the clause which is false for W; if β doesn’t contain variable a k+1, then β will be in S k+1 ; if it does – then the resolvent of β and θ will be present in S k+1 and obviously will be false for V(also W); – thus for every truth assignment, S i must contain a clause which will be false under it – Thus, S m should contain the empty clause, and by the construction of S m it was derived by resolution

11 Pigeonhole principle: – Let A be a sequence of n=sr + 1 distinct numbers. Then either A has: an increasing subsequence of s + 1 terms or a decreasing subsequence of r + 1 terms (or both). Consequence: – Suppose we have n=s+1 pigeons (r=1) – If we put them in at most s holes, then there definitely will be at least 2 pigeons in the same hole – In other words it is impossible to put every pigeon to it’s own hole

12 Proof: – Every number in sequence a i has score (x i, y i ). – x i is the longest increasing subsequence ending at a i – y i is the longest decreasing subsequence starting at a i – (x i, y i ) ≠ (x j, y j ) whenever i ≠ j. – Assume i < j, then : if a i < a j → x i < x j if a i > a j → y i > y j – Thus we have rs+1 points on a plane, and there is ai with coordinate (x i, y i ) outside the rs-square. – So, for that a i we will have x i ≥ s+1 or y i ≥ r+1

13 Formalizing PHP to CNF formula – x i,j - pigeon i sits in hole j – (type 1): x i,1 ∨ x i,2 ∨.. ∨ x i,n−1 for i = 1..n (every pigeon sits in at least one hole) – (type 2): (¬x i,k ∨ ¬x j,k ) for 1 ≤ i ≠ j ≤ n ; 1 ≤ k ≤ n − 1 (no two pigeons sit in the same hole) – From pigeonhole principle conjunction of above clauses is UNSAT Example: – Note: deleting any clause will lead to SAT

14 Haken’s super-polynomial lower bound – Original proof shows the bound for n>200 – We present modified proof: Ω(2 √n/32 ) – Definition: A critical assignment is a one-to-one mapping of n − 1 pigeons to n − 1 holes, with one pigeon unset. Having i-th pigeon unset defines a i-critical assignment. Presenting the assignments of the x i,j as a matrix, the critical assignments would look like this: Example of 9-critical assignment for PHP with n=9

15 Let R be the proof of unsatisfiability of PHP n Replace x i,j ’ in all clauses C by: Definition: The resulting sequence of positive clauses R + = (C 1 +,..,C t + ) is a positive pseudo-proof of PHP n Lemma: C + (α) = C(α) for any critical α Proof: Suppose ∃ C + (α) ≠ C(α) ⇒ ∃ x i,j ’ ∈ C s.t. C i,j (α) ≠ x i,j ’(α) ⇔ (x 1,j ∨.. ∨ x n,j )(α) ≠ x i,j ’(α). This is impossible, since α is critical, therefore has exactly one 1 in the column j.

16 We will show now, that t ≥ 2 n/32. For a contradiction, assume t < 2 n/32, t is the number of clauses in R +. Definition: A long clause has at least n 2 /8 variables. (more than 1/8 of all possible n(n − 1) variables). l is the number of long clauses in R. l ≤ t < 2 n/32 – By the pigeonhole principle, there exists a variable x i,j, which occurs in at least l/8 of the long clauses. – Set the special variable x i,j to 1. – Set all x i,j’, x i’,j for j’≠j, i’≠i to 0. – Clauses containing x i,j are set to 1 and therefore disappear from the proof. – The variables set to 0 disappear from all clauses.

17 We are left with a pseudo-proof of PHP n−1 with at most l(1 − 1/8) long clauses. Doing this d = 8log(l) times, we will eliminate all long clauses, since We are left now with a pseudo-proof of PHP m with no long clauses (of length more than n 2 /8). Since m = n – d, and from assumption l < 2 n/32, we can obtain

18 Lemma: Any positive pseudo-proof of PHP m must have a clause with at least 2m 2 /9 variables. Proof: let R’ be a positive pseudo-proof of PHP m – Definition: ∀ C ∈ R’, W is a witness of C if W is a set of clauses from PHP m, whose conjunction implies C for critical assignments. ( ∀ critical α: α satisfies all ω ∈ W → α satisfies C). The weight of C = # clauses in minimal witness. Note: for any C there exist witness W – Clauses of (type 2) are not the part of a minimal witness – Clauses of (type 1) have weight 1 – The weight of the final clause is m – The weight of a clause is at most the sum of the two clauses its been derived from – There exists a clause C ∈ R’ of weight s, m/3 ≤ s ≤ 2m/3.

19 Let – S is a set of indices of witness clauses for C – W = {C i |i ∈ S}, |S| = s, – C i = x i,1 ∨ x i,2.. ∨ x i,m−1 ; C i ∈ PHP m – ∧ C i → C Also let – i ∈ S – α is i-critical assignment with C(α)=0 – j ∉ S; α’ is j-critical – α’ is obtained from α, by swapping row i and row j : If α maps pigeon j to hole k, then α’ maps pigeon i to hole k

20 Since j ∉ S α’ satisfies all C i ∈ W, so C(α’)=1 From the construction α differs from α’ only in x i,k, x j,k This implies x i,k ∈ C We can run this argument for current i-critical assignment under all (m − s) different choices for j ∉ S Thus C contains the variables x i,k1, x i,k2,.., x i,k m−s And by repeating this for all i ∈ S, we conclude that C contains at least (m-s)s different variables Since m/3 ≤ s ≤ 2m/3, we have (m-s)s ≥ 2m 2 /9, concluding the proof for lemma We reached a contradiction to our assumption that t ≤ 2 n/32

21 Thus we conclude, that pigeonhole family of clauses requires super-polynomial minimal proofs for large n People have also found many exponentially hard examples for resolution using graph theory Definition: extended resolution, is a regular resolution, but with additional property: any definition can be added to original formula, if it doesn’t change its satisfiability – Example: if x is not in original formula, we can add Extended resolution can find polynomial proofs for pigeonhole formulas Extended resolution is one of the strongest known proof systems

22 Heuristics for proof minimization Resolution proofs are useful for – Extracting unsatisfiable cores – Extracting interpolants – Detecting useful clauses for incremental SAT-solving Run-till-fix and Trim-till-fix – Use SAT-solver repeatedly to minimize UNSAT-core – Use incremental SAT-solver to analyze the structure of the proof and restructure it – Running time is usually large, since we need to rerun SAT- solver again and again

23 Recycling learned unit clauses – If (x) is a unit clause that was learned by the SAT solver, it can be used for simplifying resolution inferences that used x as the pivot prior to learning this clause – May lead to circular reasoning, so must be applied carefully – Let P – is a resolution proof of the empty clause For a given node n in P: – n.C - is the clause represented by n – n.L and n.R are parents of n – n.piv – is the variable used to resolve n.C from n.L.C and n.R.C

24 Example:

25

26 It is easy to see, that recycling units will only make proof stronger The size of the proof also will be reduced The time complexity is quadratic in size of the proof, and no SAT-solving is used

27 Recycling Pivots – Observation: along each path from root to sink in a proof graph there is no need for resolving on the same variable more than once – Proof: Key point here is: why do we want to use resolution? We use current resolution step to eliminate variable “x” If in few steps variable “x” will reappear again – then what was the purpose of first resolution? – The proof with above mentioned property is called Regular – The shortest proof for a given problem must be regular The Reconstruct-Proof algorithm will be the same as that for Recycling Units Runtime of Recycling Pivots is linear in proof size

28 Example:

29 Experimental results – Run-till-fix finds the smallest UNSAT core (# of roots), but it increases the proof-size – Recycle Units and Pivots significantly simplify the proof, but cannot make UNSAT core small enough

30 Resolution in first-order logic Propositional logic vs. First-order logic – Example Universal reduction – Example but Q-resolution – combines resolution and universal reduction

31 Example: Red lines: universal reduction Green lines: exist. resolution

32 Q-resolution is both complete and sound – Soundness: if the empty clause was generated, as in SAT, QBF obviously evaluates to 0 – Completeness: Induction on number of quantifiers: – For single ∃ -variable it is just a usual resolution – For single ∀ -variable, falsity of formula->there is at least one non-tautological clause, which can be universally reduced – Induction step for ∀ -variable (a) will choose the value of a, which leads to UNSAT, and use the same resolution steps; – For ∃ -variable (a) both assignments to a lead to a conflict; we use Q-res steps for those assignments; if in one of them a (a’) was not present – we are done; if both present – we resolve resulting clauses on a, and thus get the conflict clause

33 As QBF is a general case of SAT, Q-resolution is also intractable More definitions: – ∃ -unit clause is clause with only one ∃ -variable – Q-unit resolution is a Q-resolution where one of the clauses is a positive ∃ -unit clause – Horn clause is a clause with only one positive literal – Extended quantified Horn formula has every clause’s existential part to be a Horn clause

34 Theorem: Q-unit resolution is complete and sound for extended quantified Horn formulas Proof: look into [7] Theorem: For every t>0 there exists a quantified extended Horn formula of length 18t+1 which is FALSE, and the refutation to the empty clause requires at leas 2 t Q-resolution steps Proof: look into [7] Q-resolution can’t simulate usual resolution – Example can’t conclude x

35 Conclusion and future work Resolution is simplest, but yet efficient proof system Resolution is intractable Existence of exponential lower bounds Resolution proofs are used in model checking Shorter proofs can be produced using some heuristics Q-resolution is an extension of resolution in first- order logic

36 Other proof systems Exchange of the nodes in the resolution graph Different heuristics for proof-length reduction Interpolants in first-order logic Q-resolution vs. QBF’s certificates

37 References 1.“The relative efficiency for propositional proofs”, Stephen A. Cook and Robert A. Reckhov 2.“Hard examples for Resolution”, Alasdair Urquhart 3.“On the complexity of derivation in propositional calculus”, G.S. Tseitin 4.“Optimal length tree-like resolution refutations for 2SAT formulas”, K. Subramani 5.“The intractability of resolution”, Armin Haken 6.“Reducing the size of resolution proofs in linear time”, O.B.Ilan, O. Fuhrmann, S. Hoory, O. Shacham, O.Strichman 7.“Resolution for Quantified Boolean Formulas”, H.Buning, M. Karpinski, A. Flogel

38 Thank you very much!!!


Download ppt "Resolution proof system Presenter Valeriy Balabanov NTU, GIEE, AlCom lab."

Similar presentations


Ads by Google