Configurable software verification: concretizing the convergence of model checking and program analysis

  • Authors:
  • Dirk Beyer;Thomas A. Henzinger;Grégory Théoduloz

  • Affiliations:
  • Simon Fraser University, B.C., Canada;EPFL, Switzerland;EPFL, Switzerland

  • Venue:
  • CAV'07 Proceedings of the 19th international conference on Computer aided verification
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

In automatic software verification, we have observed a theoretical convergence of model checking and program analysis. In practice, however, model checkers are still mostly concerned with precision, e.g., the removal of spurious counterexamples; for this purpose they build and refine reachability trees. Lattice-based program analyzers, on the other hand, are primarily concerned with efficiency. We designed an algorithm and built a tool that can be configured to perform not only a purely tree-based or a purely lattice-based analysis, but offers many intermediate settings that have not been evaluated before. The algorithm and tool take one or more abstract interpreters, such as a predicate abstraction and a shape analysis, and configure their execution and interaction using several parameters. Our experiments show that such customization may lead to dramatic improvements in the precision-efficiency spectrum.