Generating Oracles from Your Favorite Temporal Speciications

The paper describes a generic tableau algorithm, which is the basis for a general customizable method for producing oracles from temporal logic speciications. A generic argument gives semantic rules with which to build the semantic tableau for a speciication. Parameterizing the tableau algorithm by semantic rules permits it to easily accommodate a variety of temporal operators and provides a clean mechanism for ne-tuning the algorithm to produce eecient oracles. The paper develops conditions that ensure a set of rules results in a correct tableau procedure. It gives sample rules for a variety of linear-time temporal operators and shows how rules are tailored to reduce the size of an oracle. To illustrate the versatility of this method, its application to a high level interval logic is discussed.

[1]  A. Prasad Sistla,et al.  The complexity of propositional linear temporal logics , 1982, STOC '82.

[2]  Joseph Y. Halpern,et al.  Decision procedures and expressiveness in the temporal logic of branching time , 1982, STOC '82.

[3]  P. M. Melliar-Smith,et al.  An interval logic for higher-level temporal reasoning , 1983, PODC '83.

[4]  David A. Plaisted,et al.  A Low Level Language for Obtaining Decision Procedure for Classes of temporal Logics , 1983, Logic of Programs.

[5]  A. Prasad Sistla,et al.  Deciding branching time logic , 1984, STOC '84.

[6]  Roger King,et al.  IDD: An Interactive Distributed Debugger , 1985, ICDCS.

[7]  Amir Pnueli,et al.  The Glory of the Past , 1985, Logic of Programs.

[8]  Pierre Wolper,et al.  The tableau method for temporal logic: an overview , 1985 .

[9]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[10]  Gregor von Bochmann,et al.  Trace Analysis for Conformance and Arbitration Testing , 1989, IEEE Trans. Software Eng..

[11]  Carlo Ghezzi,et al.  TRIO: A logic language for executable specifications of real-time systems , 1990, J. Syst. Softw..

[12]  Victor Jon Griswold,et al.  Core algorithms for autonomous monitoring of distributed systems , 1991, PADD '91.

[13]  Debra J. Richardson,et al.  Specification-based test oracles for reactive systems , 1992, International Conference on Software Engineering.

[14]  Louise E. Moser,et al.  A graphical interval logic for specifying concurrent systems , 1994, TSEM.

[15]  Qing Yu,et al.  Oracles for checking temporal properties of concurrent systems , 1994, SIGSOFT '94.

[16]  Manuel Blum,et al.  Program result-checking: a theory of testing meets a test of theory , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[17]  Debra J. Richardson,et al.  TAOS: Testing with Analysis and Oracle Support , 1994, ISSTA '94.

[18]  Eecient Speciication-based Oracles for Critical Systems , 1996 .