d-TSR: Parallelizing SMT-Based BMC Using Tunnels over a Distributed Framework

We present a tool d-TSR for parallelizing SMT-based BMC over a distributed environment targeted for checking safety properties in low-level embedded (sequential) software. We use a tunneling and slicing-based reduction (TSR) approach to decompose disjunctively a BMC instance (at a given depth) into simpler and independent subproblems. We exploit such a decomposition to cut down communication cost and idle time of CPUs during synchronization while solving BMC instances. Our approach scales almost linearly with number of CPUs, as demonstrated in our experimental results.

[1]  M.K. Ganai,et al.  Accelerating High-level Bounded Model Checking , 2006, 2006 IEEE/ACM International Conference on Computer Aided Design.

[2]  Aarti Gupta,et al.  Completeness in SMT-based BMC for Software Programs , 2008, 2008 Design, Automation and Test in Europe.

[3]  Boudewijn R. Haverkort,et al.  Formal Methods: Applications and Technology, 11th International Workshop, FMICS 2006 and 5th International Workshop PDMC 2006, Bonn, Germany, August 26-27, and August 31, 2006, Revised Selected Papers , 2007, FMICS/PDMC.

[4]  Bernd Becker,et al.  Parallel SAT Solving in Bounded Model Checking , 2006, J. Log. Comput..

[5]  Sérgio Vale Aguiar Campos,et al.  Exploring Clause Symmetry in a Distributed Bounded Model Checking Algorithm , 2007, 14th Annual IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'07).

[6]  Greg Burns,et al.  LAM: An Open Cluster Environment for MPI , 2002 .

[7]  Zijiang Yang,et al.  F-Soft: Software Verification Platform , 2005, CAV.

[8]  Zijiang Yang,et al.  Efficient distributed SAT and SAT-based distributed Bounded Model Checking , 2003, International Journal on Software Tools for Technology Transfer.

[9]  Gil Utard,et al.  A Parallelization Scheme Based on Work Stealing for a Class of SAT Solvers , 2005, Journal of Automated Reasoning.

[10]  Aarti Gupta,et al.  Tunneling and slicing: Towards scalable BMC , 2008, 2008 45th ACM/IEEE Design Automation Conference.

[11]  Wolfgang Küchlin,et al.  Parallel propositional satisfiability checking with distributed dynamic learning , 2003, Parallel Comput..