Skip to main content

Parallel SAT Solving in Bounded Model Checking

  • Conference paper
Formal Methods: Applications and Technology (PDMC 2006)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4346))

Abstract

Bounded Model Checking (BMC) is an incremental refutation technique to search for counterexamples of increasing length. The existence of a counterexample of a fixed length is expressed by a first-order logic formula that is checked for satisfiability using a suitable solver.

We apply communicating parallel solvers to check satisfiability of the BMC formulae. In contrast to other parallel solving techniques, our method does not parallelize the satisfiability check of a single formula, but the parallel solvers work on formulae for different counterexample lengths. We adapt the method of constraint sharing and replication of Shtrichman, originally developed for sequential BMC, to the parallel setting. Since the learning mechanism is now parallelized, it is not obvious whether there is a benefit from the concepts of Shtrichman in the parallel setting. We demonstrate on a number of benchmarks that adequate communication between the parallel solvers yields the desired results.

This work was partly supported by the German Research Council (DFG) as part of the Transregional Collaborative Research Center ”Automatic Verification and Analysis of Complex Systems” (SFB/TR 14 AVACS).

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. AVACS: Automatic Verification and Analysis of Complex Systems. http://www.avacs.org

  2. Ábrahám, E., Becker, B., Klaedke, F., Steffen, M.: Optimizing bounded model checking for linear hybrid systems. In: Cousot, R. (ed.) VMCAI 2005. LNCS, vol. 3385, pp. 396–412. Springer, Heidelberg (2005)

    Google Scholar 

  3. Alur, R., Courcoubetis, C., Henzinger, T., Ho, P., Nicollin, X., Olivero, A., Sifakis, J., Yovine, S.: The algorithmic analysis of hybrid systems. Theoretical Computer Science 138, 3–34 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  4. Alur, R., Peled, D.A. (eds.): CAV 2004. LNCS, vol. 3114. Springer, Heidelberg (2004)

    MATH  Google Scholar 

  5. Audemard, G., Bertoli, P., Cimatti, A., Korniłowicz, A., Sebastiani, R.: A SAT based approach for solving formulas over boolean and linear mathematical propositions. In: Voronkov, A. (ed.) CADE 2002. LNCS (LNAI), vol. 2392, p. 195. Springer, Heidelberg (2002)

    Google Scholar 

  6. Barrett, C., Berezin, S.: CVC Lite: A new implementation of the cooperating validity checker category B. In: Alur, R., Peled, D.A. (eds.) CAV 2004. LNCS, vol. 3114, pp. 515–518. Springer, Heidelberg (2004)

    Google Scholar 

  7. Barrett, C.W., Dill, D.L., Stump, A.: Checking satisfiability of first-order formulas by incremental translation to SAT. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, p. 236. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  8. Biere, A., Cimatti, A., Clarke, E., Zhu, Y.: Symbolic model checking without BDDs. In: Cleaveland, W.R. (ed.) ETAPS 1999 and TACAS 1999. LNCS, vol. 1579, pp. 193–207. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  9. Böhm, M., Speckenmeyer, E.: A Fast Parallel SAT-Solver – Efficient Workload Balancing. Annals of Mathematics and Artificial Intelligence 17(3–4), 381–400 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  10. de Moura, L., Rueß, H.: An experimental evaluation of ground decision procedures. In: Alur, R., Peled, D.A. (eds.) CAV 2004. LNCS, vol. 3114, pp. 162–174. Springer, Heidelberg (2004)

    Google Scholar 

  11. de Moura, L., Rueß, H., Rushby, J., Shankar, N.: Embedded deduction with ICS. In: Martin, B. (ed.) Proc. of HCSS’03 (2003)

    Google Scholar 

  12. de Moura, L., Rueß, H., Sorea, M.: Bounded model checking and induction: From refutation to verification. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 14–26. Springer, Heidelberg (2003)

    Google Scholar 

  13. Eén, N., Sörensson, N.: An extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004)

    Google Scholar 

  14. Fränzle, M., Herde, C.: Efficient proof engines for bounded model checking of hybrid systems. ENTCS 133, 119–137 (2005)

    Google Scholar 

  15. Goldberg, E., Novikov, Y.: BerkMin: A Fast and Robust SAT-Solver. In: Proc. of DATE’02, pp. 142–149 (2002)

    Google Scholar 

  16. Groote, J.F., Koorn, J.W.C., van Vlijmen, S.F.M.: The safety guaranteeing system at station Hoorn-Kersenboogerd. In: Proc. of Compass’95, pp. 57–68. National Institute of Standards and Technology (1995)

    Google Scholar 

  17. Gropp, W., Lusk, E., Doss, N., Skjellum, A.: A high-performance, portable implementation of the MPI message passing interface standard. Parallel Computing 22(6), 789–828 (1996)

    Article  MATH  Google Scholar 

  18. Henzinger, T.: The theory of hybrid automata. In: Proc. of LICS’96, pp. 278–292. IEEE Computer Society Press, Los Alamitos (1996)

    Google Scholar 

  19. Holmén, F., Leucker, M., Lindström, M.: UppDMC – a distributed model checker for fragments of the μ-calculus. In: Brim, L., Leucker, M. (eds.) Proc. of PDMC’04. Electronic Notes in Computer Science, vol. 128/3, Elsevier Science Publishers, Amsterdam (2004)

    Google Scholar 

  20. Lewis, M., Schubert, T., Becker, B.: Speedup Techniques Utilized in Modern SAT Solvers – An Analysis in the MIRA Environment. In: 8th International Conference on Theory and Applications of Satisfiability Testing (2005)

    Google Scholar 

  21. Lynch, N.: Distributed Algorithms. Kaufman Publishers, San Francisco (1996)

    MATH  Google Scholar 

  22. Marques-Silva, J., Sakallah, K.: GRASP: A Search Algorithm for Propositional Satisfiability. IEEE Transactions on Computers 48(5), 506–521 (1999)

    Article  MathSciNet  Google Scholar 

  23. Melatti, I., Palmer, R., Sawaya, G., Yang, Y., Kirby, R.M., Gopalakrishnan, G.: Parallel and distributed model checking in Eddy. In: Valmari, A. (ed.) SPIN 2006. LNCS, vol. 3925, pp. 108–125. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  24. Moskewicz, M.W., Madigan, C.F., Zhao, Y., Yang, L., Malik, S.: Chaff: Engineering an efficient SAT solver. In: Proc. of DAC’01, pp. 530–535 (2001)

    Google Scholar 

  25. Schubert, T., Lewis, M., Becker, B.: PaMira – a Parallel SAT Solver with Knowledge Sharing. In: 6th International Workshop on Microprocessor Test and Verification (2005)

    Google Scholar 

  26. Shtrichman, O.: Accelerating bounded model checking of safety formulas. Formal Methods in System Design 24(1), 5–24 (2004)

    Article  Google Scholar 

  27. Sinz, C., Blochinger, W., Küchlin, W.: PaSAT – Parallel SAT-Checking with Lemma Exchange: Implementation and Applications. In: Proc. of LICS’01 (2001)

    Google Scholar 

  28. The VIS Group: VIS: A system for verification and synthesis. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, Springer, Heidelberg (1996)

    Google Scholar 

  29. Torrisi, F.D.: Modeling and Reach-Set Computation for Analysis and Optimal Control of Discrete Hybrid Automata. Doctoral dissertation, ETH Zürich (2003)

    Google Scholar 

  30. Tseitin, G.: On the complexity of derivations in propositional calculus. In: Studies in Constructive Mathematics and Mathematical Logics (1968)

    Google Scholar 

  31. VIS Benchmark Suite. http://vlsi.colorado.edu/~vis

  32. Wolfman, S.A., Weld, D.S.: The LPSAT engine & its application to resource planning. In: Dean, T. (ed.) Proc. of 16th International Joint Conference on Artificial Intelligence, pp. 310–315 (1999)

    Google Scholar 

  33. Zhang, L., Madigan, C., Moskewicz, M., Malik, S.: Efficient Conflict Driven Learning in a Boolean Satisfiability Solver. In: IEEE/ACM International Conference on Computer-Aided Design, ACM Press, New York (2001)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Luboš Brim Boudewijn Haverkort Martin Leucker Jaco van de Pol

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

Ábrahám, E., Schubert, T., Becker, B., Fränzle, M., Herde, C. (2007). Parallel SAT Solving in Bounded Model Checking. In: Brim, L., Haverkort, B., Leucker, M., van de Pol, J. (eds) Formal Methods: Applications and Technology. PDMC 2006. Lecture Notes in Computer Science, vol 4346. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-70952-7_21

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-70952-7_21

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-70951-0

  • Online ISBN: 978-3-540-70952-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics