SAT-based unbounded symbolic model checking

This paper describes a Boolean satisfiability checking (SAT)-based unbounded symbolic model-checking algorithm. The conjunctive normal form is used to represent sets of states and transition relation. A logical operation on state sets is implemented as an operation on conjunctive normal form formulas. A satisfy-all procedure is proposed to compute the existential quantification required in obtaining the preimage and fix point. The proposed satisfy-all procedure is implemented by modifying a SAT procedure to generate all the satisfying assignments of the input formula, which is based on new efficient techniques such as line justification to make an assignment covering more search space, excluding clause management, and two-level logic minimization to compress the set of found assignments. In addition, a cache table is introduced into the satisfy-all procedure. It is a difficult problem for a satisfy-all procedure to detect the case that a previous result can be reused. This paper shows that the case can be detected by comparing sets of undetermined variables and clauses. Experimental results show that the proposed algorithm can check more circuits than binary decision diagram-based and previous SAT-based model-checking algorithms.

[1]  Edmund M. Clarke,et al.  Sequential circuit verification using symbolic model checking , 1991, DAC '90.

[2]  Edmund M. Clarke,et al.  Automatic Verification of Sequential Circuits Using Temporal Logic , 1986, IEEE Transactions on Computers.

[3]  Joao Marques-Silva,et al.  Boolean satisfiability in electronic design automation , 2000, Proceedings 37th Design Automation Conference.

[4]  Kenneth L. McMillan,et al.  Applying SAT Methods in Unbounded Symbolic Model Checking , 2002, CAV.

[5]  Parosh Aziz Abdulla,et al.  Symbolic Reachability Analysis Based on SAT-Solvers , 2000, TACAS.

[6]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[7]  Armin Biere,et al.  Combining Decision Diagrams and SAT Procedures for Efficient Symbolic Model Checking , 2000, CAV.

[8]  Zijiang Yang,et al.  SAT-Based Image Computation with Application in Reachability Analysis , 2000, FMCAD.

[9]  Sharad Malik,et al.  Partition-based decision heuristics for image computation using SAT and BDDs , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[10]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[11]  Hoon Choi,et al.  Model checking of S3C2400X industrial embedded SOC product , 2001, DAC '01.

[12]  Melvin A. Breuer,et al.  Digital systems testing and testable design , 1990 .

[13]  Gianpiero Cabodi,et al.  Can BDDs compete with SAT solvers on bounded model checking? , 2002, DAC '02.

[14]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[15]  Masahiro Fujita,et al.  Symbolic model checking using SAT procedures instead of BDDs , 1999, DAC '99.

[16]  Michael S. Hsiao,et al.  Efficient preimage computation using a novel success-driven ATPG , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[17]  Randal E. Bryant,et al.  Efficient implementation of a BDD package , 1991, DAC '90.

[18]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[19]  Mark R. Greenstreet,et al.  Formal verification in hardware design: a survey , 1999, TODE.

[20]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.