Specifying real-time properties with metric temporal logic

Abstract

This paper is motivated by the need for a formal specification method for real-time systems. In these systemsquantitative temporal properties play a dominant role. We first characterize real-time systems by giving a classification of such quantitative temporal properties. Next, we extend the usual models for temporal logic by including a distance function to measure time and analyze what restrictions should be imposed on such a function. Then we introduce appropriate temporal operators to reason about such models by turning qualitative temporal operators into (quantitative) metric temporal operators and show how the usual quantitative temporal properties of real-time systems can be expressed in this metric temporal logic. After we illustrate the application of metric temporal logic to real-time systems by several examples, we end this paper with some conclusions.

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

References

  1. The Programming Language Ada, Reference Manual, 1983.Lecture Notes in Computer Science, vol. 155, Berlin: Springer.

    Google Scholar 

  2. Barringer, H. and Kuiper, R. 1985a. Hierarchical Development of Concurrent Systems in a Temporal Logic Framework. Proceedings of a Seminar on Concurrency, Carnegie Mellon University, Pittsburgh, pp. 35–61, July 1984;Lecture Notes in Computer Science, vol. 197, Berlin: Springer.

    Google Scholar 

  3. Barringer, H. and Kuiper, R. 1985b. Towards the Hierarchical Temporal Logic Specification of Concurrent Systems. In Denvir T. et al.,Lecture Notes in Computer Science, vol. 207, Berlin: Springer, pp. 156–183.

    Google Scholar 

  4. Barringer, H., Kuiper, R. and Pnueli, A. 1984. Now You May Compose Temporal Logic Specifications.Proceedings of the Sixteenth ACM Symposium on the Theory of Computing, pp. 51–63.

  5. Barringer, H., Kuiper, R. and Pnueli, A. 1986. A Really Abstract Concurrent Model and its Temporal Logic.Proceedings of the Thirteenth ACM Symposium on the Principles of Programming Languages, pp. 173–183.

  6. Benthem, J.F.A.K.van. 1983.The Logic of Time. Dordrecht: Reidel.

    Google Scholar 

  7. Bernstein, A. and Harter, P.K. Jr. 1981. Proving Real-Time Properties of Programs with Temporal Logic,Proceedings of the Eighth ACM Symposium on Operating System Principles, pp. 1–11.

  8. Burgess, J.P. 1984. Basic Tense Logic. InHandbook of Philosophical Logic, vol. II, (Gabbay and Guenthner, eds.), pp. 89–133.

  9. CHILL Recommendation Z.200 (CHILL Language Definition). 1980. C.C.I.T.T. Study Group XI.

  10. Cocchiarella, N.B. 1984. Philosophical Perspectives on Quantification in Tense and Modal Logic. InHandbook of Philosophical Logic, vol. II, (Gabbay and Guenthner, eds.), pp. 309–353.

  11. Denvir, T., Harwood, W., Jackson, M. and Ray, M. 1985. The Analysis of Concurrent Systems. Proceedings of a Tutorial and Workshop, Cambridge University, September 1983,Lecture Notes in Computer Science, vol. 207, Berlin: Springer.

    Google Scholar 

  12. Gabbay, D. and Guenthner, F., (eds.) 1984.Handbook of Philosophical Logic, vol. II. Dordrecht: Reidel.

    Google Scholar 

  13. Garson, J.W. 1984. Quantification in Modal Logic. InHandbook of Philosophical Logic, vol. II, (Gabbay and Guenthner, eds.) pp. 249–307.

  14. Ghezzi, C., Mandrioli, D. and Morzenti, A. 1989. TRIO: A Logic Language for Executable Specifications of Real-Time Systems. Report 89-006, Dipartimento di Elettronica, Politecnico di Milano.

  15. Goldblatt, R. 1982. Axiomatising the Logic of Computer Programming.Lecture Notes in Computer Science, vol. 130, Berlin: Springer.

    Google Scholar 

  16. Harel, D. 1984. Dynamic Logic, InHandbook of Philosophical Logic, vol. II, (Gabbay and Guenthner, eds.), pp. 497–604.

  17. Hooman, J. and Widom, J. 1989. A Temporal-Logic Based Compositional Proof System for Real-Time Message Passing, to appear in Proceedings of the Conference on Parallel Architectures and Languages Europe (PARLE) '89,Lecture Notes in Computer Science, vol. 366 Berlin: Springer, pp. 424–441.

    Google Scholar 

  18. Jahanian, F. and Mok, A.K. 1986. Safety Analysis of Timing Properties in Real-Time Systems.IEEE Transactions on Software Engineering, 12, pp. 890–904.

    Google Scholar 

  19. Jahanian, F. and Mok, A.K. 1987. A Graph-Theoretic Approach for Timing Analysis and its Implementation.IEEE Transactions on Computers, vol. C-36, pp. 961–975.

    Google Scholar 

  20. Joseph, M. and Goswami, A. 1988. Formal Description of Real-Time Systems: A Review. Research Report RR129, Department of Computer Science, University of Warwick.

  21. Katz, S. and Peled, D. 1987. Interleaving Set Temporal Logic,Proceedings of the Sixth Annual ACM Symposium on Principles of Distributed Computing, pp. 178–190.

  22. Koymans, R., Kuiper, R. and Zijlstra, E. 1987. Specifying Message Passing and Real-Time Systems with Real-Time Temporal Logic.Proceedings of the Fourth Annual ESPRIT Conference, Amsterdam: North-Holland, pp. 311–324.

    Google Scholar 

  23. Koymans, R. 1989. Specifying Message Pasing and Time-Critical Systems with Temporal Logic. Ph.D. Thesis, Eindhoven University of Technology.

  24. Koymans, R., Shyamasundar, R.K., de Roever, W.-P., Gerth, R. and Arun-Kumar, S. 1985. Compositional Semantics for Real-Time Distributed Computing. Proceedings of the Workshop on Logics of Programs '85,Lecture Notes in Computer Science, vol. 193, Berlin: Springer, pp. 167–189, (extended version appeared in Information and Computation, Volume 79, Number 3, pp. 210–256, Academic Press, December 1988).

    Google Scholar 

  25. Koymans, R., Vytopil, J. and de Roever, W.-P. 1983. Real-Time Programming and Asynchronous Message Passing.Proceedings of the Second Annual ACM Symposium on Principles of Distributed Computing, pp. 187–197.

  26. Lamport, L. 1983a. What Good is Temporal Logic?Proceedings of Information Processing (IFIP) '83, (Mason, R., ed.), Amsterdam: North-Holland, pp. 657–668.

    Google Scholar 

  27. Lamport, L. 1983b. Specifying Concurrent Program Modules,ACM Transactions on Programming Languages and Systems (TOPLAS), vol. 5, pp. 190–223.

    Google Scholar 

  28. Lichtenstein, O., Pnueli, A. and Zuck, L. 1985. The Glory of The Past. Proceedings of the Workshop on Logics of Programs '85,Lecture Notes in Computer Science, vol. 193, Berlin: Springer, pp. 196–218.

    Google Scholar 

  29. Manna, Z. and Pnueli, A. 1987. A Hierarchy of Temporal Properties. Department of Computer Science, Stanford University, Report No. STAN-CS-87-1186.

  30. Moszkowski, B. and Manna, Z. 1984. Reasoning in Interval Temporal Logic, Proceedings of AMC/NSF/ONR Workshop on Logics of Programs,Lecture Notes in Computer Science, vol. 164, Berlin: Springer, pp. 371–383.

    Google Scholar 

  31. Moszkowski, B. 1983. Reasoning about Digital Circuits. Ph.D. Thesis, Department of Computer Science, Stanford University.

  32. Moszkowski, B. 1986.Executing Temporal Logic Programs. Cambridge: Cambridge University Press.

    Google Scholar 

  33. Ostroff, J.S. 1987. Real-Time Computer Control of Discrete Event Systems Modelled by Extended State Machines: A Temporal Logic Approach. Ph.D. Thesis, Department of Electrical Engineering, University of Toronto.

  34. Ostroff, J.S. 1989.Temporal Logic for Real-Time Systems. Advanced Software Development Series, Research Studies Press Limited (marketed by John Wiley and Sons), England.

    Google Scholar 

  35. Penczek, W. 1988. A Temporal Logic for Event Structures,Fundamenta Informaticae, XI, pp. 297–326.

    Google Scholar 

  36. Prior, A. 1967.Past, Present and Future. London: Oxford University Press.

    Google Scholar 

  37. Pnueli, A. and Harel, E. 1988. Applications of Temporal Logic to the Specification of Real-Time Systems. Proceedings of a Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems, (Joseph, M., ed.), University of Warwick,Lecture Notes in Computer Science, vol. 331, Berlin: Springer, pp. 84–98.

    Google Scholar 

  38. Pnueli, A. 1977. The Temporal Logic of Programs,Proceedings of the Eighteenth Symposium on the Foundation of Computer Science, pp. 46–57.

  39. Pinter, S. and Wolper, P. 1984. A Temporal Logic for Reasoning about Partially Ordered Computations.Proceedings of the Third Annual ACM Symposium on Principles of Distributed Computing, pp. 28–37.

  40. Schwartz, R.L., Melliar-Smith, P.M. and Vogt, F.H. 1983. An Interval Logic for Higher-Level Temporal Reasoning.Proceedings of the Second Annual ACM Symposium on Principles of Distributed Computing, pp. 173–186.

  41. Stirling, C. 1987. Comparing Linear and Branching Time Temporal Logics. ECS-LFCS-87-24, Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh.

  42. Tarski, A. 1969. What is Elementary Geometry? In Hintikka, J. (ed.),The Philosophy of Mathematics, London: Oxford University Press, pp. 164–175.

    Google Scholar 

  43. Thomas, W. 1986. Safety- and Liveness-Properties in Propositional Temporal Logic: Characterizations and Decidability. Schriften zur Informatik und Angewandten Mathematik, Bericht Nr. 116, Rheinisch-Westfälische Technische Hochschule Aachen.

  44. Wolper, P. 1986. Expressing Interesting Properties of Programs in Propositional Temporal Logic.Proceedings of the Thirteenth ACM Symposium on the Principles of Programming Languages, pp. 184–193.

Download references

Author information

Affiliations

Authors

Additional information

Part of this research has been performed at the Eindhoven University of Technology when the author was working in ESPRIT project 937: Debugging and Specification of Ada Real-Time Embedded Systems (DESCARTES).

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Koymans, R. Specifying real-time properties with metric temporal logic. Real-Time Syst 2, 255–299 (1990). https://doi.org/10.1007/BF01995674

Download citation

Keywords

  • System Performance
  • Distance Function
  • Formal Specification
  • Temporal Operator
  • Dominant Role