Formal Methods for the Design of Real-Time Systems

Finite automata and regular languages have been useful in a wide variety of problems in computing, communication and control, including formal modeling and verification. Traditional automata do not admit an explicit modeling of time, and consequently, timed automata [2] were introduced as a formal notation to model the behavior of real-time systems. Timed automata accept timed languages consisting of sequences of events tagged with their occurrence times. Over the years, the formalism has been extensively studied leading to many results establishing connections to circuits and logic, and much progress has been made in developing verification algorithms, heuristics, and tools. This paper provides a survey of the theoretical results concerning decision problems of reachability, language inclusion and language equivalence for timed automata and its variants, with some new proofs and comparisons. We conclude with a discussion of some open problems.

[1]  Holger Hermanns,et al.  A tool for model-checking Markov chains , 2003, International Journal on Software Tools for Technology Transfer.

[2]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[3]  Edwin K. P. Chong,et al.  Discrete event systems: Modeling and performance analysis , 1994, Discret. Event Dyn. Syst..

[4]  Arne Skou,et al.  Formal Verification of a Power Controller Using the Real-Time Model Checker UPPAAL , 1999, ARTS.

[5]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[6]  Brian Nielsen Specification and Test of Real-Time Systems , 2000 .

[7]  Wang Yi,et al.  Efficient Timed Reachability Analysis using Clock Difference Diagrams , 1998 .

[8]  Wang Yi,et al.  Partial Order Reductions for Timed Systems , 1998, CONCUR.

[9]  C. Priami Stochastic -calculus with General Distributions , 1996 .

[10]  Mieke Massink,et al.  Automatic Verification of a Lip-Synchronisation Algorithm Using UPPAAL - Extended Version , 1998 .

[11]  Gérard Berry,et al.  The foundations of Esterel , 2000, Proof, Language, and Interaction.

[12]  William H. Sanders,et al.  Stochastic Activity Networks: Structure, Behavior, and Application , 1985, PNPM.

[13]  Paul Pettersson Modelling and Verification of Real-Time Systems Using Timed Automata : Theory and Practice , 1999 .

[14]  Wang Yi,et al.  A Tool Architecture for the Next Generation of Uppaal , 2002, 10th Anniversary Colloquium of UNU/IIST.

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

[16]  J. Gorter Modeling and analysis of the liveness UPnP extension , 2004 .

[17]  Flavio Corradini Absolute versus relative time in process algebras , 1997, EXPRESS.

[18]  Eli Gafni,et al.  Analysis of timing-based mutual exclusion with random times , 1999, PODC '99.

[19]  Mario Bravetti,et al.  Towards Performance Evaluation with General Distributions in Process Algebras , 1998, CONCUR.

[20]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[21]  D. Cox The analysis of non-Markovian stochastic processes by the inclusion of supplementary variables , 1955, Mathematical Proceedings of the Cambridge Philosophical Society.

[22]  Wang Yi,et al.  Automatic verification of real-time communicating systems by constraint-solving , 1994, FORTE.

[23]  Robbert van Renesse,et al.  A Gossip-Style Failure Detection Service , 2009 .

[24]  Gerard J. Holzmann,et al.  Design and validation of computer protocols , 1991 .

[25]  P. Glynn A GSMP formalism for discrete event systems , 1989, Proc. IEEE.

[26]  Frits W. Vaandrager,et al.  Distributing Timed Model Checking - How the Search Order Matters , 2000, CAV.

[27]  Joost-Pieter Katoen,et al.  The Modest Modeling Tool and Its Implementation , 2003, Computer Performance Evaluation / TOOLS.

[28]  Wang Yi,et al.  UPPAAL - present and future , 2001, Proceedings of the 40th IEEE Conference on Decision and Control (Cat. No.01CH37228).

[29]  Irek Ulidowski,et al.  Extending Process Languages with Time , 1997, AMAST.

