applications of propositional reasoning systems

13
Applications of Propositional Reasoning Systems CSE 473 – Autumn 2003

Upload: mateo

Post on 11-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

Applications of Propositional Reasoning Systems. CSE 473 – Autumn 2003. Testing Circuit Equivalence. Do two circuits compute the same function? Circuit optimization Is there input for which the two circuits compute different values?. C. C’. nand. A. B. A. B. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Applications of Propositional Reasoning Systems

Applications of Propositional Reasoning Systems

CSE 473 – Autumn 2003

Page 2: Applications of Propositional Reasoning Systems

Testing Circuit Equivalence

• Do two circuits compute the same function?

• Circuit optimization

• Is there input for which the two circuits compute different values?

A B

nand

A B

C C’

Page 3: Applications of Propositional Reasoning Systems

Testing Circuit Equivalence

A B

nand

A B

C C’

D E

( )

( )

C A B

C D E

D A

E B

C C

Page 4: Applications of Propositional Reasoning Systems

Symbolic Model Checking

• Any finite state machine is characterized by a transition function – CPU– Networking protocol

• Wish to prove some invariant holds for any possible inputs• Bounded model checking: formula is sat iff invariant fails k

steps in the future

1

10

vector of Booleans representing

state of machine at time

:

: {0,1}

( ,

t

k

i i i o ki

S

t

State Input State

State

S S I S S

Page 5: Applications of Propositional Reasoning Systems

The SAT The SAT Competition strikes Competition strikes

back… back… In ItaliaIn Italia

The SAT The SAT Competition strikes Competition strikes

back… back… In ItaliaIn ItaliaWhat is a

good SAT solver ? One that

participates !

Page 6: Applications of Propositional Reasoning Systems

The hidden faceThe hidden face

of the Italian coastof the Italian coast!!The hidden faceThe hidden face

of the Italian coastof the Italian coast!!Thanks toThanks to

–LRI (Orsay, France)LRI (Orsay, France)–DIST (Genoa, Italia)DIST (Genoa, Italia)

522 cpu days (2 clusters, 2 phases)522 cpu days (2 clusters, 2 phases)34 solvers (4 incomplete), 993 benchmarks,

15 Athlon 1800+ and 8 P4 2.4 Ghz 1Gb RAM

Page 7: Applications of Propositional Reasoning Systems

The competition: why?The competition: why?

• Provide a (regular) picture of current state-of-the-art SAT solvers

• “Measure” the progress each year

• Motivate (again and again) the field!– Visibility

• One (important) question last year :– Would submitters be able to made substantial

progress in only one year?

??

Page 8: Applications of Propositional Reasoning Systems

The Benchmarks (industrial)The Benchmarks (industrial)323 benchmarks, 45 series

• Hard_eq_check (E. Goldberg) [16,1]• Addm (J. Kukula) [6, 1] Equivalence check of two randomly

structured adders with multiple addends

• Li-exam, test (R. Li) [12, 2] : formulated from unit covering problem of logic minimization of logic ircuit benchmark test4

• Ferry, gripper, hanoi [24,3] : based on TSP (tunable satplan). A DIMACS generator for planing problems in PDDL format

• 'l2s‘ [11,1]: (V. Schuppan) Bounded model checking of Bwolen Yangs collection of benchmarks for SMV in conjunction with a method to convert liveness to safety. 

And a lot of E. Zarpas BMC formulae…

Page 9: Applications of Propositional Reasoning Systems

Benchs sizes, Industrial

100

1 000

10 000

100 000

1 000 000

10 000 000

100 1 000 10 000 100 000 1 000 000

# variables

# c

lau

ses

Unsolved

Solved

Page 10: Applications of Propositional Reasoning Systems

Complete IndustrialComplete Industrial

Industrial,Sat + Unsat

Page 11: Applications of Propositional Reasoning Systems

Complete handmadeComplete handmade

HandMade,Sat + Unsat

Page 12: Applications of Propositional Reasoning Systems

Incomplete RandomIncomplete Random

Random,Sat

Page 13: Applications of Propositional Reasoning Systems

The solvers (The solvers (5/85/8))

• saturn (S. Prestwich) [IR]: Saturn performs local search in a space of partial truth assignments that are consistent under unit propagation. It is a DPLL procedure with depth-first search replaced by an incomplete form of backtracking (Incomplete Dynamic Backtracking). The difference between version 2 and version 1 is a form of conflict diagnosis: variables are selected for unassignment by analysing the causes of dead-ends during search.

• satzilla (K. Leyton-Brown, E. Nudelman, G. Andrew, C. Gomes, J. McFadden, B. Selman, Y. Shoham) [CD, CD-HC] : Portfollio of algorithms: 2clseq, Limmat, JeruSat, OKsolver, Relsat, Sato, Satzrand, and Zchaff. Satzilla2 also contains eqsatz and Heerhugo.