Computational challenges in bounded model checking

  • Edmund Clarke
  • Daniel Kroening
  • Joël Ouaknine
  • Ofer Strichman
Special section on Bounded Model Checking

Abstract

We describe several observations regarding the completeness and the complexity of bounded model checking and propose techniques to solve some of the associated computational challenges. We begin by defining the completeness threshold, we prove that the complexity of standard SAT-based BMC is doubly exponential and that, consequently, there is a complexity gap of an exponent between this procedure and standard LTL model checking. We discuss ways to bridge this gap.

Keywords

Bonded-Model-checking Complexity Completeness-Threshold  

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Ajtai M, Komlós J, Szemerédi S (1983) An O(NlogN) sorting network. In: Proceedings of the 25th ACM symposium on theory of computing, pp 1–9Google Scholar
  2. 2.
    Batcher KE (1968) Sorting networks and their applications. In: Proceedings of the AFIPS spring joint computer conference, 32:307–314Google Scholar
  3. 3.
    Baumgartner J, Kuehlmann A, Abraham J (2002) Property checking via structural analysis. In: Brinksma E, Larsen KG (eds) Proceedings of the 14th international conference on computer aided verification (CAV’02), Copenhagen, Denmark, July 2002. Lecture notes in computer science, vol 2404. Springer, Berlin Heidelberg New YorkGoogle Scholar
  4. 4.
    Biere A (2004) The evolution from limmat to nanosat. Technical report, ETH ZürichGoogle Scholar
  5. 5.
    Biere A, Cimatti A, Clarke E, Zhu Y (1999) Symbolic model checking without BDDs. In: Proceedings of the workshop on tools and algorithms for the construction and analysis of systems (TACAS’99). Lecture notes in computer science, vol . Springer, Berlin Heidelberg New York, pp 193–207Google Scholar
  6. 6.
    Biere A, Cimatti A, Clarke EM, Strichman O, Zue Y (2003) Bounded model checking. In: Advances in computers, vol 58. Academic, New YorkGoogle Scholar
  7. 7.
    Cimatti A, Pistore M, Roveri M, Sebastiani R (2002) Improving the encoding of LTL model checking into SAT. In: 3rd international conference on verification, model checking and abstract interpretation (VMCAI), pp 196–207Google Scholar
  8. 8.
    Clarke EM, Grumberg O, Hamaguchi K (1994) Another look at ltl model checking. In: Dill DL (ed) Proceedings of the 6th international conference on computer aided verification. Lecture notes in computer science, vol 818. Springer, Berlin Heidelberg New York, pp 415–427Google Scholar
  9. 9.
    Clarke EM, Kroening D, Ouaknine J, Strichman O (2004) Completeness and complexity of bounded model checking. In: Proceedings of the 5th international conference on verification, model checking and abstract interpretation (VMCAI’04), Venice, Italy, January 2004. Lecture notes in computer science, vol 2937. Springer, Berlin Heidelberg New York, pp 85–96Google Scholar
  10. 10.
    de Moura L, Ruess H, Sorea M (2002) Lazy theorem proving for bounded model checking over infinite domains. In: Proceedings of the 18th international conference on automated deduction (CADE’02), Copenhagen, July 2002Google Scholar
  11. 11.
    Clarke EM, Grumberg O, Peled D (1999) Model checking. MIT Press, Cambridge, MAGoogle Scholar
  12. 12.
    Frisch A, Sheridan D, Walsh T (2002) A fixpoint based encoding for bounded model checking. In: International conference on formal methods in computer-aided design (FMCAD 2002), Portland, OR, November, pp 238–255Google Scholar
  13. 13.
    Gerth R, Peled D, Vardi M, Wolper P (1995) Simple on-the-fly automatic verification of linear temporal logic. In: Protocol specification testing and verification. Chapman & Hall, London, pp 3–18Google Scholar
  14. 14.
    Holzmann GJ, Peled D, Yannakakis M (1996) On nested depth first search. In: 2nd SPIN workshop, AMS, pp 23–32Google Scholar
  15. 15.
    Knuth DE (1973) The art of computer programming, vol 3: Sorting and searching. Addison-Wesley, Reading, MAGoogle Scholar
  16. 16.
    Kroening D, Strichman O (2003) Efficient computation of recurrence diameters. In: Proceedings of the 4th international conference on verification, model checking, and abstract interpretation (VMCAI’03), New York, January 2003. Lecture notes in computer science, vol 2575. Springer, Berlin Heidelberg New York, pp 298–309Google Scholar
  17. 17.
    McMillan KL (2002) Applying SAT methods in unbounded symbolic model checking. In: Brinksma E, Larsen K (eds) Proceedings of the 14th international conference on computer aided verification (CAV’02), Copenhagen, July 2002. Lecture notes in computer science, vol 2404. Springer, Berlin Heidelberg New York, pp 250–264Google Scholar
  18. 18.
    McMillan KL (2003) Interpolation and sat-based model checking. In: Hunt WA Jr, Somenzi F (eds) Proceedings of the international conference on computer aided verification (CAV’03), July 2003. Lecture notes in computer science, vol . Springer, Berlin Heidelberg New YorkGoogle Scholar
  19. 19.
    Mneimneh M, Sakallah K (2002) SAT-based sequential depth computation. In: Workshop on constraints in formal verification, Ithaca, New York, SeptemberGoogle Scholar
  20. 20.
    Moskewicz M, Madigan C, Zhao Y, Zhang L, Malik S (2001) Chaff: engineering an efficient SAT solver. In: Proceedings of the conference on design automation (DAC’01)Google Scholar
  21. 21.
    Schuppan V, Biere A (2004) Efficient reduction of finite state model checking to reachability analysis. Int J Softw Tools Technol TransferGoogle Scholar
  22. 22.
    Sheeran M, Singh S, Stalmarck G (2000) Checking safety properties using induction and a sat-solver. In: Hunt, Johnson (eds) Proceedings of the international conference on formal methods in computer-aided design (FMCAD 2000)Google Scholar
  23. 23.
    Somenzi F, Bloem R (2000) Efficient Büchi automata from LTL formulae. In: Emerson EA, Sistla AP (eds) 12th international conference on computer aided verification (CAV’00), Berlin, July. Springer, Berlin Heidelberg New York, pp 248–263Google Scholar
  24. 24.
    Vardi MY, Wolper P (1986) An automata-theoretic approach to automatic program verification. In: Proceedings of the 1st IEEE symposium on logic in computer science, pp 332–344Google Scholar
  25. 25.
    Wang D, Clarke EM, Zhu Y, Kukula J (2001) Using cutwidth to improve symbolic simulation and boolean satisfiability. In: IEEE International workshop on high level design validation and test (HLDVT 2001), November, p 6Google Scholar

Copyright information

© Springer-Verlag 2005

Authors and Affiliations

  • Edmund Clarke
    • 1
  • Daniel Kroening
    • 2
  • Joël Ouaknine
    • 3
  • Ofer Strichman
    • 4
  1. 1.Computer Science DepartmentCarnegie Mellon UniversityPittsburghUSA
  2. 2.Department of Computer ScienceETH ZürichSwitzerland
  3. 3.Oxford University Computing LaboratoryOxfordUK
  4. 4.Faculty of Industrial EngineeringInformation Systems EngineeringTechnionIsrael

Personalised recommendations