Simulation-Verification: Biting at the State Explosion Problem

Simulation and verification are two conventional techniques for the analysis of specifications of real-time systems. While simulation is relatively inexpensive in terms of execution time, it only validates the behavior of a system for one particular computation path. On the other hand, verification provides guarantees over the entire set of computation paths of a system, but is, in general, very expensive due to the state-space explosion problem. We introduce a new technique: simulation-verification combines the best of both worlds by synthesizing an intermediate analysis method. This method uses simulation to limit the generation of a computation graph to that set of computations consistent with the simulation. This limited computation graph, called a simulation-verification graph, can be one or more orders of magnitude smaller than the full computation graph. A tool, XSVT, is described which implements simulation-verification graphs. Three paradigms for using the new technique are proposed. The paper illustrates the application of the proposed technique via an example of a robot controller for a manufacturing assembly line.

[1]  A. Prasad Sistla,et al.  Quantitative Temporal Reasoning , 1990, CAV.

[2]  Dan Craigen,et al.  Experience with formal methods in critical systems , 1994, IEEE Software.

[3]  Douglas A. Stuart Implementing a verifier for real-time systems , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[4]  Thomas A. Henzinger,et al.  HYTECH: the next generation , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[5]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[6]  Paul Charles Clements Requirements definition languages for real-time embedded systems , 1994 .

[7]  M. Gordon,et al.  Introduction to HOL: a theorem proving environment for higher order logic , 1993 .

[8]  Dan Craigen,et al.  An International Survey of Industrial Applications of Formal Methods , 1992, Z User Workshop.

[9]  Thomas A. Henzinger,et al.  Automatic Symbolic Verification of Embedded Systems , 1996, IEEE Trans. Software Eng..

[10]  Edmund M. Clarke,et al.  Using Temporal Logic for Automatic Verification of Finite State Systems , 1984, Logics and Models of Concurrent Systems.

[11]  Lawrence C. Paulson Introduction to Isabelle , 1999 .

[12]  Insup Lee,et al.  A Resource-Based Prioritized Bisimulation for Real-Time Systems , 1992, Inf. Comput..

[13]  Jozef Hooman,et al.  Specification and Compositional Verification of Real-Time Systems , 1991, Lecture Notes in Computer Science.

[14]  Leslie Lamport,et al.  The temporal logic of actions , 1994, TOPL.

[15]  Rajeev Alur,et al.  The Theory of Timed Automata , 1991, REX Workshop.

[16]  Aloysius K. Mok,et al.  Modechart: A Specification Language for Real-Time Systems , 1994, IEEE Trans. Software Eng..

[17]  Constance L. Heitmeyer,et al.  MT: A toolset for specifying and analyzing real-time systems , 1993, 1993 Proceedings Real-Time Systems Symposium.

[18]  Insup Lee,et al.  A process algebraic approach to the specification and analysis of resource-bound real-time systems , 1994, Proc. IEEE.

[19]  Hans A. Hansson Time and probability in formal design of distributed systems , 1991, DoCS.

[20]  Rance Cleaveland,et al.  Verifying an intelligent structural control system: a case study , 1994, 1994 Proceedings Real-Time Systems Symposium.

[21]  Jonathan S. Ostroff,et al.  Temporal logic for real-time systems , 1989 .

[22]  Sérgio Vale Aguiar Campos,et al.  Computing quantitative characteristics of finite-state real-time systems , 1994, 1994 Proceedings Real-Time Systems Symposium.

[23]  Rance Cleaveland,et al.  The concurrency workbench: a semantics-based tool for the verification of concurrent systems , 1993, TOPL.

[24]  Rajeev Alur,et al.  Model-checking for real-time systems , 1990, [1990] Proceedings. Fifth Annual IEEE Symposium on Logic in Computer Science.

[25]  Farnam Jahanian,et al.  A Method for Verifying Properties of Modechart Specifications , 1988, RTSS.

[26]  Hanêne Ben-Abdallah,et al.  A graphical language with formal semantics for the specification and analysis of real-time systems , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[27]  Aloysius K. Mok,et al.  Formal methods for real-time systems , 1996 .

[28]  Dan Craigen 1 – An International Survey of Industrial Applications of Formal Methods , 1995 .

[29]  Robert S. Boyer,et al.  A computational logic handbook , 1979, Perspectives in computing.

[30]  A. W. Roscoe,et al.  A Timed Model for Communicating Sequential Processes , 1986, Theor. Comput. Sci..

[31]  I. Lee,et al.  Scholarlycommons Versa: a Tool for the Specification and Analysis of Resource-bound Real-time Systems Recommended Citation Versa: a Tool for the Specification and Analysis of Resource-bound Real-time Systems Versa: a Tool for the Specification and Analysis of Resource-bound Real-time Systems Ms-cis- , 2022 .

[32]  Sandro Morasca,et al.  Generating test cases for real-time systems from logic specifications , 1995, TOCS.

[33]  Paul C. Clements,et al.  Modechart Toolset User's Guide , 1994 .

[34]  Zohar Manna,et al.  From Timed to Hybrid Systems , 1991, REX Workshop.

[35]  Thomas A. Henzinger,et al.  Automatic symbolic verification of embedded systems , 1993, 1993 Proceedings Real-Time Systems Symposium.

[36]  Thomas A. Henzinger,et al.  Symbolic Model Checking for Real-Time Systems , 1994, Inf. Comput..

[37]  Insup Lee,et al.  CCSR: A Calculus for Communicating Shared Resources , 1990, CONCUR.

[38]  Aloysius K. Mok,et al.  Safety analysis of timing properties in real-time systems , 1986, IEEE Transactions on Software Engineering.