Skip to main content

A temporal-logic based compositional proof system for real-time message passing

  • Submitted Presentations
  • Conference paper
  • First Online:
PARLE '89 Parallel Architectures and Languages Europe (PARLE 1989)

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

Abstract

A compositional proof system is formulated to verify that a distributed system meets a real-time temporal logic specification. The specifications use linear temporal logic extended with a quantitative notion of time to express real-time properties. The programming language is a real-time version of CSP, akin to OCCAM, including nested parallelism with synchronous communication via channels. Concurrency is modelled as maximal parallelism, implying that no process waits unnecessarily. A denotational semantics of the programming language is formulated in which communications are represented by (possibly overlapping) intervals along a (possibly dense) time scale. The proof system is sound with respect to this semantics. Compositionality of our proof system makes it possible to verify design steps while developing a program. An example demonstrates our specifications and the use of the formalism during program development. Finally, the axiomatic system is shown to be complete relative to provability of valid formulae in real-time temporal logic.

This work was supported by ESPRIT Project 937: Debugging and Specification of Ada Real-Time Embedded Systems (DESCARTES).

The work described here was done while this author was in the computer science department at Cornell University.

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.

Similar content being viewed by others

References

  1. The Programming Language Ada, Reference Manual. LNCS 155, Springer-Verlag, 1983.

    Google Scholar 

  2. A. Bernstein and P.K. Harter, Jr. Proving real-time properties of programs with temporal logic. In Proc. of the 8th Symp. on Operating System Principles, pages 1–11, 1981.

    Google Scholar 

  3. H. Barringer, R. Kuiper, and A. Pnueli. Now you may compose temporal logic specifications. In Proc. of the 16th Symp. on Theory of Computing, pages 51–63, 1984.

    Google Scholar 

  4. Zhou Chao Chen and C.A.R. Hoare. Partial correctness of Communicating Sequential Processes. In Proc. of the IEEE International Conf. on Distributed Computing Systems, pages 1–12, 1981.

    Google Scholar 

  5. C. Huizing, R. Gerth, and W.P. de Roever. Full abstraction of a real-time denotational semantics for an OCCAM-like language. In Proc. of the 14th POPL, pages 223–237, 1987.

    Google Scholar 

  6. K. Hay, S. Manchanda, and R. Schlichting. A temporal logic for proving real-time properties of distributed programs. Technical Report TR 88-40, Department of Computer Science, The University of Arizona, Tucson, Arizona, 1988.

    Google Scholar 

  7. C.A.R. Hoare. Communicating Sequential Processes. Comm. of the ACM, 21(8):666–677, 1978.

    Google Scholar 

  8. J. Hooman. A compositional proof theory for real-time distributed message passing. In Parallel Architectures and Languages Europe, pages 315–332. LNCS 259, Springer-Verlag, 1987.

    Google Scholar 

  9. J. Hooman and J. Widom. A temporal-logic based compositional proof system for real-time message passing. Technical report, Department of Mathematics and Computing Science, Eindhoven University of Technology, The Netherlands, 1989.

    Google Scholar 

  10. R. Koymans and W.P. de Roever. Examples of a real-time temporal logic specification. In The Analysis of Concurrent Systems, pages 231–252. LNCS 207, Springer-Verlag, 1983.

    Google Scholar 

  11. R. Koymans, R. Kuiper, and E. Zijlstra. Specifying real-time and message passing systems with real-time temporal logic. In Proc. of the 4th Esprit Conf., pages 311–324, 1987.

    Google Scholar 

  12. R. Koymans, R.K. Shyamasundar, W.P. de Roever, R. Gerth, and S. Arun-Kumar. Compositional semantics for real-time distributed computing. Information and Computation, 79(3):210–256, 1988.

    Google Scholar 

  13. R. Koymans, J. Vytopyl, and W.P. de Roever. Real-time programming and asynchronous message passing. In Proc. of the 2nd PODC, pages 187–197, 1983.

    Google Scholar 

  14. Z. Manna and A. Pnueli. Verification of concurrent programs: a temporal proof system. In Foundations of Computer Science IV, Distributed Systems: Part 2, volume 159 of Mathematical Centre Tracts, pages 163–255, 1982.

    Google Scholar 

  15. V. Nguyen, A. Demers, D. Gries, and S. Owicki. A model and temporal proof system for networks of processes. Distributed Computing, 1(1):7–25, 1986.

    Google Scholar 

  16. INMOS Limited. OCCAM 2 Reference Manual, 1988.

    Google Scholar 

  17. S. Owicki and L. Lamport. Proving liveness poperties of concurrent programs. ACM Transactions on Programming Languages and Systems, 4(3):455–495, 1982.

    Google Scholar 

  18. A. Pnueli and E. Harel. Applications of temporal logic to the specification of real-time systems. In Formal Techniques in Real-Time and Fault-Tolerant Systems, pages 84–98. LNCS 331, 1988.

    Google Scholar 

  19. A. Pnueli. The temporal logic of programs. In Proc. of the 18th FOCS, pages 46–57, 1977.

    Google Scholar 

  20. A.U. Shankar and S.S. Lam. Time-dependent distributed systems: proving safety, liveness and real-time properties. Distributed Computing, 2:61–79, 1987.

    Google Scholar 

  21. D.E. Shasha, A. Pnueli, and W. Ewald. Temporal verification of carrier-sense local area network protocols. In Proc. of the 11th POPL, pages 54–65, 1984.

    Google Scholar 

  22. J. Widom, D. Gries, and F.B. Schneider. Completeness and incompleteness of trace-based network proof systems. In Proc. of the 14th POPL, pages 27–38, 1987.

    Google Scholar 

  23. J. Zwiers, W.P. de Roever, and P. van Emde Boas. Compositionality and concurrent networks: soundness and completeness of a proofsystem. In Proc. of the 12th ICALP, pages 509–519. LNCS 194, Springer-Verlag, 1985.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Eddy Odijk Martin Rem Jean-Claude Syre

Rights and permissions

Reprints and permissions

Copyright information

© 1989 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hooman, J., Widom, J. (1989). A temporal-logic based compositional proof system for real-time message passing. In: Odijk, E., Rem, M., Syre, JC. (eds) PARLE '89 Parallel Architectures and Languages Europe. PARLE 1989. Lecture Notes in Computer Science, vol 366. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-51285-3_56

Download citation

  • DOI: https://doi.org/10.1007/3-540-51285-3_56

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-51285-1

  • Online ISBN: 978-3-540-46184-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics