Skip to main content
Log in

Formal Verification Techniques Based on Boolean Satisfiability Problem

  • Published:
Journal of Computer Science and Technology Aims and scope Submit manuscript

Abstract

This paper exploits Boolean satisfiability problem in equivalence checking and model checking respectively. A combinational equivalence checking method based on incremental satisfiability is presented. This method chooses the candidate equivalent pairs with some new techniques, and uses incremental satisfiability algorithm to improve its performance. By substituting the internal equivalent pairs and converting the equivalence relations into conjunctive normal form (CNF) formulas, this approach can avoid the false negatives, and reduce the search space of SAT procedure. Experimental results on ISCAS’85 benchmark circuits show that, the presented approach is faster and more robust than those existed in literature. This paper also presents an algorithm for extracting of unsatisfiable core, which has an important application in abstraction and refinement for model checking to alleviate the state space explosion bottleneck. The error of approximate extraction is analyzed by means of simulation. An analysis reveals that an interesting phenomenon occurs, with the increasing density of the formula, the average error of the extraction is decreasing. An exact extraction approach for MU subformula, referred to as pre-assignment algorithm, is proposed. Both theoretical analysis and experimental results show that it is more efficient.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Anastasakis D, Damiano R, Ma Hi-Keung T, Stanion T. A practical and efficient method for compare-point matching. In Proc. 39th ACM/IEEE Design Automation Conference, New Orleans, 2002, pp. 305–310.

  2. Park J, Pixley C, Burns M, Cho H. An efficient logic equivalence checker for industrial circuits. Journal of Electronic Testing: Theory and Applications, 2000, 16(1–2): 91–106.

    Google Scholar 

  3. Burch J R, Singhal V. Robust latch mapping for combinational equivalence checking. In Proc. International Conference on Computer Aided Design, San Jose, 1998, pp. 563–569.

  4. Shi-Yu Huang, Kwang-Ting Cheng. Formal Equivalence Checking and Design Debugging. Boston: Kluwer Academic Publishers, 1998.

    Google Scholar 

  5. Berman C L, Trevillyan L H. Functional comparison of logic designs for VLSI chips. In Proc. IEEE/ACM Int. Conf. Computer-Aided Design, San Jose, California, 1989, pp. 456–459.

  6. Matsunaga Y. An efficient equivalence checker for combinational circuits. In Proc. 33th ACM/IEEE Design Automation Conference, Las Vegas, 1996, pp. 629–634.

  7. Mukherjee R et al. Efficient combinational verification using overlapping local BDDs and a hash table. Formal Methods in System Design, 2002, 21(1): 95–101.

    Google Scholar 

  8. Kuehlmann A, Paruthi V, Krohm F, Ganai M K. Robust Boolean reasoning for equivalence checking and funtional property verification. IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, 2002, 21(12): 1377–1394.

    Google Scholar 

  9. Burch J R, Singhal V. Tight integration of combinational verification methods. In Proc. IEEE/ACM International Conference on Computer-Aided Design, San Jose, 1998, pp. 570–576.

  10. Paruthi V, Kuehlmann A. Equivalence checking combining a structural SAT-solver, BDDs, and simulation. In Proc. IEEE/ACM International Conference on Computer-Aided Design, San Jose, California, 2000, pp. 459–464.

  11. Daniel Brand. Verification of large synthesized designs. In Proc. IEEE/ACM International Conference on Computer-Aided Design, San Jose, California, 1993, pp. 534–537.

  12. Marques-Silva J, Glass T. Combinational equivalence checking using satisfiability and recursive learning. In Proc. IEEE/ACM Design, Automation and Test in Europe, 1999, pp. 145–149.

  13. Goldberg E I, Prasad M R, Brayton R K. Using SAT for combinational equivalence checking. In Proc. IEEE/ACM Design, Automation and Test in Europe, 2001, pp. 114–121.

  14. J Marques-Silva, Karem A Sakallah. GRASP — A search algorithm for propositional satisfiability. IEEE Trans. Computers, May 1999, 48(5): 506–521.

    Google Scholar 

  15. Moskewicz M W, Madigan C F, Zhao Y, Zhang L, Malik S. Zchaff: Engineering an efficient SAT solver. In Proc. 38th ACM/IEEE Design Automation Conference, Las Vegas, 2001, pp. 530–535.

  16. Goldberg E, Novikov Y. BerkMin: A fast and robust SAT-solver. In Proc. the IEEE/ACM Design Automation, and Test in Europe (DATE), 2002, pp. 142–149.

  17. Edmund M Clarke, Armin Biere, Richard Raimi, Yunshan Zhu. Bounded model checking using satisfiability solving. Formal Methods in System Design, 2001, 19(1): 7–34.

    Google Scholar 

  18. Pankaj Chauhan et al. Automated abstraction refinement for model checking large state spaces using SAT based conflict analysis. In Proc. Formal Methods in Computer-Aided Design, 4th International Conference, Portland, OR, USA, November 6–8, 2002. pp. 33–51.

  19. Edmund M Clarke, Orna Grumberg, Doron Peled. Model Checking. MIT Press, 1999.

  20. Dong Wang. SAT-based abstraction refinement for hardware verification [Thesis]. May 2003. Carnegie Mellon University.

  21. Hans K Büning. On subclasses of minimal unsatisfiable formulas. Discrete Applied Mathematics, 2000, 107(1–3): 83–98.

    Google Scholar 

  22. Herbert Fleischner et al. Polynomial-time recognition of minimal unsatisfiable formulas with fixed clause-variable difference. Theoretical Computer Science, 2002, 289(1): 503–516.

    Google Scholar 

  23. Lintao Zhang, Sharad Malik. Extracting small unsatisfiable cores from unsatisfiable Boolean formula. In Sixth International Conference on Theory and Applications of Satisfiability Testing, S Margherita Ligure — Portofino (Italy), May 5–8, 2003. http://research.microsoft.com/users/litaoz/papers/SAT_2003_core.pdf

  24. Renato Bruni. Approximating minimal unsatisfiable sub-formulae by means of adaptive search. Discrete Applied Mathematics, 2003, 130(2): 85–100.

    Google Scholar 

  25. Renato Bruni. On exact selection of minimally unsatisfiable subformulae. www.dis.uniroma1.it/∼bruni/files/bruni03mus. pdf

  26. Lingtao Zhang. Zchaff. http://ee.princeton.edu/∼chaff

  27. Zhang L et al. Conflict driven learning in a quantified Boolean satisfiability solver. In Proc. Int. Conf. Computer Aided Design, San Jose, CA, USA, Nov. 2002, pp. 87–93.

  28. Aarti Gupta et al. Iterative abstraction using SAT-based BMC with proof analysis. In Proc. 2003 International Conf. Computer-Aided Design (ICCAD’03), 2003, pp. 416–423.

  29. Renato Bruni et al. Restoring satisfiability or maintaining unsatisfiability by finding small unsatisfiable subformulae. In Proc. Theory and Applications of Satisfiability Testing, Boston, MA, U.S.A. 2001. http://www.dis.uniroma1.it/∼bruni/files/bruni01endm.pdf

  30. Holger H Hoos et al. SATLIB: An online resource for research on SAT. In SAT 2000, Gent I P, Maaren H V, Walsh T (eds.), 2000, IOS Press, pp. 283–292. http://www.satlib.org

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiao-Wei Li.

