Bounded model checking of software using SMT solvers instead of SAT solvers

  • Authors:
  • Alessandro Armando;Jacopo Mantovani;Lorenzo Platania

  • Affiliations:
  • Artificial Intelligence Laboratory, DIST, Università degli Studi di Genova, Genova, Italy;Artificial Intelligence Laboratory, DIST, Università degli Studi di Genova, Genova, Italy;Artificial Intelligence Laboratory, DIST, Università degli Studi di Genova, Genova, Italy

  • Venue:
  • SPIN'06 Proceedings of the 13th international conference on Model Checking Software
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

C Bounded Model Checking (CBMC) has proven to be a successful approach to automatic software analysis. The key idea is to (i) build a propositional formula whose models correspond to program traces (of bounded length) that violate some given property and (ii) use state-of-the-art SAT solvers to check the resulting formulae for satisfiability. In this paper we propose a generalisation of the CBMC approach based on an encoding into richer (but still decidable) theories than propositional logic. We show that our approach may lead to considerably more compact formulae than those obtained with CBMC. We have built a prototype implementation of our technique that uses a Satisfiability Modulo Theories (SMT) solver to solve the resulting formulae. Computer experiments indicate that our approach compares favourably with and on some significant problems outperforms CBMC.