Monitoring Programs Using Rewriting

  • Authors:
  • Klaus Havelund;Grigore Rosu

  • Affiliations:
  • -;-

  • Venue:
  • Proceedings of the 16th IEEE international conference on Automated software engineering
  • Year:
  • 2001

Quantified Score

Hi-index 0.02

Visualization

Abstract

We present a rewriting algorithm for efficiently testingfuture time Linear Temporal Logic (LTL) formulae on finiteexecution traces. The standard models of LTL are infinitetraces, reflecting the behavior of reactive and concurrentsystems which conceptually may be continuously alive. Inmost past applications of LTL, theorem provers and modelcheckers have been used to formally prove that down-scaledmodels satisfy such LTL specifications. Our goal is insteadto use LTL for up-scaled testing of real software applications,corresponding to analyzing the conformance of finitetraces against LTL formulae. We first describe whatit means for a finite trace to satisfy an LTL formula andthen suggest an optimized algorithm based on transformingLTL formulae. We use the Maude rewriting logic, whichturns out to be a good notation and being supported by anefficient rewriting engine for performing these experiments.The work constitutes part of the Java PathExplorer (JPAX)project, the purpose of which is to develop a flexible tool formonitoring Java program executions.