Skip to main content

Temporal verification of simulation and refinement

  • Conference paper
  • First Online:
A Decade of Concurrency Reflections and Perspectives (REX 1993)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 803))

Abstract

The paper presents temporal logic methods for proving simulation and refinement relations between programs. After introducing the notions of fair transition systems and the specification language of temporal logic, we present proof rules for verifying properties of programs. We then define the relations of simulation and refinement between programs and relate them to inclusion relations between computations and observations of the compared systems.

We then show that these semantic definitions can be formalized in temporal logic by the use of the temporal and observational semantics formulas. This representation expresses simulation and refinement as implications between a pair of such formulas. We provide proof rules, based on the rules for verifying program properties. The proof rules are illustrated on several simple examples. Towards the end, we recognize the usefulness of having a stuttering robust version of temporal logic.

The second part of the paper presents a proposed temporal logic, called TLR, which is insensitive to stuttering. This logic is interpreted over sequences of sarnpling points, alternating between persistent and transient sample points. This logic possesses an idempotent next-time operator, which gives some insight into its stuttering robustness. We present a decision procedure and a complete axiomatic system for the propositional version of TLR. It is shown that, if all system variables are taken to be left-continuous, then most of the rules of regular temporal logic are still sound for TLR.

Finally, we present a stronger proof rule for refinement, and illustrate its use to prove refinement of two programs that cannot be done within the regular temporal logic framework.

This research was supported in part by the National Science Foundation under grant CCR-92-23226, by the Defense Advanced Research Projects Agency under contract NAG2-703, by the United States Air Force Office of Scientific Research under contract F49620-93-1-0139, by the European Community ESPRIT Basic Research Action Project 6021 (REACT), and by the France-Israel project for cooperation in Computer Science.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Abadi and L. Lamport. The existence of refinement mappings. In Proc. 3rd IEEE Symp. Logic in Comp. Sci., pages 165–175, 1988.

    Google Scholar 

  2. M. Ben-Ari, Z. Manna, and A. Pnueli. The temporal logic of branching time. Acta Informatica, 20:207–226, 1983.

    Google Scholar 

  3. H. Barringer, R. Kuiper, and A. Pnueli. A really abstract concurrent model and its temporal logic. In Proc. 13th ACM Symp. Princ. of Prog. Lang., pages 173–183, 1986.

    Google Scholar 

  4. J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors. Stepwise Refinement of Distributed Systems: Models, Formalism, Correctness. Lecture Notes in Computer Science 430. Springer-Verlag, 1990.

    Google Scholar 

  5. E. Diepstraten and R. Kuiper. Abadi, Lamport, and Stark: Towards a proof theory for stuttering, dense domains and refinmement mappings. In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Stepwise Refinement of Distributed Systems: Models, Formalism, Correctness, Lecture Notes in Computer Science 430, pages 208–238. Springer-Verlag, 1990.

    Google Scholar 

  6. D. Gabbay, A. Pnueli, S. Shelah, and J. Stavi. On the temporal analysis of fairness. In Proc. 7th ACM Symp. Princ. of Prog. Lang., pages 163–173, 1980.

    Google Scholar 

  7. L. Lamport. Specifying concurrent program modules. ACM Trans. Prog. Lang. Sys., 5:190–222, 1983.

    Google Scholar 

  8. L. Lamport. What good is temporal logic. In R.E.A. Mason, editor, Proc. IFIP 9th World Congress, pages 657–668. North-Holland, 1983.

    Google Scholar 

  9. L. Lamport. The temporal logic of actions. Technical Report 79, Digital Equipment Corporation, Systems Research Center, 1991. To appear in Transactions on Programming Languages and Systems.

    Google Scholar 

  10. L. Lamport. The existence of refinement mapping. TLA Note 92-03-19, March 1992.

    Google Scholar 

  11. O. Lichtenstein, A. Pnueli, and L. Zuck. The glory of the past. In Proc. Conf. Logics of Programs, volume 193 of Lect. Notes in Comp. Sci., pages 196–218. Springer-Verlag, 1985.

    Google Scholar 

  12. Z. Manna and A. Pnueli. How to cook a temporal proof system for your pet language. In Proc. 10th ACM Symp. Princ. of Prog. Lang., pages 141–154, 1983.

    Google Scholar 

  13. Z. Manna and A. Pnueli. Adequate proof principles for invariance and liveness properties of concurrent programs. Sci. Comp. Prog., 32:257–289, 1984.

    Google Scholar 

  14. Z. Manna and A. Pnueli. Completing the temporal picture. Theor. Comp. Sci., 83(1):97–130, 1991.

    Google Scholar 

  15. Z. Manna and A. Pnueli. The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer-Verlag, New York, 1991.

    Google Scholar 

  16. Z. Manna and A. Pnueli. Temporal Verification of Reactive Systems. Springer-Verlag, New York, 1994. To appear.

    Google Scholar 

  17. A. Pnueli. System specification and refinement in temporal logic. In R.K. Shyamasundar, editor, Foundations of Software Technology and Theoretical Computer Science, volume 652 of Lect. Notes in Comp. Sci., pages 1–38. Springer-Verlag, 1992.

    Google Scholar 

  18. A. Pnueli. The temporal semantics of concurrent programs. Theoretical Computer Science, 13:1–20, 81.

    Google Scholar 

  19. E.W. Stark. Foundations of a Theory of Specifications for Distributed Systems. PhD thesis, M.I.T, 1984.

    Google Scholar 

  20. E.W. Stark. Proving entailments between conceptual state specifications. Theor. Comp. Sci., 56:135–154, 1988.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

J. W. de Bakker W. -P. de Roever G. Rozenberg

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kesten, Y., Manna, Z., Pnueli, A. (1994). Temporal verification of simulation and refinement. In: de Bakker, J.W., de Roever, W.P., Rozenberg, G. (eds) A Decade of Concurrency Reflections and Perspectives. REX 1993. Lecture Notes in Computer Science, vol 803. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58043-3_22

Download citation

  • DOI: https://doi.org/10.1007/3-540-58043-3_22

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-58043-0

  • Online ISBN: 978-3-540-48423-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics