Computer Science – Logic in Computer Science
Scientific paper
2010-03-19
Computer Science
Logic in Computer Science
Scientific paper
The transition from single-core to multi-core processors has made multi-threaded software an important subject in computer aided verification. Here, we describe and evaluate an extension of the ESBMC model checker to support the verification of multi-threaded software with shared variables and locks using bounded model checking (BMC) based on Satisfiability Modulo Theories (SMT). We describe three approaches to model check multi-threaded software and our modelling of the synchronization primitives of the Pthread library. In the lazy approach, we generate all possible interleavings and call the BMC procedure 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-widening approach, we reduce the state space by abstracting the number of state variables and interleavings from the proofs of unsatisfiability generated by the SMT solvers. In all three approaches, we use partial-order reduction (POR) techniques to reduce the number of interleavings explored. Experiments show that our approaches can analyze larger problems and substantially reduce the verification time compared to state-of-the-art techniques that combine classic POR methods with symbolic algorithms and others that implement the Counter-Example Guided Abstraction Refinement technique.
Cordeiro Lucas
Fischer Bernd
No associations
LandOfFree
Bounded Model Checking of Multi-threaded Software using SMT solvers does not yet have a rating. At this time, there are no reviews or comments for this scientific paper.
If you have personal experience with Bounded Model Checking of Multi-threaded Software using SMT solvers, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Bounded Model Checking of Multi-threaded Software using SMT solvers will most certainly appreciate the feedback.
Profile ID: LFWR-SCP-O-354773