## Abstract

This paper is motivated by the need for a formal specification method for real-time systems. In these systems*quantitative* 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

The Programming Language Ada, Reference Manual, 1983.

*Lecture Notes in Computer Science*, vol. 155, Berlin: Springer.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.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.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.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.Benthem, J.F.A.K.van. 1983.

*The Logic of Time*. Dordrecht: Reidel.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.Burgess, J.P. 1984. Basic Tense Logic. In

*Handbook of Philosophical Logic*, vol. II, (Gabbay and Guenthner, eds.), pp. 89–133.*CHILL Recommendation Z.200*(CHILL Language Definition). 1980. C.C.I.T.T. Study Group XI.Cocchiarella, N.B. 1984. Philosophical Perspectives on Quantification in Tense and Modal Logic. In

*Handbook of Philosophical Logic*, vol. II, (Gabbay and Guenthner, eds.), pp. 309–353.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.Gabbay, D. and Guenthner, F., (eds.) 1984.

*Handbook of Philosophical Logic*, vol. II. Dordrecht: Reidel.Garson, J.W. 1984. Quantification in Modal Logic. In

*Handbook of Philosophical Logic*, vol. II, (Gabbay and Guenthner, eds.) pp. 249–307.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.

Goldblatt, R. 1982. Axiomatising the Logic of Computer Programming.

*Lecture Notes in Computer Science*, vol. 130, Berlin: Springer.Harel, D. 1984. Dynamic Logic, In

*Handbook of Philosophical Logic*, vol. II, (Gabbay and Guenthner, eds.), pp. 497–604.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.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.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.Joseph, M. and Goswami, A. 1988. Formal Description of Real-Time Systems: A Review. Research Report RR129, Department of Computer Science, University of Warwick.

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.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.Koymans, R. 1989. Specifying Message Pasing and Time-Critical Systems with Temporal Logic. Ph.D. Thesis, Eindhoven University of Technology.

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).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.Lamport, L. 1983a. What Good is Temporal Logic?

*Proceedings of Information Processing (IFIP) '83*, (Mason, R., ed.), Amsterdam: North-Holland, pp. 657–668.Lamport, L. 1983b. Specifying Concurrent Program Modules,

*ACM Transactions on Programming Languages and Systems*(TOPLAS), vol. 5, pp. 190–223.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.Manna, Z. and Pnueli, A. 1987. A Hierarchy of Temporal Properties. Department of Computer Science, Stanford University, Report No. STAN-CS-87-1186.

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.Moszkowski, B. 1983. Reasoning about Digital Circuits. Ph.D. Thesis, Department of Computer Science, Stanford University.

Moszkowski, B. 1986.

*Executing Temporal Logic Programs*. Cambridge: Cambridge University Press.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.

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.Penczek, W. 1988. A Temporal Logic for Event Structures,

*Fundamenta Informaticae*, XI, pp. 297–326.Prior, A. 1967.

*Past, Present and Future*. London: Oxford University Press.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.Pnueli, A. 1977. The Temporal Logic of Programs,

*Proceedings of the Eighteenth Symposium on the Foundation of Computer Science*, pp. 46–57.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.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.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.

Tarski, A. 1969. What is Elementary Geometry? In Hintikka, J. (ed.),

*The Philosophy of Mathematics*, London: Oxford University Press, pp. 164–175.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.

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.

## Author information

### Affiliations

## 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

## 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

Issue Date:

### Keywords

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