applications of propositional reasoning systems
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 PresentationTRANSCRIPT
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?
A B
nand
A B
C C’
Testing Circuit Equivalence
A B
nand
A B
C C’
D E
( )
( )
C A B
C D E
D A
E B
C C
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
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 !
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
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?
??
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…
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
Complete IndustrialComplete Industrial
Industrial,Sat + Unsat
Complete handmadeComplete handmade
HandMade,Sat + Unsat
Incomplete RandomIncomplete Random
Random,Sat
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.