extended resolution as certificates for propositional logic

49

Upload: others

Post on 11-Feb-2022

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Extended resolution as Certi�cates for

Propositional Logic

Chantal Keller

Inria � École Polytechnique - LIX

June, 10th 2013

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 1 / 22

Page 2: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Motivation

Observations:

many di�erent automatic theorem provers based on di�erentparadigms

should be able to explain their results: give proof witness

Claim: no need for hundreds of checkers!

a standard for proof witnesses

provers should be able to transform their reasoning into suchwitnesses

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 2 / 22

Page 3: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Motivation

Observations:

many di�erent automatic theorem provers based on di�erentparadigms

should be able to explain their results: give proof witness

Claim: no need for hundreds of checkers!

a standard for proof witnesses

provers should be able to transform their reasoning into suchwitnesses

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 2 / 22

Page 4: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Which standard?

For propositional logic: extended resolution

the base of the standard proposed for SAT and SMT[Besson et al. � PxTP'11]

easily extendable (eg. quanti�ers [Deharbe et al. � PxTP'11])

already related to most existing proof systems

easy to generate from DPLL with backjumping

easy to check by a certi�ed tool (eg. SMTCoq, zCha� inIsabelle)

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 3 / 22

Page 5: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Which provers?

For propositional logic:

DPLL with backjumping

clausal BDDs

Contribution:

tableaux provers

full BDDs

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 4 / 22

Page 6: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Outline

1 Boolean unsatis�ability and extended resolution

2 Tableaux

3 BDDs

4 Conclusion

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 5 / 22

Page 7: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The CNF SAT problem

Decide propositional satis�ability of sets of clauses:

x ∨ y x ∨ y ∨ z x ∨ z z

Proof witnesses

If satis�able: assignment of the variables to > or ⊥ (givescounter-examples)If unsatis�able: proof by resolution of the empty clause(equivalent to provability)

Resolution rule:

x ∨ C x ∨ D

C ∨ D

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 6 / 22

Page 8: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Example

Unsatis�ability of: x ∨ y x ∨ y ∨ z x ∨ z z

x ∨ y

x ∨ y ∨ z z

x ∨ y

x

x ∨ z z

x

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 7 / 22

Page 9: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The general SAT problem

Replace variables with propositional formulas:

(a⇒ b)∧

a b

Proof witness for unsatis�ability

proof by extended resolution of the empty clause

nodes are resolutions

leaves are initial clauses or extension rules

Extension of y , y1 ⇒ y2:

y ∨ y1 ∨ y2 y ∨ y1 y ∨ y2

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 8 / 22

Page 10: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Example

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

two initial clauses: g and b

proof witness:

f ∨ a ∨ b

g ∨ f g

f

a ∨ b

g ∨ a g

a

b b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 9 / 22

Page 11: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Outline

1 Boolean unsatis�ability and extended resolution

2 Tableaux

3 BDDs

4 Conclusion

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 10 / 22

Page 12: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 13: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 14: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

a⇒ b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 15: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

a⇒ b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 16: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

a⇒ b

a

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 17: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

a⇒ b

a

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 18: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

a⇒ b

a

a b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 19: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

a⇒ b

a

a b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 20: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

a⇒ b

a

a b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 21: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

a⇒ b

a

a b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 22: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

The method

Unsatis�ability of: (a⇒ b)∧

a b:

(a⇒ b)∧a

b

a⇒ b

a

a b

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 11 / 22

Page 23: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 24: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 25: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 26: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 27: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 28: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 29: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 30: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 31: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 32: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 33: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 34: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 35: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 36: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 37: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 38: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

(a⇒ b)∧

a

b

a⇒ b

a

a b

Unsatis�ability of: (a⇒ b)∧

a b

let f , a⇒ b and g , f∧

a

build the proof step by step:

↪→ linear transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 12 / 22

Page 39: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Outline

1 Boolean unsatis�ability and extended resolution

2 Tableaux

3 BDDs

4 Conclusion

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 13 / 22

Page 40: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

BDDs

Canonical representation of a Boolean formula:

choose an order for the variables

nodes are succesive Shannon expansions of the variables

F ⇔ if a then F{a← >} else F{a← ⊥}merge isomorphic subtrees and eliminate some variables

BDD of (a⇒ (b ∨ c)) ∧ (a ∨ b ∨ c) with a > b > c :

b

c

0 1

BDD of an unsatis�able formula: 0

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 14 / 22

Page 41: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Build the BDD little by little and simplify at the same time

Example of implication:

a a a

Γ1 Γ2 ∆1 ∆2 Γ1 ⇒ ∆1 Γ2 ⇒ ∆2

a

a

Γ1 Γ2 Γ1 ⇒ ∆ Γ2 ⇒ ∆

0⇒ ∆ 1 1⇒ ∆ ∆ Γ⇒ 0 ¬Γ Γ⇒ 1 1

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 15 / 22

Page 42: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Example

Unsatis�ability of (a⇒ b) ∧ a ∧ b:

a a

a

a

b

b

b

b

0

0

0

0

0

0

0

1

1

1

1

imp

negand

and

elim elim

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 16 / 22

Page 43: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Set of clauses representing a BDD

Shannon expansion at each node:

a

Γ1 Γ2

PΓ1 PΓ2

PΓ∨a∨PΓ1 PΓ∨a∨PΓ1 PΓ∨ a∨PΓ2 PΓ∨ a∨PΓ2

Leaves:

0P0 P0

1P1 P1.

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 17 / 22

Page 44: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Example

BDD and set of clauses for a variable:

a

0 1

Pa

P0 P1

Pa∨a∨P0 Pa∨a∨P0 Pa∨a∨P1 Pa∨a∨P1 P0 P1

For an unsatis�able formula:

0P0 P0

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 18 / 22

Page 45: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Transformation into a resolution tree

Idea of the algorithm:

start with the BDDs of the variables and the correspondingsets of clauses

at each application of a connective f ? g , transform the sets ofclauses representing f and g into the set of clausesrepresenting f ? g using extended resolution

these transformations correspond to pieces of certi�cates

put together, they prove the negation of the initial formula,and it only remains to resolve with it

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 19 / 22

Page 46: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Example

Negation of a variable:

a

0 1

Pa

P0 P1

Pa ∨ a ∨ P0 Pa ∨ a ∨ P0

Pa ∨ a ∨ P1 Pa ∨ a ∨ P1

P0 P1

a

1 0

P ′a

P ′1 P ′

0

P ′a ∨ a ∨ P ′

1 P ′a ∨ a ∨ P ′

1

P ′a ∨ a ∨ P ′

0 P ′a ∨ a ∨ P ′

0

P ′0 P ′

1

pose P ′a , ¬Pa, P ′

0 , ¬P1, P′1 , ¬P0

by extension P ′a ∨ Pa and P ′

a ∨ Pa (idem for P ′0 and P ′

1)

the 6 new clauses are obtained by resolution

↪→ polynomial transformation

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 20 / 22

Page 47: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Example

Negation of a variable:

a

0 1

Pa

P0 P1

Pa ∨ a ∨ P0 Pa ∨ a ∨ P0

Pa ∨ a ∨ P1 Pa ∨ a ∨ P1

P0 P1

a

1 0

P ′a

P ′1 P ′

0

P ′a ∨ a ∨ P ′

1 P ′a ∨ a ∨ P ′

1

P ′a ∨ a ∨ P ′

0 P ′a ∨ a ∨ P ′

0

P ′0 P ′

1

pose P ′a , ¬Pa, P ′

0 , ¬P1, P′1 , ¬P0

by extension P ′a ∨ Pa and P ′

a ∨ Pa (idem for P ′0 and P ′

1)

the 6 new clauses are obtained by resolution

↪→ polynomial transformationExtended resolution as Certi�cates for Propositional Logic Chantal Keller 20 / 22

Page 48: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Outline

1 Boolean unsatis�ability and extended resolution

2 Tableaux

3 BDDs

4 Conclusion

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 21 / 22

Page 49: Extended resolution as Certificates for Propositional Logic

Boolean unsatis�ability and extended resolution Tableaux BDDs Conclusion

Conclusion and perspectives

Extended resolution is theoretically suited for certi�cates:

three major paradigms can return such certi�cates inpolynomial time: DPLL with backjumping, tableaux and BDDs

remind: e�cient certi�ed checking

Validation

instrument existing provers with these algorithms

evaluate the e�ciency

Perspectives

cope with enhancements implemented by these provers

extensions to more expressive logics and other provers

Extended resolution as Certi�cates for Propositional Logic Chantal Keller 22 / 22