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).
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
AVACS: Automatic Verification and Analysis of Complex Systems. http://www.avacs.org
Á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)
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)
Alur, R., Peled, D.A. (eds.): CAV 2004. LNCS, vol. 3114. Springer, Heidelberg (2004)
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)
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)
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)
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)
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)
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)
de Moura, L., Rueß, H., Rushby, J., Shankar, N.: Embedded deduction with ICS. In: Martin, B. (ed.) Proc. of HCSS’03 (2003)
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)
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)
Fränzle, M., Herde, C.: Efficient proof engines for bounded model checking of hybrid systems. ENTCS 133, 119–137 (2005)
Goldberg, E., Novikov, Y.: BerkMin: A Fast and Robust SAT-Solver. In: Proc. of DATE’02, pp. 142–149 (2002)
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)
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)
Henzinger, T.: The theory of hybrid automata. In: Proc. of LICS’96, pp. 278–292. IEEE Computer Society Press, Los Alamitos (1996)
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)
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)
Lynch, N.: Distributed Algorithms. Kaufman Publishers, San Francisco (1996)
Marques-Silva, J., Sakallah, K.: GRASP: A Search Algorithm for Propositional Satisfiability. IEEE Transactions on Computers 48(5), 506–521 (1999)
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)
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)
Schubert, T., Lewis, M., Becker, B.: PaMira – a Parallel SAT Solver with Knowledge Sharing. In: 6th International Workshop on Microprocessor Test and Verification (2005)
Shtrichman, O.: Accelerating bounded model checking of safety formulas. Formal Methods in System Design 24(1), 5–24 (2004)
Sinz, C., Blochinger, W., Küchlin, W.: PaSAT – Parallel SAT-Checking with Lemma Exchange: Implementation and Applications. In: Proc. of LICS’01 (2001)
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)
Torrisi, F.D.: Modeling and Reach-Set Computation for Analysis and Optimal Control of Discrete Hybrid Automata. Doctoral dissertation, ETH Zürich (2003)
Tseitin, G.: On the complexity of derivations in propositional calculus. In: Studies in Constructive Mathematics and Mathematical Logics (1968)
VIS Benchmark Suite. http://vlsi.colorado.edu/~vis
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)
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)
Author information
Authors and Affiliations
Editor information
Rights 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)