Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Linear-time Reductions of Resolution Proofs Omer Bar-Ilan Oded Fuhrmann Shlomo Hoory Ohad Shacham Ofer Strichman Technion.

Similar presentations


Presentation on theme: "1 Linear-time Reductions of Resolution Proofs Omer Bar-Ilan Oded Fuhrmann Shlomo Hoory Ohad Shacham Ofer Strichman Technion."— Presentation transcript:

1 1 Linear-time Reductions of Resolution Proofs Omer Bar-Ilan Oded Fuhrmann Shlomo Hoory Ohad Shacham Ofer Strichman Technion

2 2 Resolution Binary resolution: …or, more generally:

3 3 SAT and resolution proofs Resolution is sound and complete for CNF formulas There exists a decision procedure that deduces the empty clause if and only if the input formula is unsatisfiable. Modern SAT solvers are implicit resolution engines Learn new clauses through resolution. Upon request, they produce a resolution proof.

4 4 Uses of the resolution graphs Extraction of unsatisfiable core The subset of original clauses that were used in the proof Incremental satisfiability Which learned clauses can be reused in the next instance Computing Interpolants For unbounded SAT-based model checking

5 5 Resolution graph / unsat core () unsatisfiable core

6 6 The smaller the better Many techniques for shrinking the proof / core All exponential Most popular: run-till-fix Smaller proofs  shorter verification time As a result – short time outs. A good criterion: By how much can you shrink the core in the first T sec? ?

7 7 In this work we investigate... Linear-time Reductions of Resolution Proofs (linear in the size of the proof graph) We propose two techniques: 1. Recycle – units 1. Recycle – pivots

8 8 1. Recycle-units / observation When learning (resolving) a new clause in SAT, The resolving clauses are not satisfied Hence, the resolution-variable is unassigned l l 1 : l l 2 l 1 l 2

9 9 1. Recycle-units Suppose that the pivot’s constant value is learned later on. We will use it to simplify the resolution proof.

10 10 1. Recycle-units / easy case 1 3 -1 2 5 2 3 51 -2 1 3 5 -1 4-1 -4 3 5

11 11 1. Recycle-units / easy case 1 3 -1 2 5 2 3 51 -2 1 3 5 -1 4-1 -4 3 5

12 12 1. Recycle-units 1 3 31 -2 1 3 5 -1 4-1 -4 3 5 3 3

13 13 1. Recycle-units 1 3 3 -1 4-1 -4 Reduced proof by 4 clauses Reduced core by 1 clause

14 14 1. Recycle-units / beware of cycles 1 3 2 3 51 -2 1 3 5 -1 4-1 -4 By making this connection we created cyclic reasoning

15 15 1. Recycle-units / beware of cycles Solution: mark antecedents of units apply only to marked nodes 1 3 2 3 51 -2 1 3 5 -1 4-1 -4 -1 2 5 3 5

16 16 1. Recycle-units / beware of cycles A little tricky to make efficient. The graph changes all the time. Inefficient to update antecedents relations. Solution Maintain a DAG G ( E, U ) U = units ( u 1, u 2 ) 2 E if u 1 is an antecedent of u 2 Do not connect a unit if it creates a cycle in G. Otherwise update G.

17 17 2. Recycle pivots / Theory A restriction on general resolution: Regular resolution no pivot is used twice along a path. 1 3 1 2 -2 3 -2 43 -4 2 3-2 -4 Not Regular 2 is used twice

18 18 2. Recycle pivots / Theory A restriction on general resolution: Regular resolution no pivot is used twice along a path. Still sound and complete But, computationally weaker. There are formulas in which regular proof >> general proof Because sometimes this forces a tree resolution We make the graph regular as long as it does not require splitting nodes

19 19 2. Recycle-pivots / Example (tree) 3 4 5 6 2 6 -1 -2 51 3 4 1 2 3 -2 4 -2 3 4 5

20 20 2. Recycle-pivots / Example (tree) 3 4 5 6 2 6 -1 -2 51 3 4 1 2 3 -2 4 {2} {-2} {2,1}{2,-1} {2,-1,-2} {2,-1} -2 4 -2 3 4 5 -2 4 4 6

21 21 2. Recycle-pivots / Example (tree) 2 6 -2 4 4 6

22 22 2. Recycle-pivots / DAGs Resolution graphs are DAGs So, a node is on more than one path to the empty clause 3 4 5 6 2 6 -1 -2 51 3 4 1 2 3 -2 4 -2 3 4 5

23 23 2. Recycle-pivots / DAGs Resolution graphs are DAGs So, a node is on more than one path to the empty clause 2 6 -1 -2 5 1 2 3 -2 4 4 6

24 24 2. Recycle-pivots / DAGs 2 6 -1 -2 5 1 2 3 -2 4 4 6

25 25 2. Recycle-pivots / DAGs 2 6 -1 -2 5 1 2 3 -2 4 4 6 Does A dominate B ? Dominance relation can be found in O(|E| log |V|) A B e Problem: need to be updated each time.

26 26 2. Recycle-pivots / DAGs Our current implementation: Stop propagating information across nodes with more than one child. 3 4 5 6 2 6 -1 -2 51 3 4 1 2 3 -2 4 {2} {-2} {2,1}{2,-1} {2,-1,-2} {2,-1} -2 3 4 5

27 27 Experiments / Core-size 67 unsat instances from the public IBM benchmarks that tool run-till-fix more than 10 sec.

28 28 Experiments / Proof-size 67 unsat instances from the public IBM benchmarks that tool run-till-fix more than 10 sec.

29 29 Thank you


Download ppt "1 Linear-time Reductions of Resolution Proofs Omer Bar-Ilan Oded Fuhrmann Shlomo Hoory Ohad Shacham Ofer Strichman Technion."

Similar presentations


Ads by Google