Advertisement

Forward and backward simulations for timing-based systems

  • Nancy Lynch
  • Frits Vaandrager
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 600)

Abstract

A general automaton model for timing-based systems is presented and is used as the context for developing a variety of simulation proof techniques for such systems. As a first step, a comprehensive overview of simulation techniques for simple untimed automata is given. In particular, soundness and completeness results for (1) refinements, (2) forward and backward simulations, (3) forward-backward and backward-forward simulations, and (4) history and prophecy relations are given. History and prophecy relations are new and are abstractions of the history variables of Owicki and Gries and the prophecy variables of Abadi and Lamport, respectively. As a subsequent step, it is shown how most of the results for untimed automata can be carried over to the setting of timed automata. In fact, many of the results for the timed case are obtained as consequences of the analogous results for the untimed case.

Keywords

Simulations timing-based systems real-time timed automata refinement mappings forward simulations backward simulations forward-backward simulations backward-forward simulations history variables prophecy variables history relations prophecy relations 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    M. Abadi and L. Lamport. The existence of refinement mappings. Theoretical Computer Science, 2(82):253–284, 1991.CrossRefGoogle Scholar
  2. [2]
    J.C.M. Baeten and J.A. Bergstra. Real time process algebra. Journal of Formal Aspects of Computing Science, 3(2):142–188, 1991.CrossRefGoogle Scholar
  3. [3]
    G. Berry and L. Cosserat. The ESTEREL synchronous programming language and its mathematical semantics. In A.W. Roscoe & G. Winskel S.D. Brookes, editor, Seminar on Concurrency, volume 197 of Lecture Notes in Computer Science, pages 389–448. Springer-Verlag, 1984.Google Scholar
  4. [4]
    R. Gerber and I. Lee. The formal treatment of priorities in real-time computation. In Proceedings 6th IEEE Workshop on Real-Time Software and Operating Systems, 1989.Google Scholar
  5. [5]
    R. Gerth. Foundations of compositional program refinement (first version). In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, REX Workshop on Stepwise Refinement of Distributed Systems: Models, Formalism, Correctness, Mook, The Netherlands 1989, volume 430 of Lecture Notes in Computer Science, pages 777–560. Springer-Verlag, 1990.Google Scholar
  6. [6]
    A. Ginzburg. Algebraic Theory of Automata. Academic Press, New York-London, 1968.Google Scholar
  7. [7]
    J.F. Groote. Specification and verification of real time systems in ACP. Report CS-R9015, CWI, Amsterdam, 1990. An extended abstract appeared in L. Logrippo, R.L. Probert and H. Ural, editors, Proceedings 10th International Symposium on Protocol Specification, Testing and Verification, Ottawa, pages 261–274, 1990.Google Scholar
  8. [8]
    J. He. Process simulation and refinement. Journal of Formal Aspects of Computing Science, 1:229–241, 1989.CrossRefGoogle Scholar
  9. [9]
    G.A.R. Hoare, J. He, and J.W. Sanders. Prespecification in data refinement. Information Processing Letters, 25:71–76, 1987.CrossRefGoogle Scholar
  10. [10]
    B. Jonsson. Compositional Verification of Distributed Systems. PhD thesis, Department of Computer Systems, Uppsala University, 1987. DoCS 87/09.Google Scholar
  11. [11]
    B. Jonsson. Modular verification of asynchronous networks. In Proceedings of the 6th Annual ACM Symposium on Principles of Distributed Computing, Vancouver, Canada, pages 152–166, 1987.Google Scholar
  12. [12]
    B. Jonsson. On decomposing and refining specifications of distributed systems. In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, REX Workshop on Stepwise Refinement of Distributed Systems: Models, Formalism, Correctness, Mook, The Netherlands 1989, volume 430 of Lecture Notes in Computer Science, pages 361–387. Springer-Verlag, 1990.Google Scholar
  13. [13]
    B. Jonsson. Simulations between specifications of distributed systems. In J.C.M. Baeten and J.F. Groote, editors, Proceedings CONCUR 91, Amsterdam, volume 527 of Lecture Notes in Computer Science, pages 346–360. Springer-Verlag, 1991.Google Scholar
  14. [14]
    M.B. Josephs. A state-based approach to communicating processes. Distributed Computing, 3:9–18, 1988.CrossRefGoogle Scholar
  15. [15]
    N. Klarlund and F.B. Schneider. Verifying safety properties using infinite-state automata. Technical Report 89-1039, Department of Computer Science, Cornell University, Ithaca, New York, 1989.Google Scholar
  16. [16]
    D.E. Knuth. Fundamental Algorithms, volume 1 of The Art of Computer Programming. Addison-Wesley, Reading, Massachusetts, 1973. Second edition.Google Scholar
  17. [17]
    L. Lamport. Specifying concurrent program modules. ACM Transactions on Programming Languages and Systems, 5(2):190–222, 1983.CrossRefGoogle Scholar
  18. [18]
    N.A. Lynch. Multivalued possibilities mappings. In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, REX Workshop on Stepwise Refinement of Distributed Systems: Models, Formalism, Correctness, Mook, The Netherlands 1989, volume 430 of Lecture Notes in Computer Science, pages 519–543. Springer-Verlag, 1990.Google Scholar
  19. [19]
    N.A. Lynch and H. Attiya. Using mappings to prove timing properties. In Proceedings of the 9th Annual ACM Symposium on Principles of Distributed Computing, Quebec, Canada, August 1990. Expanded version: Technical Memo MIT/LCS/TM-412.C, Laboratory for Computer Science, MIT, March 1991. Submitted for publication.Google Scholar
  20. [20]
    N.A. Lynch and M.R. Tuttle. Hierarchical correctness proofs for distributed algorithms. In Proceedings of the 6th Annual ACM Symposium on Principles of Distributed Computing, Vancouver, Canada, pages 137–151, August 1987. A full version is available as MIT Technical Report MIT/LCS/TR-387.Google Scholar
  21. [21]
    M. Merritt. Completeness theorems for automata. In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, REX Workshop on Stepwise Refinement of Distributed Systems: Models, Formalism, Correctness, Mook, The Netherlands 1989, volume 430 of Lecture Notes in Computer Science, pages 544–560. Springer-Verlag, 1990.Google Scholar
  22. [22]
    M. Merritt, F. Modugno, and M. Tuttle. Time constrained automata. In J.C.M. Baeten and J.F. Groote, editors, Proceedings CONCUR 91, Amsterdam, volume 527 of Lecture Notes in Computer Science, pages 408–423. Springer-Verlag, 1991.Google Scholar
  23. [23]
    R. Milner. Communication and Concurrency. Prentice-Hall International, Englewood Cliffs, 1989.Google Scholar
  24. [24]
    F. Moller and C. Tofts. A temporal calculus of communicating systems. In J.C.M. Baeten and J.W. Klop, editors, Proceedings CONCUR 90, Amsterdam, volume 458 of Lecture Notes in Computer Science, pages 401–415. Springer-Verlag, 1990.Google Scholar
  25. [25]
    X. Nicollin, J.-L. Richier, J. Sifakis, and J. Voiron. ATP: An algebra for timed processes. In M. Broy and C.B. Jones, editors, Proceedings IFIP TC2 Working Conference on Programming Concepts and Methods, Sea of Gallilea, Israel, pages 402–429, 1990.Google Scholar
  26. [26]
    X. Nicollin, J. Sifakis, and S. Yovine. From ATP to timed graphs and hybrid systems, 1991. This volume.Google Scholar
  27. [27]
    S. Owicki and D. Gries. An axiomatic proof technique for parallel programs. Acta Informatica, 6(4):319–340, 1976.CrossRefGoogle Scholar
  28. [28]
    D.M.R. Park. Concurrency and automata on infinite sequences. In P. Deussen, editor, 5th GI Conference, volume 104 of Lecture Notes in Computer Science, pages 167–183. Springer-Verlag, 1981.Google Scholar
  29. [29]
    G.M. Reed and A.W. Roscoe. A timed model for communicating sequential processes. Theoretical Computer Science, 58:249–261, 1988.CrossRefGoogle Scholar
  30. [30]
    E. W. Stark. Proving entailment between conceptual state specifications. Theoretical Computer Science, 56:135–154, 1988.CrossRefGoogle Scholar
  31. [31]
    F.W. Vaandrager and N.A. Lynch. Process algebras for timed automata, 1991. In preparation.Google Scholar
  32. [32]
    Wang Yi. Real-time behaviour of asynchronous agents. In J.C.M. Baeten and J.W. Klop, editors, Proceedings CONCUR 90, Amsterdam, volume 458 of Lecture Notes in Computer Science, pages 502–520. Springer-Verlag, 1990.Google Scholar
  33. [33]
    A. Zwarico. Timed Acceptance: An Algebra of Time Dependent Computing. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, 1988.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  • Nancy Lynch
    • 1
  • Frits Vaandrager
    • 1
  1. 1.MIT Laboratory for Computer ScienceCambridgeUSA

Personalised recommendations