Additional information

This paper is supported by the National Natural Science Foundation of China (NSFC) under Grant No.90207002.

Xiao-Wei Li received his B.Eng. and M.Eng. degrees in computer science from Hefei University of Technology in 1985 and 1988 respectively, and his Ph.D. degree in computer science from the Institute of Computing Technology (ICT), Chinese Academy of Sciences (CAS) in 1991. He joined Peking University as a postdoctoral research associate in 1991, and was promoted to associate professor in 1993, all with the Department of Computer Science and Technology. From 1997 to 1998, he was a visiting research fellow in the Department of Electrical and Electronic Engineering at the University of Hong Kong. In 1999 and 2000, he was a visiting professor in the Graduate School of Information Science, Nara Institute of Science and Technology, Japan. He joined the ICT, CAS as a professor in 2000. His research interests include VLSI/SOC design verification and test generation, design for testability, low-power design, dependable computing. He received the Natural Science Award in 1992 and the Outstanding Science and Technology Achievement Prize in 2003 from CAS.

Guang-Hui Li received his M.S. degree in computational mathematics from Xiangtan University in 1999. At present, he is a Ph.D. candidate in ICT, CAS. His research interests include VLSI/SOC formal verification, design error diagnosis, VLSI testing.

Ming Shao received his B.S. degree in applied mathematics from Yantai University in 1998, and M.S. degree in applied mathematics from Wuhan University in 2001. Currently, he is a Ph.D. candidate in the ICT, CAS. His research interests include VLSI/SOC formal verification.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Li, XW., Li, GH. & Shao, M. Formal Verification Techniques Based on Boolean Satisfiability Problem. J Comput Sci Technol 20, 38–47 (2005). https://doi.org/10.1007/s11390-005-0004-6

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11390-005-0004-6

Keywords

Navigation