Advertisement

Real-Time Systems

, Volume 2, Issue 4, pp 255–299 | Cite as

Specifying real-time properties with metric temporal logic

  • Ron Koymans
Article

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.

Keywords

System Performance Distance Function Formal Specification Temporal Operator Dominant Role 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  8. Burgess, J.P. 1984. Basic Tense Logic. InHandbook of Philosophical Logic, vol. II, (Gabbay and Guenthner, eds.), pp. 89–133.Google Scholar
  9. CHILL Recommendation Z.200 (CHILL Language Definition). 1980. C.C.I.T.T. Study Group XI.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar
  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.Google Scholar

Copyright information

© Kluwer Academic Publishers 1990

Authors and Affiliations

  • Ron Koymans
    • 1
  1. 1.Philips Research LaboratoriesEindhovenThe Netherlands

Personalised recommendations