Academia.eduAcademia.edu

Outline

Quantitative temporal reasoning

1992, Real-Time Systems

https://doi.org/10.1007/BF00355298

Abstract

A substantially large class of programs operate in distributed and real-time environments, and an integral part of their correctness specification requires the expression of time-critical properties that relate the occurrence of events of the system. We focus on the formal specification and reasoning about the correctness of such programs. We propose a system of temporal logic, RTCI'L (Real-Time Computation Tree Logic), that allows the melding of qualitative temporal assertions together with real-time constraints to permit specification and reasoning at the twin levels of abstraction: qualitative and quantitative. We argue that many practically useful correctness properties of temporal systems, which need to express timing as an essential part of their functionality requirements, can be expressed in RTCTL. We develop a model-checking algorithm for RTCTL whose complexity is linear in the size of the RTCTL specification formula and in the size of the structure. We also present an essentially optimal, exponential time tableau-based decision procedure for the satisfiability of RTCTL formulae. Finally, we consider several variants and extensions of RTCTL for real-time reasoning.

References (57)

  1. Abrahamson, K. 1980. Decidability and expressiveness of logics of processes, Ph.D. Thesis, Univ. of Washington.
  2. Alur, R. 1991. Techniques for automatic verification of real-time systems, Ph.D. Thesis, Computer Science Depart- ment, Stanford University, August, Technical Report STAN-CS-91-1378.
  3. Alur, R., Courcoubetis, C., and Dill, D. 1990. Model-checking for real-time systems. Proc. of the 5th 1EEE Symp. on Logic in Computer Science (LICS), pp. 414-425.
  4. Alur, R., and Dill, D. 1990. Automata for modeling real-time systems. In 17th Inter. Conf. on Automata, Languages, and Programming (ICALP90), (M. Paterson, ed.), Lecture Notes in Computer Science 443, Berlin/New York: Springer-Verlag, pp. 322-335.
  5. Alur, R., Feder, T., and Henzinger, T. 1991. The benefits of relaxing punctuality. Proc. lOth Ann. ACM Syrup. on Principles of Distributed Computing (PODC), pp. 139-152.
  6. Alur, R., and Henzinger, T. 1989. A really temporal logic. Proc. of the 30th IEEE Syrup. on Found. of Comp. Sci. (FOCS), pp. 164-169.
  7. Alur, R., and Henzinger, T. 1990. Real-time logics: Complexity and expressiveness. Proc. of 5th Ann. Symp. on Logic in Comp. Sci. (LICS), pp. 390--401.
  8. Browne, M.C. 1986. An improved algorithm for the automatic verification of finite state systems using temporal logic, Proc. Syrup. on Logic in Computer Science, Cambridge, pp. 260-266.
  9. Burgess, J. 1984. Basic tense logic. In Handbook of Philosophical Logic, (D. Gabbay and E Guenthner, eds.), D. Reidel Pub. Co., Dordrecht/Boston/Lancaster.
  10. Chandra, A., Kozen, D., and Stockmeyer, L. 1981. Alternation. JACM, 28(1): 114-133.
  11. Clarke, E.M., and Emerson, E.A. 1981. Design and synthesis of synchronization skeletons using branching time temporal logic. Proc. of the Workshop on Logics of Programs, Yorktown Heights, (D. Kozen, ed.), Lecture Notes in Computer Science 131, Berlin/New York: Springer-Verlag, pp. 52-71.
  12. Clarke, E.M., Emerson, E.A., and Sistla, A.P. 1983. Automatic verification of finite state concurrent systems using temporal logic specifications. Proc. lOth Annual ACM Symp. on Principles of Programming Languages, Austin, pp. 117-126; journal version appeared in ACM Transactions on Programming Languages and Systems, 8(2): 244-263, 1986.
  13. Clarke, E., and Grumberg, O. 1987. Research on automatic verification of finite state concurrent systems, Ann. R~. Comp. Sci., 2: 269-290.
  14. Clarke, E.M., Bose, S., Browne, M., and Grumberg, O. 1987. The design and verification of finite state hardware controllers. Technical Report CMU-CS-87-145, Carnegie-Mellon Univ.
  15. de Bakker, J.W., Huizing, C., de Roever, W.P. and Rozenberg, G. 1992. Real-llme: Theory in Practice. Berlin/New York: Springer-Verlag, Lecture Notes in Computer Science 600.
  16. de Roever, W.P. 1976. Recursive Program Schemes: Semantics and Proof Theory. Mathematical Centre Tracts 70, Mathematisch Centrum, Amsterdam.
  17. Dijkstra, E.W. 1976. A Discipline of Programming, Englewood Cliffs, NJ: Prentice-Hall.
  18. Emerson, E.A. 1990. Temporal and modal logic. In Handbook of Theoretical Computer Science, vol. B, (J. van Leeuwen, ed.), Amsterdam: North-Holland, pp. 995-1072.
  19. Emerson, E.A., and Clarke, E.M. 1980. Characterizing correctness properties of parallel programs using fix- points. Proc. 7th Annual International Colloquium on Automata, Languages and Programming, Lecture Notes in Computer Science 85, Berlin/New York: Springer-Verlag, pp. 169-181.
  20. Emerson, E.A., and Clarke, E.M. 1982. Using branching time logic to synthesize synchronization skeletons, Science of Computer Programming, 2: 241-266.
  21. Emerson, E.A., and Halpern, J.Y. 1982. Decision procedures and expressiveness in the temporal logic of branching time, Proc. of the 14th Annual ACM Syrup. on Theory of Computing, San Francisco, pp. 169-189; also appeared in Journal of Computer and System Sciences, 30(1): 1-24, 1985.
  22. Emerson, E.A., and Halpern, J.Y. 1983. Sometimes and not never revisited: On branching versus linear time temporal logic, Proc. lOth Annual ACM Syrup. on Principles of Programming Languages, Austin, pp. 127-140; journal version appeared in Journal of the ACM, 33(1): 151-178.
  23. Emerson, E.A., and Lei, C.-L. 1985. Modalities for model checking: Branching time logic strikes back, Proc. 12th Annual ACM Syrup. on Principles of Programming Languages, New Orleans, pp. 84-96; also appeared in Science of Computer Programming, 8: 275-306, 1987.
  24. Emerson, E.A., and Lei, C.-L. 1986. Efficient model checking in fragments of the Mu-Calculus, IEEE Symp. on Logic in Computer Science, pp. 267-278.
  25. Emerson, E.A., and Lei, C.-L. 1987. New results on model-checking in the propositional Mu-Calculus. Presented at the Coloquium on Temporal Logic and Specification, Altrincham, England, April 1987.
  26. Emerson, E.A., Mok, A.K., Sistla, A.P., and Srinivasan, J. 1989. Quantitative temporal reasoning. Proceedings of the Workshop on Automatic Verification for Finite State Systems (tXarticipants Version), C-cube, the French National Concurrency Project, June 12-14.
  27. Fischer, M., and Ladner, R. 1979. Propositional dynamic logic of regular programs, Journal of Computer and System Sciences, 18(2): 194-211.
  28. Gerth, R., and Boucher, A. 1987. A timed failures model for extending communicating processes. In Proc. of the 14th Ann. Int. Conf. on Automata, Languages, and Programming, Berlin/New York: Springer, Lecture Notes in Computer Science 267, pp. 95-114.
  29. Hansson, H., and Jonsson, B. 1989. A framework for reasoning about time and realiability. Proc. oflOth Annual IEEE Real 17me Systems Syrup., Santa Monica, Ca., December 5-7, pp. 102-111.
  30. Hansson, H. 1991. Time and probability in formal design of distributed systems. Ph.D. Dissertation, Uppsala University, Sweden, DOCS91/27, September 1991.
  31. Henzinger, T. 1990. Half-order modal logic: How to prove real-time properties. Proc. of the 9th. Ann. ACMSymp. on Princ. of Distr. Comp. (PODC), pp. 281-296.
  32. Henzinger, T. 1991. The temporal specification and verification of real time systems. Ph.D. Thesis, Computer Science Department, Stanford University, August 1991, Technical Report STAN-CS-91-1380.
  33. Hooman, J. 1991. Specification and compositional verification of real time systems. Ph.D. Thesis, Eindhoven University of Technology.
  34. Jahanian, E, and Mok, A.K. 1986. Safety analysis of timing properties in real time systems. IEEE Trans. Software Eng., SE-12(9): 890-904.
  35. Jahanian, E, and Mok, A.K. 1987. A graph-theoretic approach for timing analysis and its implementation, IEEE Transactions on Computers, C-36(8): 961-975.
  36. Jahanian, E, and Mok, A.K. 1988. A method for verifying properties of modechart specifications. Proc. of the 9th IEEE Real-T~me Systems Symposium, pp. 12-21.
  37. Koymans, R. 1989. Specifying message passing and time critical systems with temporal logic. Ph.D. Thesis, Eind- hoven University of Technology.
  38. Koymans, R. 1990. Specifying real time properties with metric temporal logic. Real 1line Systems, 2(4): 255-299.
  39. Koymans, R., Vytopil, J., and de Roever, W.-P. 1983. Real time programming and asynchronous message passing. Proc. of the 2nd Annual ACM Syrup. on Principles of Distributed Computing (PODC), pp. 187-197.
  40. Lewis, H.R. 1990. A logic of concrete time intervals. Proc. of the 5th Annual Symposium on Logic in Computer Science (LICS), IEEE Press, pp. 380-399, Philadelphia.
  41. Lichtenstein, O., and Pnueli, A. 1985. Checking that finite state concurrent programs satisfy their linear specification. Proc. 12th Annual ACM Syrup. on Principles of Programming Languages, New Orleans, pp. 97-107.
  42. Lichtenstein, O., Pnueli, A., and Zuck, L. 1985. The glory of the past. Proc. Conf. on Logics of Programs, Brooklyn, (R. Parikh, ed.), Lecture Notes in Computer Science 193, Berlin/New York: Springer-Verlag, pp. 196-218.
  43. Manna, Z., and Wolper, P. 1984. Synthesis of communicating processes from temporal logic specifications. ACM Transactions on Programming Languages and Systems, 6(1): 68-93.
  44. Melliar-Smith, P.M. 1987. Extending interval logic to real time systems. Temporal Logic in Specification, (B. Banieqbal, H. Barringer, A. Pnueli, eds.), pp. 224-242, Berlin/New York: Springer-Verlag, Lecture Notes in Computer Science 398, April 1987.
  45. Narayana, K.T., and Aaby, A.A. 1988. Specification of real-time systems in real-time temporal interval logic. Proc. of lEEE Real-~me Systems Syrup., December, pp. 86-95.
  46. Ostroff, J. 1990. Deciding properties of timed transition models. IEEE Transactions on Parallel and Distributed Systems, 1(2): 170-183, April.
  47. Ostroff, J. 1990b. Temporal Logic of Real-17me Systems, London: Wiley, 1990.
  48. Ostroff, J. 1991. Survey of formal methods for the specification and design of real-time systems. Manuscript, Computer Science Department, York University, Ontario, Canada, to appear in Tutorial on Specification of Time, IEEE Press, forthcoming.
  49. Pnueli, A. 1977. The temporal logic of programs. 18th Annual Syrup. on Foundations of Computer Science, Providence, pp. 46-57.
  50. Pnueli, A., and Harel, E. 1988. Application of temporal logic to the specification of real-time systems. In Formal Techniques in Real-Time and Fault Tolerant Systems. (M. Joseph, ed.), Berlin/New York: Springer-Verlag, Lecture Notes in Computer Science 331.
  51. Pnueli, A., and Rosner, R. 1989. On the synthesis of a reactive module. Proc. 16th Annual ACM Symp. on Prin- ciples of Programming Languages, Austin, pp. 179-190.
  52. Prior, A. 1957. Time and Modality, Oxford University Press, Oxford.
  53. Prior, A. 1967. Past, Present, and Future. Oxford University Press, Oxford.
  54. Queille, J.P., and Sifakis, J. 1981. Specification and verification of concurrent systems in CESAR. Proc. of the 5th International Symposium on Programming, Lecture Notes in Computer Science 137, Berlin/New York: Springer-Verlag, pp. 337-350.
  55. Sistla, A.P., and Clarke, E.M. 1985. The complexity of propositional linear temporal logics. Proc. of the 14th Annual ACM Syrup. on Theory of Computing, San Francisco, pp. 159-168, 1982; also appeared in Journal of the ACM, 32(3): 733-749.
  56. van Benthem, J. 1983. The Logic of llme. D. Reidel Pub. Co., Dordrecht/Boston/London.
  57. Yodaiken, V., and Ramamritham, K. 1990. Specifying and verifying a real-time priority queue with modal algebra. Proc. llth 1EEE Syrup. on Real-Time Systems, pp. 300-311, December 5-7.