Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 A framework for eager encoding Daniel Kroening ETH, Switzerland Ofer Strichman Technion, Israel (Executive summary) (submitted to: Formal Aspects of.

Similar presentations


Presentation on theme: "1 A framework for eager encoding Daniel Kroening ETH, Switzerland Ofer Strichman Technion, Israel (Executive summary) (submitted to: Formal Aspects of."— Presentation transcript:

1 1 A framework for eager encoding Daniel Kroening ETH, Switzerland Ofer Strichman Technion, Israel (Executive summary) (submitted to: Formal Aspects of Computing)

2 2 A generic framework for reducing decidable logics to propositional logic (beyond NP). Instantiating the framework for a specific logic L, requires a deductive system for L that meets several criteria.  Linear arithmetic, EUF, arrays etc all have it.

3 3 A proof rule: A proof step: (Rule, Antecedent, Proposition) Definition (Proof-step Constraint): let A 1 …A k be the Antecedents and p the Proposition of step. Then: Boolean encoding

4 4 A proof P =(s 1,…, s n ) is a set of Proof Steps,  …in which the Antecedence relation is acyclic The Proof Constraint c(P) induced by P is the conjunction of the constraints induced by its steps: PC(P)PC(P)

5 5 Propositional skeleton: Theorem 1: For every formula  and any sound proof P,  is satisfiable )  sk Æ c(P) is satisfiable.

6 6 Complete proofs Definition (Complete proofs): A proof P is called complete with respect to  if

7 7 Notation: A – assumption, B – a proposition. denotes: P proves B from A. Let  be an unsatisfiable formula Theorem 2: A proof P is complete with respect to  if for every full assignment  TL(  ): Theory Literals corresponding to  Sufficient condition for completeness #1 Not constructive!

8 8 Projection of a variable x: a set of proof steps that eliminate x and maintains satisfiability. Strong projection of a variable x: a projection of x that maintains : The projected consequences from each minimal unsatisfiable core of literals is unsatisfiable.

9 9 Consider the formula Example – strong projection Both sub-formulas are unsatisfiable and do not contain x 1. Now strongly project x 1 : U1U1 U2U2

10 10 Let  C be a conjunction of  ’s literals. A proof construction procedure: eliminate all variables in  C through strong projection. Theorem 3: The constructed proof is ‘complete’ for .

11 11 Goal: for a given logic L,  Find a strong projection procedure.  Construct P  Generate c(P)  Check  sk Æ c(P)

12 12  C : x 1 - x 2 < 0, x 1 - x 3 < 0, -x 1 + 2x 3 + x 2 < 0, -x 3 < -1 Example: Disjunctive Linear Arithmetic [S02] A proof P by (Strong) projection: e 1 e 2 e 3 e 4 e 1  e 3  e 5 4. Solve  ’ =  sk Æ c(P) x1:x1: e 2  e 3  e 6 2 x 3 < 0, e5 e5 x 3 + x 2 < 0 e6 e6 e 4  e 5  false x3:x3:

13 13 What now ? It is left to show a strong projection method for each logic we are interested in integrating. Current eager procedures are far too wasteful. Need to find better ones.

14 14 Optimizations Optimizations that were previously published in the ‘eager encoding’ series can all be interpreted in this framework.  Conjunction Matrices  Simplifications and early detection Cross-theory learning

15 15 Cross-theory learning  C (T1):  C (T2): From T1 we learn z 1 = z 2 which we propagate to T2 In T2 we get a contradiction on: z 1 > 2, z 2 =1, z 1 = z 2 This results in a conflict clause: Which represents cross-theory learning

16 16 Projection (by example) (Starting from a conjunction of literals) Indeed,  x 1  var ( x 4 > x 4 )   ’ = (x 2 > x 3 ) Æ (x 4 > x 4 ) is equisatisfiable to 

17 17  : ( x 1 - x 2 < 0)  (x 1 - x 3 < 0)  ((-x 1 + 2x 3 + x 2 < 0)  (-x 3 < -1))  c : ( x 1 - x 2 < 0)  (x 1 - x 3 < 0)  (-x 1 + 2x 3 + x 2 < 0) Æ (-x 3 < -1)  : ( x 1, x 2, x 3 ) Choose x 1  : ( x 2, x 3 ) Strong-project: P ’={(R, (2 x 3 · 0), { ( x 1 - x 2 < 0), (-x 1 + 2x 3 + x 2 < 0)}, (R, (x 2 + x 3 · 0), { ( x 1 - x 2 < 0), (-x 1 + 2x 3 + x 2 < 0)}}  c : (2 x 3 · 0)  (x 2 + x 3 · 0)  (-x 3 < -1)

18 18 Example c(step):= e(x=5) Æ e(:x¸ 0) ! e(:5 ¸ 0) A new variable

19 19 Prove validity of x  5 Ç x ¸ 0 by using atoms only Example

20 20 Example (cont’d) :  sk Æ c(P’) is unsatisfiable hence  is valid

21 21  - an unsatisfiable formula. A - the set of minimal assignments that satisfy  sk. A proof P is complete with respect to  if 8  2 A, TL(  ): Theory Literals corresponding to  For a partial assignment  s.t.  ² ,  is minimal if 8v.  nv 2  Sufficient condition for completeness #2

22 22  - an unsatisfiable formula A - the set of minimal assignments that satisfy  sk. A proof P is complete with respect to  if 8  2 A, for some unsatisfiable core TL uc (  ) µ TL(  ) Sufficient condition for completeness #3

23 23 Proof-graph of P A A B P proves B using A: A,B: sets of propositions

24 24


Download ppt "1 A framework for eager encoding Daniel Kroening ETH, Switzerland Ofer Strichman Technion, Israel (Executive summary) (submitted to: Formal Aspects of."

Similar presentations


Ads by Google