[30]  Wang Yi,et al.  Formal Verification of UML Statecharts with Real-Time Extensions , 2002, FASE.

[31]  David Murphy,et al.  On the Ill-Timed but Well-Caused , 1993, CONCUR.

[32]  Kim G. Larsen,et al.  Bisimulation through Probabilistic Testing , 1991, Inf. Comput..

[33]  Theo C. Ruys,et al.  The Bounded Retransmission Protocol Must Be on Time! , 1997, TACAS.

[34]  Kim Guldstrand Larsen,et al.  Formal Modelling and Analysis of an Audio/Video Protocol , 1997 .

[35]  Wang Yi,et al.  Real-Time Behaviour of Asynchronous Agents , 1990, CONCUR.

[36]  Jean-Louis Sourrouille,et al.  Constraint checking in UML modeling , 2002, SEKE '02.

[37]  Alexandre David,et al.  Hierarchical modeling and analysis of timed systems , 2003 .

[38]  Martin L. Puterman,et al.  Markov Decision Processes: Discrete Stochastic Dynamic Programming , 1994 .

[39]  Roberto Gorrieri,et al.  Axiomatising ST-Bisimulation Equivalence , 1994, PROCOMET.

[40]  Rob J. van Glabbeek,et al.  Petri Net Models for Algebraic Theories of Concurrency , 1987, PARLE.

[41]  Fred B. Schneider,et al.  Putting Time into Proof Outlines , 1991, REX Workshop.

[42]  Gian Luigi Ferrari,et al.  Dynamic Matrices and the Cost Analysis of Concurrent Programs , 1995, AMAST.

[43]  William H. Sanders,et al.  The Möbius Framework and Its Implementation , 2002, IEEE Trans. Software Eng..

[44]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[45]  Joseph Sifakis,et al.  Modeling Real-Time Systems-Challenges and Work Directions , 2001, EMSOFT.

[46]  Jarno Guidi,et al.  Enhancing Discovery with Liveness , 2004 .

[47]  H. Lonn,et al.  Formal verification of a TDMA protocol start-up mechanism , 1997, Proceedings Pacific Rim International Symposium on Fault-Tolerant Systems.

[48]  Bran Selic,et al.  Real-time object-oriented modeling , 1994, Wiley professional computing.

[49]  Flavio Corradini,et al.  On testing urgency through laziness over processes with durational actions , 2001, Theor. Comput. Sci..

[50]  Jan A. Bergstra,et al.  Process theory based on bisimulation semantics , 1988, REX Workshop.

[51]  Wang Yi,et al.  New UPPAAL Architecture , 2002 .

[52]  Joost-Pieter Katoen,et al.  A Stochastic Automata Model and its Algebraic Approach , 1997 .

[53]  Philippe Schnoebelen,et al.  Systems and Software Verification, Model-Checking Techniques and Tools , 2001 .

[54]  Elena Fersman,et al.  A Generic Approach to Schedulability Analysis of Real-Time Systems , 2003 .

[55]  Flavio Corradini,et al.  The Expressive Power Of Urgent, Lazy And Busy-Waiting Actions In Timed Processes , 2003, Math. Struct. Comput. Sci..

[56]  Matthew Hennessy,et al.  An efficiency preorder for processes , 1991, Acta Informatica.

[57]  Johan Bengtsson,et al.  Clocks, DBMS and States in Timed Systems , 2002 .

[58]  Kim G. Larsen,et al.  Minimum-Cost Reachability for Priced Timed Automata , 2001, HSCC.

[59]  David Park,et al.  Concurrency and Automata on Infinite Sequences , 1981, Theoretical Computer Science.

[60]  Anneke Kleppe,et al.  Unification of Static and Dynamic Semantics of UML , 2001 .

[61]  Wang Yi,et al.  Modelling and analysis of a commercial field bus protocol , 2000, Proceedings 12th Euromicro Conference on Real-Time Systems. Euromicro RTS 2000.

