Unit checking: Symbolic model checking for a unit of code

Elsa Gunter, Doron Peled

Research output: Contribution to journalArticlepeer-review

Abstract

We present a symbolic model checking approach that allows verifying a unit of code, e.g., a single procedure or a collection of procedures that interact with each other. We allow temporal specification that make assertions about both the program counters and the program variables. We decompose the verification into two parts: (1) a search that is based on the temporal behavior of the program counters, and (2) the formulation and refutation of a path condition, which inherits conditions on the program variables from the temporal specification. This verification approach is modular, as there is no requirement that all the involved procedures are provided. Furthermore, we do not require that the code is based on a finite domain. The presented approach can also be used for automating the generation of test cases for unit testing.

Original languageEnglish (US)
Pages (from-to)548-567
Number of pages20
JournalLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume2772
StatePublished - 2004
Externally publishedYes

ASJC Scopus subject areas

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'Unit checking: Symbolic model checking for a unit of code'. Together they form a unique fingerprint.

Cite this