Proceedings Article10.1109/ASE.2001.989799
Monitoring programs using rewriting
Klaus Havelund,Grigore Rosu +1 more
- 26 Nov 2001
- pp 135-143
TL;DR: A rewriting algorithm for efficiently testing future time Linear Temporal Logic formulae on finite execution traces using the Maude rewriting logic, which turns out to be a good notation and being supported by an efficient rewriting engine for performing these experiments.
read more
Abstract: We present a rewriting algorithm for efficiently testing future time Linear Temporal Logic (LTL) formulae on finite execution traces. The standard models of LTL are infinite traces, reflecting the behavior of reactive and concurrent systems which conceptually may be continuously alive. In most past applications of LTL, theorem provers and model checkers have been used to formally prove that down-scaled models satisfy such LTL specifications. Our goal is instead to use LTL for up-scaled testing of real software applications, corresponding to analyzing the conformance of finite traces against LTL formulae. We first describe what it means for a finite trace to satisfy an LTL formula and then suggest an optimized algorithm based on transforming LTL formulae. We use the Maude rewriting logic, which turns out to be a good notation and being supported by an efficient 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 for monitoring Java program executions.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
A Brief Account of Runtime Verification
TL;DR: A comparison to well-known verification techniques like model checking and testing is provided, and applications in which runtime verification brings out its distinguishing features are pointed out.
917
Robustness of temporal logic specifications for continuous-time signals
TL;DR: This paper proposes multi-valued semantics for MTL formulas, which capture not only the usual Boolean satisfiability of the formula, but also topological information regarding the distance, @e, from unsatisfiability.
724
Systems of Systems Engineering: Basic Concepts, Model-Based Techniques, and Research Directions
TL;DR: A review of existing attempts to define and classify SoS is used to identify several dimensions that characterise SoS applications and the state of the art for SoS modelling, architectural description, simulation, verification, and testing is reviewed.
430
Rule-Based Runtime Verification
Howard Barringer,Allen Goldberg,Klaus Havelund,Koushik Sen +3 more
- 11 Jan 2004
TL;DR: Eagles logic, Eagle, is implemented as a Java library and involves novel techniques for rule definition, manipulation and execution for finite trace monitoring logics, including future and past time temporal logic, extended regular expressions, real-time logics and forms of quantified temporal logics.
Synthesizing Monitors for Safety Properties
Klaus Havelund,Grigore Rosu +1 more
- 08 Apr 2002
TL;DR: An algorithm which takes a past time LTL formula and generates an efficient dynamic programming algorithm is presented, which is to construct a flexible framework for monitoring and analyzing program executions.
References
The temporal logic of programs
Amir Pnueli
- 30 Sep 1977
TL;DR: A unified approach to program verification is suggested, which applies to both sequential and parallel programs, and the main proof method is that of temporal reasoning in which the time dependence of events is the basic concept.
5.8K
Model checking programs
Willem Visser,Klaus Havelund,Guillaume Brat,Seungjoon Park +3 more
- 11 Sep 2000
TL;DR: A verification and testing environment for Java, called Java PathFinder (JPF), which integrates model checking, program analysis and testing, and uses state compression to handle big states and partial order and symmetry reduction, slicing, abstraction, and runtime analysis techniques to reduce the state space.
Conditional rewriting logic as a unified model of concurrency
José Meseguer,José Meseguer +1 more
TL;DR: Maude as discussed by the authors is a programming language whose modules are rewriting logic theories, which is defined and given denotational and operational semantics, and it provides a simple unification of concurrent programming with functional and object-oriented programming and supports high level declarative programming of concurrent systems.
1.4K
Model Checking JAVA Programs Using Java Pathfinder
TL;DR: An effort to formally analyze, using Spin, a multi-threaded operating system for the Deep-Space 1 space craft, and of previous work in applying existing model checkers and theorem provers to real applications.
Monitoring Java Programs with Java PathExplorer
Klaus Havelund,Grigore Rosu +1 more
- 01 Oct 2001
TL;DR: Recent work on the development of Java PathExplorer (\JPaXX), a tool for monitoring the execution of Java programs, can be used during program testing to gain increased information about program executions, and can potentially furthermore be applied during operation to survey safety critical systems.
311
Related Papers (5)
Amir Pnueli
- 30 Sep 1977
Klaus Havelund,Grigore Rosu +1 more
- 08 Apr 2002
Howard Barringer,Allen Goldberg,Klaus Havelund,Koushik Sen +3 more
- 11 Jan 2004
Klaus Havelund,Grigore Rosu +1 more
- 01 Oct 2001