[62]  Joost-Pieter Katoen,et al.  Modelling stochastic timed systems , 2001 .

[63]  Joseph Sifakis,et al.  A Toolbox For The Verification Of LOTOS Programs , 1992, International Conference on Software Engineering.

[64]  Jan Friso Groote,et al.  Transition System Specifications with Negative Premises , 1993, Theor. Comput. Sci..

[65]  Marco Pistore,et al.  Specification and Verification of Timed Lazy Systems , 1996, MFCS.

[66]  Joseph Sifakis,et al.  Building models of real-time systems from application software , 2003, Proc. IEEE.

[67]  Gordon D. Plotkin,et al.  A structural approach to operational semantics , 2004, J. Log. Algebraic Methods Program..

[68]  Rance Cleaveland,et al.  An algebraic theory of process efficiency , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[69]  Frank Tip,et al.  A survey of program slicing techniques , 1994, J. Program. Lang..

[70]  Mario Bravetti,et al.  The theory of interactive generalized semi-Markov processes , 2002, Theor. Comput. Sci..

[71]  Marco Pistore,et al.  ‘Closed Interval Process Algebra’ versus ‘Interval Process Algebra’ , 2001, Acta Informatica.

[72]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[73]  Holger Hermanns,et al.  MoDeST: A compositional modeling formalism for real-time and stochastic systems , 2004 .

[74]  Philippe Schnoebelen,et al.  Verifying Performance Equivalence for Timed Basic Parallel Processes , 2000, FoSSaCS.

[75]  Matthew Hennessy,et al.  A Temporal Process Algebra , 1990, FORTE.

[76]  Nancy A. Lynch,et al.  Probabilistic Simulations for Probabilistic Processes , 1994, Nord. J. Comput..

[77]  Jozef Hooman,et al.  Concurrency Verification: Introduction to Compositional and Noncompositional Methods , 2001, Cambridge Tracts in Theoretical Computer Science.

[78]  Sergio Yovine,et al.  KRONOS: a verification tool for real-time systems , 1997, International Journal on Software Tools for Technology Transfer.

[79]  Jane Hillston,et al.  A compositional approach to performance modelling , 1996 .

[80]  Rance Cleaveland,et al.  A theory of testing for real-time , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[81]  Gerd Behrmann,et al.  Distributed reachability analysis in timed automata , 2005, International Journal on Software Tools for Technology Transfer.

[82]  Faron Moller,et al.  Relating Processes With Respect to Speed , 1991, CONCUR.

[83]  Joseph Sifakis,et al.  An Overview and Synthesis on Timed Process Algebras , 1991, CAV.

[84]  Joseph Sifakis,et al.  Use of Petri nets for performance evaluation , 1977, Acta Cybern..

[85]  Marco Pistore,et al.  On the semantics of durational actions , 2001, Theor. Comput. Sci..

[86]  Kim G. Larsen,et al.  As Cheap as Possible: Efficient Cost-Optimal Reachability for Priced Timed Automata , 2001, CAV.

[87]  Holger Hermanns,et al.  Interactive Markov Chains , 2002, Lecture Notes in Computer Science.

[88]  Kim G. Larsen,et al.  Model-checking real-time control programs: verifying LEGO MINDSTORMSTM systems using UPPAAL , 2000, Proceedings 12th Euromicro Conference on Real-Time Systems. Euromicro RTS 2000.

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

[90]  William H. Sanders,et al.  Stochastic Activity Networks: Formal Definitions and Concepts , 2002, European Educational Forum: School on Formal Methods and Performance Analysis.

[91]  Kim G. Larsen,et al.  Scaling up Uppaal Automatic Verification of Real-Time Systems Using Compositionality and Abstraction , 2000, FTRTFT.

[92]  Joseph Sifakis,et al.  An Algebraic Framework for Urgency , 2000, Inf. Comput..

[93]  Jan A. Bergstra,et al.  Real time process algebra , 1991, Formal Aspects of Computing.

[94]  Marco Roccetti,et al.  A Theory of Processes with Durational Actions , 1995, Theor. Comput. Sci..

[95]  Iulian Ober,et al.  Model checking of UML models via a mapping to communicating extended timed automata , 2003 .

[96]  Pedro R. D'Argenio,et al.  Algebras and Automata for Timed and Stochastic Systems , 1999 .

[97]  Gerd Behrmann,et al.  Efficient Guiding Towards Cost-Optimality in UPPAAL , 2001, TACAS.

[98]  Joost P. Katoen,et al.  Concepts, Algorithms, and Tools for Model Checking , 1999 .

[99]  Mihaela Sighireanu,et al.  On the Introduction of Exceptions in E-LOTOS , 1996, FORTE.

[100]  Kim G. Larsen,et al.  Exact Acceleration of Real-Time Model Checking , 2002, Theory and Practice of Timed Systems @ ETAPS.

[101]  William H. Sanders,et al.  On integrating the MOBIUS and MODEST modeling tools , 2003, 2003 International Conference on Dependable Systems and Networks, 2003. Proceedings..

[102]  Wang Yi,et al.  New Generation of UPPAAL , 1998 .

[103]  Paola Inverardi,et al.  On the Relationships among four Timed Process Algebras , 1999, Fundam. Informaticae.

[104]  Faron Moller,et al.  A Temporal Calculus of Communicating Systems , 1990, CONCUR.

[105]  R. Segala,et al.  Automatic Verification of Real-Time Systems with Discrete Probability Distributions , 1999, ARTS.

[106]  Wang Yi,et al.  Unification & Sharing in Timed Automata Verification , 2003, SPIN.

[107]  Gerard J. Holzmann An analysis of bitstate hashing , 1995 .

[108]  Michel Raynal,et al.  Group membership failure detection: a simple protocol and its probabilistic analysis , 1999, Distributed Syst. Eng..

[109]  Holger Hermanns,et al.  From StoCharts to MoDeST: a comparative reliability analysis of train radio communications , 2005, WOSP '05.

[110]  Wang Yi,et al.  UPPAAL Implementation Secrets , 2002, FTRTFT.

[111]  Mario Bravetti,et al.  Deciding and axiomatizing weak ST bisimulation for a process algebra with recursion and action refinement , 2002, TOCL.

[112]  Rob J. van Glabbeek,et al.  Branching time and abstraction in bisimulation semantics , 1996, JACM.

[113]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[114]  Holger Hermanns,et al.  Synthesis and stochastic assessment of schedules for lacquer production , 2004 .

[115]  Kim G. Larsen,et al.  Guided Synthesis of Control Programs Using UPPAAL , 2000, Nord. J. Comput..

[116]  Joseph Sifakis,et al.  Compiling Real-Time Specifications into Extended Automata , 1992, IEEE Trans. Software Eng..

[117]  Wang Yi,et al.  Efficient verification of real-time systems: compact data structure and state-space reduction , 1997, Proceedings Real-Time Systems Symposium.

[118]  Marco Roccetti,et al.  Towards Performance Evaluation in Process Algebras , 1993, AMAST.

[119]  Wang Yi,et al.  Formal design and analysis of a gear controller , 1998, International Journal on Software Tools for Technology Transfer.

[120]  Joseph Sifakis,et al.  An Overview and Synthesis on Timed Process Algebras , 1991, REX Workshop.

[121]  Wang Yi,et al.  Uppaal in a nutshell , 1997, International Journal on Software Tools for Technology Transfer.

[122]  Kare Jelling Kristoffersen,et al.  Compositional Verification of Concurrent Systems , 1998 .

[123]  Gerd Behrmann,et al.  Adding Symmetry Reduction to Uppaal , 2003, FORMATS.

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