Advertisement

Logics and models of real time: A survey

  • Rajeev Alur
  • Thomas A. Henzinger
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 600)

Abstract

We survey logic-based and automata-based languages and techniques for the specification and verification of real-time systems. In particular, we discuss three syntactic extensions of temporal logic: time-bounded operators, freeze quantification, and time variables. We also discuss the extension of finite-state machines with clocks and the extension of transition systems with time bounds on the transitions. All of the resulting notations can be interpreted over a variety of different models of time and computation, including linear and branching time, interleaving and true concurrency, discrete and continuous time. For each choice of syntax and semantics, we summarize the results that are known about expressive power, algorithmic finite-state verification, and deductive verification.

Keywords

Temporal logic finite-state machines transition systems semantics verification real time 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [Aba87]
    M. Abadi. Temporal-Logic Theorem Proving. PhD thesis, Stanford University, 1987.Google Scholar
  2. [ACD90]
    R. Alur, C. Courcoubetis, and D.L. Dill. Model checking for real-time systems. In Proceedings of the Fifth Annual Symposium on Logic in Computer Science, pages 414–425. IEEE Computer Society Press, 1990.Google Scholar
  3. [AD90]
    R. Alur and D.L. Dill. Automata for modeling real-time systems. In M.S. Paterson, editor, ICALP 90: Automata, Languages, and Programming, Lecture Notes in Computer Science 443, pages 322–335. Springer-Verlag, 1990.Google Scholar
  4. [AFH91]
    R. Alur, T. Feder, and T.A. Henzinger. The benefits of relaxing punctuality. In Proceedings of the Tenth Annual Symposium on Principles of Distributed Computing, pages 139–152. ACM Press, 1991.Google Scholar
  5. [AH89]
    R. Alur and T.A. Henzinger. A really temporal logic. In Proceedings of the 30th Annual Symposium on Foundations of Computer Science, pages 164–169. IEEE Computer Society Press, 1989.Google Scholar
  6. [AH90]
    R. Alur and T.A. Henzinger. Real-time logics: complexity and expressiveness. In Proceedings of the Fifth Annual Symposium on Logic in Computer Science, pages 390–401. IEEE Computer Society Press, 1990.Google Scholar
  7. [AH91]
    R. Alur and T.A. Henzinger. Time for logic. SIGACT News, 22(3):6–12, 1991.Google Scholar
  8. [Alu91]
    R. Alur. Techniques for Automatic Verification of Real-time Systems. PhD thesis, Stanford University, 1991.Google Scholar
  9. [BH81]
    A. Bernstein and P.K. Harter, Jr. Proving real-time properties of programs with temporal logic. In Proceedings of the Eighth Annual Symposium on Operating System Principles, pages 1–11. ACM Press, 1981.Google Scholar
  10. [BMP81]
    M. Ben-Ari, Z. Manna, and A. Pnueli. The temporal logic of branching time. In Proceedings of the Eighth Annual Symposium on Principles of Programming Languages, pages 164–176. ACM Press, 1981.Google Scholar
  11. [CES86]
    E.M. Clarke, E.A. Emerson, and A.P. Sistla. Automatic verification of finite-state concurrent systems using temporal-logic specifications. ACM Transactions on Programming Languages and Systems, 8(2):244–263, 1986.CrossRefGoogle Scholar
  12. [Dil89]
    D.L. Dill. Timing assumptions and verification of finite-state concurrent systems. In J. Sifakis, editor, CAV 89: Automatic Verification Methods for Finite-state Systems, Lecture Notes in Computer Science 407, pages 197–212. Springer-Verlag, 1989.Google Scholar
  13. [EC82]
    E.A. Emerson and E.M. Clarke. Using branching-time temporal logic to synthesize synchronization skeletons. Science of Computer Programming, 2(3):241–266, 1982.CrossRefGoogle Scholar
  14. [Eme90]
    E.A. Emerson. Temporal and modal logic. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B, pages 995–1072. Elsevier Science Publishers (North-Holland), 1990.Google Scholar
  15. [EMSS89]
    E.A. Emerson, A.K. Mok, A.P. Sistla, and J. Srinivasan. Quantitative temporal reasoning. Presented at the First Annual Workshop on Computer-aided Verification, Grenoble, France, 1989.Google Scholar
  16. [GPSS80]
    D. Gabbay, A. Pnueli, S. Shelah, and J. Stavi. On the temporal analysis of fairness. In Proceedings of the Seventh Annual Symposium on Principles of Programming Languages, pages 163–173. ACM Press, 1980.Google Scholar
  17. [Haa81]
    V.H. Haase. Real-time behavior of programs. IEEE Transactions on Software Engineering, SE-7(5):494–501, 1981.Google Scholar
  18. [Har88]
    E. Harel. Temporal analysis of real-time systems. Master's thesis, The Weizmann Institute of Science, Rehovot, Israel, 1988.Google Scholar
  19. [Hen90]
    T.A. Henzinger. Half-order modal logic: how to prove real-time properties. In Proceedings of the Ninth Annual Symposium on Principles of Distributed Computing, pages 281–296. ACM Press, 1990.Google Scholar
  20. [Hen91a]
    T.A. Henzinger. Sooner is safer than later. Technical report, Stanford University, 1991.Google Scholar
  21. [Hen91b]
    T.A. Henzinger. The Temporal Specification and Verification of Real-time Systems. PhD thesis, Stanford University, 1991.Google Scholar
  22. [HLP90]
    E. Harel, O. Lichtenstein, and A. Pnueli. Explicit-clock temporal logic. In Proceedings of the Fifth Annual Symposium on Logic in Computer Science, pages 402–413. IEEE Computer Society Press, 1990.Google Scholar
  23. [HMP90]
    T.A. Henzinger, Z. Manna, and A. Pnueli. An interleaving model for real time. In Proceedings of the Fifth Jerusalem Conference on Information Technology, pages 717–730. IEEE Computer Society Press, 1990.Google Scholar
  24. [HMP91]
    T.A. Henzinger, Z. Manna, and A. Pnueli. Temporal proof methodologies for real-time systems. In Proceedings of the 18th Annual Symposium on Principles of Programming Languages, pages 353–366. ACM Press, 1991.Google Scholar
  25. [Hoo91]
    J. Hooman. Specification and Compositional Verification of Real-time Systems PhD thesis, Technische Universiteit Eindhoven, The Netherlands, 1991.Google Scholar
  26. [HW89]
    J. Hooman and J. Widom. A temporal-logic-based compositional proof system for real-time message passing. In E. Odijk, M. Rem, and J.-C. Syre, editors, PARLE 89: Parallel Architectures and Languages Europe, vol. II, Lecture Notes in Computer Science 366, pages 424–441. Springer-Verlag, 1989.Google Scholar
  27. [KdR85]
    R. Koymans and W.-P. de Roever. Examples of a real-time temporal specification. In B.D. Denvir, W.T. Harwood, M.I. Jackson, and M.J. Wray, editors, The Analysis of Concurrent Systems, Lecture Notes in Computer Science 207, pages 231–252. Springer-Verlag, 1985.Google Scholar
  28. [Kel76]
    R.M. Keller. Formal verification of parallel programs. Communications of the ACM, 19(7):371–384, 1976.CrossRefGoogle Scholar
  29. [Koy90]
    R. Koymans. Specifying real-time properties with metric temporal logic. Real-time Systems, 2(4):255–299, 1990.CrossRefGoogle Scholar
  30. [KVdR83]
    R. Koymans, J. Vytopil, and W.-P. de Roever. Real-time programming and asynchronous message passing. In Proceedings of the Second Annual Symposium on Principles of Distributed Computing, pages 187–197. ACM Press, 1983.Google Scholar
  31. [LA]
    L. Lamport and M. Abadi. Refining and composing real-time specifications. This volume.Google Scholar
  32. [LA90]
    N.A. Lynch and H. Attiya. Using mappings to prove timing properties. In Proceedings of the Ninth Annual Symposium on Principles of Distributed Computing, pages 265–280. ACM Press, 1990.Google Scholar
  33. [Lam83]
    L. Lamport. What good is temporal logic? In R.E.A. Mason, editor, Information Processing 83: Proceedings of the Ninth IFIP World Computer Congress, pages 657–668. Elsevier Science Publishers (North-Holland), 1983.Google Scholar
  34. [Lam91]
    L. Lamport. The temporal logic of actions. Technical report, DEC Systems Research Center, Palo Alto, California, 1991.Google Scholar
  35. [Lew90]
    H.R. Lewis. A logic of concrete time intervals. In Proceedings of the Fifth Annual Symposium on Logic in Computer Science, pages 380–389. IEEE Computer Society Press, 1990.Google Scholar
  36. [LPZ85]
    O. Lichtenstein, A. Pnueli, and L.D. Zuck. The glory of the past. In R. Parikh, editor, Logics of Programs, Lecture Notes in Computer Science 193, pages 196–218. Springer-Verlag, 1985.Google Scholar
  37. [MP83]
    Z. Manna and A. Pnueli. Proving precedence properties: the temporal way. In J. Diaz, editor, ICALP 83: Automata, Languages, and Programming, Lecture Notes in Computer Science 154, pages 491–512. Springer-Verlag, 1983.Google Scholar
  38. [MP89]
    Z. Manna and A. Pnueli. The anchored version of the temporal framework. In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Linear Time, Branching Time, and Partial Order in Logics and Models for Concurrency, Lecture Notes in Computer Science 354, pages 201–284. Springer-Verlag, 1989.Google Scholar
  39. [NSY]
    X. Nicollin, J. Sifakis, and S. Yovine. From ATP to timed graphs and hybrid systems. This volume.Google Scholar
  40. [Ost90]
    J.S. Ostroff. Temporal Logic of Real-time Systems. Research Studies Press, 1990.Google Scholar
  41. [PdR82]
    A. Pnueli and W.-P. de Roever. Rendez-vous with Ada: a proof-theoretical view. In Proceedings of the SIGPLAN AdaTEC Conference on Ada, pages 129–137. ACM Press, 1982.Google Scholar
  42. [PH88]
    A. Pnueli and E. Harel. Applications of temporal logic to the specification of real-time systems. In M. Joseph, editor, Formal Techniques in Real-time and Fault-tolerant Systems, Lecture Notes in Computer Science 331, pages 84–98. Springer-Verlag, 1988.Google Scholar
  43. [Pnu77]
    A. Pnueli. The temporal logic of programs. In Proceedings of the 18th Annual Symposium on Foundations of Computer Science, pages 46–57. IEEE Computer Society Press, 1977.Google Scholar
  44. [Pnu86]
    A. Pnueli. Applications of temporal logic to the specification and verification of reactive systems: a survey of current trends. In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Current Trends in Concurrency, Lecture Notes in Computer Science 224, pages 510–584. Springer-Verlag, 1986.Google Scholar
  45. [Rog67]
    H. Rogers, Jr. Theory of Recursive Functions and Effective Computability. McGraw-Hill Book Company, 1967.Google Scholar
  46. [Ron84]
    D. Ron. Temporal verification of communication protocols. Master's thesis, The Weizmann Institute of Science, Rehovot, Israel, 1984.Google Scholar
  47. [SL87]
    A.U. Shankar and S. Lam. Time-dependent distributed systems: proving safety, liveness, and timing properties. Distributed Computing, 2(2):61–79, 1987.CrossRefGoogle Scholar
  48. [SPE84]
    D.E. Shasha, A. Pnueli, and W. Ewald. Temporal verification of carrier-sense local area network protocols. In Proceedings of the 11th Annual Symposium on Principles of Programming Languages, pages 54–65. ACM Press, 1984.Google Scholar
  49. [Tho90]
    W. Thomas. Automata on infinite objects. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B, pages 133–191. Elsevier Science Publishers (North-Holland), 1990.Google Scholar
  50. [Wol83]
    P. Wolper. Temporal logic can be more expressive. Information and Control, 56(1/2):72–99, 1983.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  • Rajeev Alur
    • 1
  • Thomas A. Henzinger
    • 2
  1. 1.AT&T Bell LaboratoriesMurray HillUSA
  2. 2.Computer Science DepartmentCornell UniversityIthacaUSA

Personalised recommendations