Selective Quantitative Analysis and Interval Model Checking: Verifying Different Facets of a System

In this work we propose a verification methodology consisting of selective quantitative timing analysis and interval model checking. Our methods can aid not only in determining if a system works correctly, but also in understanding how well the system works. The selective quantitative algorithms compute minimum and maximum delays over a selected subset of system executions. A linear-time temporal logic (LTL) formula is used to select either infinite paths or finite intervals over which the computation is performed. We show how tableau for LTL formulas can be used for selecting either paths or intervals and also for model checking formulas interpreted over paths or intervals.To demonstrate the usefulness of our methods we have verified a complex and realistic distributed real-time system. Our tool has been able to analyze the system and to compute the response time of the various components. Moreover, we have been able to identify inefficiencies that caused the response time to increase significantly (about 50%). After changing the design we not only verified that the response time was lower, but were also able to determine the causes for the poor performance of the original model using interval model checking.

[1]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic , 1981, Logic of Programs.

[2]  Ieee Standards Board IEEE standard backplane bus specification for multiprocessor architectures : futurebus : an American national standard , 1988 .

[3]  Sérgio Vale Aguiar Campos,et al.  Timing analysis of industrial real-time systems , 1995, Proceedings of 1995 IEEE Workshop on Industrial-Strength Formal Specification Techniques.

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

[5]  Rance Cleaveland,et al.  RTSL: a language for real-time schedulability analysis , 1993, 1993 Proceedings Real-Time Systems Symposium.

[6]  R. Obenza,et al.  Rate monotonic analysis for real-time systems , 1993, Computer.

[7]  Fausto Giunchiglia,et al.  Verification of a safety-critical railway interlocking system with real-time constraints , 1998, Digest of Papers. Twenty-Eighth Annual International Symposium on Fault-Tolerant Computing (Cat. No.98CB36224).

[8]  Shirish S. Sathaye,et al.  Generalized rate-monotonic scheduling theory: a framework for developing real-time systems , 1994, Proc. IEEE.

[9]  Sérgio Vale Aguiar Campos,et al.  Verifying the performance of the PCI local bus using symbolic techniques , 1995, Proceedings of ICCD '95 International Conference on Computer Design. VLSI in Computers and Processors.

[10]  Kenneth L. McMillan,et al.  Symbolic model checking: an approach to the state explosion problem , 1992 .

[11]  E. Clarke,et al.  Symbolic Model Checking : IO * ’ States and Beyond * , 1992 .

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

[13]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[14]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[15]  Zohar Manna,et al.  The anchored version of the temporal framework , 1988, REX Workshop.

[16]  Chin-Laung Lei,et al.  Modalities for model checking (extended abstract): branching time strikes back , 1985, POPL.

[17]  E. Emerson,et al.  Modalities for model checking (extended abstract): branching time strikes back , 1985, ACM-SIGACT Symposium on Principles of Programming Languages.

[18]  Edmund M. Clarke,et al.  Another Look at LTL Model Checking , 1994, Formal Methods Syst. Des..

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

[20]  Mordechai Ben-Ari,et al.  The temporal logic of branching time , 1981, POPL '81.

[21]  Amir Pnueli,et al.  Checking that finite state concurrent programs satisfy their linear specification , 1985, POPL.

[22]  A. Pnueli The Temporal Semantics of Concurrent Programs , 1979, Theor. Comput. Sci..

[23]  Jay K. Strosnider,et al.  Fixed Priority Scheduling Theory for Hard Real-Time Systems , 1991 .

[24]  Conrado Daws,et al.  Two examples of verification of multirate timed automata with Kronos , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[25]  Farn Wang,et al.  Symbolic model checking for event-driven real-time systems , 1997, TOPL.

[26]  Sérgio Vale Aguiar Campos,et al.  Verus: a tool for quantitative analysis of finite-state real-time systems , 1995, Workshop on Languages, Compilers, & Tools for Real-Time Systems.

[27]  Louise E. Moser,et al.  Really visual temporal reasoning , 1993, 1993 Proceedings Real-Time Systems Symposium.

[28]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[29]  Pierre Wolper,et al.  An Automata-Theoretic Approach to Automatic Program Verification (Preliminary Report) , 1986, LICS.

[30]  Grzegorz Rozenberg,et al.  Linear Time, Branching Time and Partial Order in Logics and Models for Concurrency , 1988, Lecture Notes in Computer Science.

[31]  Farn Wang,et al.  Timing behavior analysis for real-time systems , 1995, Proceedings of Tenth Annual IEEE Symposium on Logic in Computer Science.

[32]  Edmund M. Clarke,et al.  A quantitative approach to the formal verification of real-time systems , 1996 .

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