Slicing Software for Model Construction

  • Authors:
  • John Hatcliff;Matthew B. Dwyer;Hongjun Zheng

  • Affiliations:
  • Computing and Information Sciences Department, Kansas State University, 234 Nichols Hall, Manhattan KS, 66506, USA. hatcliff@cis.ksu.edu;Computing and Information Sciences Department, Kansas State University, 234 Nichols Hall, Manhattan KS, 66506, USA. dwyer@cis.ksu.edu;Computing and Information Sciences Department, Kansas State University, 234 Nichols Hall, Manhattan KS, 66506, USA. zheng@cis.ksu.edu

  • Venue:
  • Higher-Order and Symbolic Computation
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

Applying finite-state verification techniques (e.g., model checking) to software requires that program source code be translated to a finite-state transition system that safely models program behavior. Automatically checking such a transition system for a correctness property is typically very costly, thus it is necessary to reduce the size of the transition system as much as possible. In fact, it is often the case that much of a program's source code is irrelevant for verifying a given correctness property.In this paper, we apply program slicing techniques to remove automatically such irrelevant code and thus reduce the size of the corresponding transition system models. We give a simple extension of the classical slicing definition, and prove its safety with respect to model checking of linear temporal logic (LTL) formulae. We discuss how this slicing strategy fits into a general methodology for deriving effective software models using abstraction-based program specialization.