Automatic software model checking using CLP

  • Authors:
  • Cormac Flanagan

  • Affiliations:
  • Systems Research Center, Hewlett Packard Laboratories

  • Venue:
  • ESOP'03 Proceedings of the 12th European conference on Programming
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper proposes the use of constraint logic programming (CLP) to perform model checking of traditional, imperative programs. We present a semantics-preserving translation from an imperative language with heap-allocated mutable data structures and recursive procedures into CLP. The CLP formulation (1) provides a clean way to reason about the behavior and correctness of the original program, and (2) enables the use of existing CLP implementations to perform bounded software model checking, using a combination of symbolic reasoning and explicit path exploration.