Verifying multi-threaded software using SMT-based context-bounded model checking


Cordeiro, Lucas and Fischer, Bernd (2011) Verifying multi-threaded software using SMT-based context-bounded model checking At ICSE '11. Proceedings of the 33rd International Conference on Software Engineering, United States. 21 - 28 May 2011. , pp. 331-340. (doi:10.1145/1985793.1985839).

Download

[img] PDF icse11-cordeiro.pdf - Other
Download (258kB)

Description/Abstract

We describe and evaluate three approaches to model check multi-threaded software with shared variables and locks using bounded model checking based on Satisfiability Modulo Theories (SMT) and our modelling of the synchronization primitives of the Pthread library. In the lazy approach, we generate all possible interleavings and call the SMT solver on each of them individually, until we either find a bug, or have systematically explored all interleavings. In the schedule recording approach, we encode all possible interleavings into one single formula and then exploit the high speed of the SMT solvers. In the underapproximation and widening approach, we reduce the state space by abstracting the number of interleavings from the proofs of unsatisfiability generated by the SMT solvers. In all three approaches, we bound the number of context switches allowed among threads in order to reduce the number of interleavings explored. We implemented these approaches in ESBMC, our SMT-based bounded model checker for ANSI-C programs. Our experiments show that ESBMC can analyze larger problems and substantially reduce the verification time compared to state-of-the-art techniques that use iterative context-bounding algorithms or counter-example guided abstraction refinement.

Item Type: Conference or Workshop Item (Paper)
Digital Object Identifier (DOI): doi:10.1145/1985793.1985839
Venue - Dates: ICSE '11. Proceedings of the 33rd International Conference on Software Engineering, United States, 2011-05-21 - 2011-05-28
Subjects: Q Science > QA Mathematics > QA76 Computer software
Organisations: Electronic & Software Systems
ePrint ID: 272050
Date :
Date Event
21 May 2011Published
Date Deposited: 19 Feb 2011 10:51
Last Modified: 23 Feb 2017 08:50
Further Information:Google Scholar
URI: http://eprints.soton.ac.uk/id/eprint/272050

Actions (login required)

View Item View Item