Skip to main content
Log in

Compositional reasoning using intervals and time reversal

  • Published:
Annals of Mathematics and Artificial Intelligence Aims and scope Submit manuscript

Abstract

Interval Temporal Logic (ITL) is an established formalism for reasoning about time periods. We investigate some simple kinds of ITL formulas which have application to compositional reasoning and furthermore are closed under conjunction and the conventional temporal operator known both as “box” and “always”. Such closures help us modularly construct formulas from simple building blocks in a way which preserves useful compositional properties. The most important class considered here is called the 2-to-1 formulas. They offer an attractive framework for analysing sequential composition in ITL and provide the formal basis for most of the subsequent presentation. A key contribution of this work concerns a useful and apparently new and quite elementary mathematical theorem that 2-to-1 formulas are closed under “box”. We also use a natural form of time symmetry with 2-to-1 formulas. This extends known facts about such formulas by looking at them in reverse. An important example involves showing that 2-to-1 formulas are also closed under a variant of “box” for prefix subintervals rather than suffix ones. We then apply the compositional formulas obtained with time symmetry to analyse concurrent behaviour involving mutual exclusion in both Peterson’s algorithm and a new and more abstract one. At present, our study of mutual exclusion mainly serves as a kind of experimental “proof of concept” and research tool to develop and illustrate some of the logical framework’s promising features. We also discuss how time symmetry sometimes assists in reducing reasoning in ITL to conventional linear-time temporal logic.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Aceto, L., Ingólfsdóttir, A., Larsen, K.G., Srba, J.: Reactive Systems: Modelling, Specification and Verification. Cambridge University Press (2007)

  2. Balser, M., Bäumler, S., Knapp, A., Reif, W., Thums, A.: Interactive verification of UML state machines. In: Davies, J., Schulte, W., Barnett, M. (eds.) Proc. 6th International Conference on Formal Engineering Methods (ICFEM 2004). LNCS, vol. 3308, pp. 434–448. Springer (2004)

  3. Barringer, H., Kuiper, R.: Hierarchical development of concurrent systems in a temporal logic framework. In: Brookes, S.D., Roscoe, A.W., Winskel, G. (eds.) Seminar on Concurrency. LNCS, vol. 197, pp. 35–61. Springer (1985)

  4. Barringer, H., Kuiper, R.: Towards the hierarchical, temporal logic, specification of concurrent systems. In: Denvir, B., Harwood, W., Jackson, M., Wray, M. (eds.) The Analysis of Concurrent Systems. LNCS, vol. 207, pp. 157–183. Springer (1985)

  5. Barringer, H., Kuiper, R., Pnueli, A.: A really abstract concurrent model and its temporal logic. In: Proc. 13th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL’86), pp. 173–183. ACM (1986)

  6. Bäumler, S., Balser, M., Nafz, F., Reif, W., Schellhorn, G.: Interactive verification of concurrent systems using symbolic execution. AI Commun. 23(2–3), 285–307 (2010)

    MATH  MathSciNet  Google Scholar 

  7. Bäumler, S., Schellhorn, G., Tofan, B., Reif, W.: Proving linearizability with temporal logic. Form. Asp. Comput. 23(1), 91–112 (2011)

    Article  MATH  MathSciNet  Google Scholar 

  8. Biere, A., Cimatti, A., Clarke, E.M., Strichman, O., Zhu, Y.: Bounded model checking. Adv. Comput. 58, 117–148 (2003)

    Article  Google Scholar 

  9. Bowman, H., Thompson, S.J.: A decision procedure and complete axiomatization of finite Interval Temporal Logic with projection. J. Log. Comput. 13(2), 195–239 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  10. Collette, P.: Composition of assumption-commitment specifications in a UNITY style. Sci. Comput. Program. 23(2–3), 107–125 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  11. Dijkstra, E.W.: Cooperating sequential processes. In: Genuys, F. (ed.) Programming Languages: NATO Advanced Study Institute, pp. 43–112. Academic Press (1968)

  12. Duan, Z.: An extended Interval Temporal Logic and a framing technique for temporal logic programming. Ph.D. thesis, Dept. of Computing Science, University of Newcastle Upon Tyne (1996). Technical report 556, later published as [13]

  13. Duan, Z.: Temporal Logic and Temporal Logic Programming. Science Press, Beijing, China (2005). Published version of [12]

  14. Duan, Z., Koutny, M.: A framed temporal logic programming language. J. Comput. Sci. Technol. 19(3), 341–351 (2004)

    Article  MathSciNet  Google Scholar 

  15. Duan, Z., Koutny, M., Holt, C.: Projection in temporal logic programming. In: Pfenning, F. (ed.) Proc. of Logic Programming and Automated Reasoning (LPAR ’94). LNCS, vol. 822, pp. 333–344. Springer, Berlin (1994)

    Chapter  Google Scholar 

  16. Duan, Z., Yang, X., Koutny, M.: Framed temporal logic programming. Sci. Comput. Program. 70(1), 31–61 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  17. Duan, Z., Zhang, N., Koutny, M.: A complete axiomatization of propositional projection temporal logic. Theor. Comput. Sci. (2012). doi:10.1016/j.tcs.2012.01.026

    Google Scholar 

  18. Fisher, M.: An Introduction to Practical Formal Methods Using Temporal Logic. Wiley (2011)

  19. Floyd, R.W.: Assigning meanings to programs. In: Schwartz, J.T. (ed.) Proc. AMS Symp. on Applied Mathematics, vol. 19, pp. 19–32. American Mathematical Society, Providence, Rhode Island (1967)

  20. Furia, C.A., Spoletini, P.: Tomorrow and all our yesterdays: MTL satisfiability over the integers. In: Fitzgerald, J.S., Haxthausen, A.E., Yenigün, H. (eds.) 5th International Colloquium on Theoretical Aspects of Computing (ICTAC 2008). LNCS, vol. 5160, pp. 126–140. Springer (2008)

  21. Gómez, R., Bowman, H.: PITL2MONA: implementing a decision procedure for propositional interval temporal logic. J. Applied Non-Classical Logics 14(1–2), 105–148 (2004). Special issue on Interval Temporal Logics and Duration Calculi. V. Goranko and A. Montanari, guest editors

    Article  MATH  Google Scholar 

  22. Hale, R.: Temporal logic programming. In: Galton, A. (ed.) Temporal Logics and Their Applications, pp. 91–119. Academic Press, London (1987)

    Google Scholar 

  23. Hale, R.W.S.: Programming in temporal logic. Ph.D. thesis, Computer Laboratory, Cambridge University, Cambridge, England (1988). Appeared in 1989 as Technical report 173

  24. Hansen, M.R., Zhou, C.: Duration calculus: logical foundations. Form. Asp. Comput. 9(3), 283–330 (1997)

    Article  MATH  Google Scholar 

  25. Harel, D., Kozen, D., Parikh, R.: Process logic: expressiveness, decidability, completeness. J. Comput. Syst. Sci. 25(2), 144–170 (1982)

    Article  MATH  MathSciNet  Google Scholar 

  26. Harel, D., Kozen, D., Tiuryn, J.: Dynamic Logic. MIT Press, Cambridge, MA (2000)

    MATH  Google Scholar 

  27. Harel, D., Kozen, D., Tiuryn, J.: Dynamic logic, 2nd edn. In: Gabbay, D., Guenthner, F. (eds.) Handbook of Philosophical Logic, vol. 4, pp. 99–217. Kluwer Academic Publishers, Dordrecht (2002)

    Google Scholar 

  28. Herlihy, M., Shavit, N.: The Art of Multiprocessor Programming. Morgan Kaufmann Publishers Inc., San Francisco, CA (2008)

    Google Scholar 

  29. Hoare, C.A.R.: An axiomatic basis for computer programming. Commun. ACM 12(10), 576–580,583 (1969)

    Google Scholar 

  30. Holzmann, G.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley Professional (2003)

  31. Interval Temporal Logic web pages. http://www.tech.dmu.ac.uk/STRL/ITL/. Accessed 24 April 2013

  32. Janicke, H., Cau, A., Siewe, F., Zedan, H., Jones, K.: A compositional event & time-based policy model. In: Proceedings of POLICY2006, pp. 173–182. IEEE Computer Society Press, London, ON (2006)

    Google Scholar 

  33. Jones, C.B.: Specification and design of (parallel) programs. In: Mason, R.E.A. (ed.) Proc. IFIP Congress ’83, pp. 321–332. North Holland Publishing Co., Amsterdam (1983)

    Google Scholar 

  34. Jones, C.B.: Tentative steps toward a development method for interfering programs. ACM Trans. Program. Lang. Syst. 5(4), 596–619 (1983)

    Article  MATH  Google Scholar 

  35. Koymans, R., Vytopil, J., de Roever, W.P.: Real-time programming and asynchronous message passing. In: Proceedings of the 2nd Annual ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (PODC’83), pp. 187–197 (1983)

  36. Kröger, F., Merz, S.: Temporal Logic and State Systems. Texts in Theoretical Computer Science (An EATCS Series). Springer (2008)

  37. Lamport, L.: Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers. Addison-Wesley Professional (2002)

  38. Leucker, M., Sánchez, C.: Regular Linear Temporal Logic. In: Jones, C.B., Liu, Z., Woodcock, J. (eds.) Proc. 4th International Colloquium on Theoretical Aspects of Computing (ICTAC’07). LNCS, vol. 4711, pp. 291–305. Springer, Macau (2007)

    Google Scholar 

  39. Lichtenstein, O., Pnueli, A.: Propositional temporal logics: decidability and completeness. Logic J. IGPL 8(1), 55–85 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  40. Lichtenstein, O., Pnueli, A., Zuck, L.: The glory of the past. In: Parikh, R., et al. (eds.) Logics of Programs. LNCS, vol. 193, pp. 196–218. Springer, Berlin (1985)

    Chapter  Google Scholar 

  41. Manna, Z., Pnueli, A.: The anchored version of the temporal framework. In: Bakker, J.W.D., de Roever, W.P., Rozenberg, G. (eds.) Linear Time, Branching Time, and Partial Order in Logics and Models for Concurrency (REX Workshop 1988). LNCS, vol. 354, pp. 201–284. Springer (1989)

  42. McCarthy, J., Hayes, P.J.: Some philosophical problems from the standpoint of artificial intelligence. In: Michie, D., Meltzer, B. (eds.) Machine Intelligence, vol. 4, pp. 463–502. Edinburgh University Press, Edinburgh (1969). Reprinted in [Webber, L., Nilsson, N.J. (eds.) Readings in Artificial Intelligence, pp. 431–450. Tioga Publishing Co., Palo Alto, California (1981)]

    Google Scholar 

  43. Mo, D., Wang, X., Duan, Z.: Asynchronous communication in MSVL. In: Qin, S., Qiu, Z. (eds.) 13th Int’l Conf. on Formal Engineering Methods (ICFEM 2011). LNCS, vol. 6991, pp. 82–97. Springer (2011)

  44. Moszkowski, B.: Reasoning about digital circuits. Ph.D. thesis, Department of Computer Science, Stanford University (1983). Technical report STAN–CS–83–970

  45. Moszkowski, B.: A temporal logic for multilevel reasoning about hardware. Computer 18, 10–19 (1985)

    Article  Google Scholar 

  46. Moszkowski, B.: Executing Temporal Logic Programs. Cambridge University Press, Cambridge (1986)

    Google Scholar 

  47. Moszkowski, B.: Some very compositional temporal properties. In: Olderog, E.R. (ed.) IFIP Transactions Programming Concepts, Methods and Calculi (PROCOMET’94), vol. A-56, pp. 307–326. IFIP, Elsevier Science B.V. North–Holland (1994)

  48. Moszkowski, B.: Compositional reasoning about projected and infinite time. In: Proc. 1st IEEE Int’l Conf. on Engineering of Complex Computer Systems (ICECCS’95), pp. 238–245. IEEE Computer Society Press (1995)

  49. Moszkowski, B.: Using temporal fixpoints to compositionally reason about liveness. In: He, J., Cooke, J., Wallis, P. (eds.) BCS-FACS 7th Refinement Workshop, Electronic Workshops in Computing. BCS-FACS, Springer and British Computer Society, London (1996)

    Google Scholar 

  50. Moszkowski, B.: Compositional reasoning using Interval Temporal Logic and Tempura. In: de Roever, W.P., Langmaack, H., Pnueli, A. (eds.) Compositionality: The Significant Difference. LNCS, vol. 1536, pp. 439–464. Springer, Berlin (1998)

    Google Scholar 

  51. Moszkowski, B.: An automata-theoretic completeness proof for Interval Temporal Logic (extended abstract). In: Montanari, U., Rolim, J., Welzl, E. (eds.) Proc. 27th Int’l. Colloquium on Automata, Languages and Programming (ICALP 2000). LNCS, vol. 1853, pp. 223–234. Springer, Geneva (2000)

    Chapter  Google Scholar 

  52. Moszkowski, B.: A complete axiomatization of Interval Temporal Logic with infinite time (extended abstract). In: Proc. 15th Ann. IEEE Symp. on Logic in Computer Science (LICS 2000), pp. 242–251. IEEE Computer Society Press (2000)

  53. Moszkowski, B.: A hierarchical completeness proof for Propositional Interval Temporal Logic with finite time. J. Applied Non-Classical Logics 14(1–2), 55–104 (2004). Special issue on Interval Temporal Logics and Duration Calculi. V. Goranko and A. Montanari, guest editors

    Article  MATH  Google Scholar 

  54. Moszkowski, B.: Using temporal logic to analyse temporal logic: a hierarchical approach based on intervals. J. Log. Comput. 17(2), 333–409 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  55. Moszkowski, B.: Compositional reasoning using intervals and time reversal. In: 18th Int’l Symp. on Temporal Representation and Reasoning (TIME 2011), pp. 107–114. IEEE Computer Society (2011)

  56. Moszkowski, B.: A complete axiom system for propositional Interval Temporal Logic with infinite time. Log. Meth. Comp. Sci. 8(3:10), 1–56 (2012)

    MathSciNet  Google Scholar 

  57. Moszkowski, B.: Interconnections between classes of sequentially compositional temporal formulas. Inf. Process. Lett. 113, 350–353 (2013)

    Article  MATH  MathSciNet  Google Scholar 

  58. Olderog, E.R., Dierks, H.: Real-Time Systems: Formal Specification and Automatic Verification. Cambridge University Press, Cambridge (2008)

    Book  Google Scholar 

  59. Owre, S., Shankar, N.: A brief overview of PVS. In: Mohamed, O.A., Muñoz, C., Tahar, S. (eds.) 21st International Conference on Theorem Proving in Higher Order Logics (TPHOLs 2008). LNCS, vol. 5170, pp. 22–27. Springer (2008)

  60. Paech, B.: Gentzen-systems for propositional temporal logics. In: Börger, E., Büning, H.K., Richter, M.M. (eds.) Proceedings of the 2nd Workshop on Computer Science Logic (CSL’88). LNCS, vol. 385, pp. 240–253. Springer (1989)

  61. Parikh, R., Chandra, A.K., Halpern, J.Y., Meyer, A.R.: Equations between regular terms and an application to process logic. SIAM J. Comput. 14(4), 935–942 (1985)

    Article  MATH  MathSciNet  Google Scholar 

  62. Pei, Y., Xu, Q.: Checking interval based properties for reactive systems. In: Steffen, B., Levi, G. (eds.) Verification, Model Checking, and Abstract Interpretation. LNCS, vol. 2937, pp. 51–75. Springer (2004)

  63. Peterson, G.L.: Myths about the mutual exclusion problem. Inf. Process. Lett. 12(3), 115–116 (1981)

    Article  MATH  Google Scholar 

  64. Pnueli, A.: The temporal logic of programs. In: Proc. 18th Ann. IEEE Symp. on the Foundation of Computer Science (FOCS), pp. 46–57. IEEE Computer Society Press (1977)

  65. Pnueli, A.: In transition from global to modular temporal reasoning about programs. In: Apt, K.R. (ed.) Logics and Models of Concurrent Systems. NATO ASI Series F, vol. 13, pp. 123–144. Springer (1985)

  66. Prior, A.: Past, Present and Future. Oxford University Press, London (1967)

    Book  MATH  Google Scholar 

  67. Reif, W., Schellhorn, G., Stenzel, K., Balser, M.: Structured specifications and interactive proofs with KIV. In: Bibel, W., Schmitt, P.H. (eds.) Automated Deduction—A Basis for Applications, Volume II: Systems and Implementation Techniques, pp. 13–39. Kluwer Academic Publishers, Dordrecht (1998)

    Chapter  Google Scholar 

  68. Reynolds, M.: A tableau for until and since over linear time. In: 18th Int’l Symp. on Temporal Representation and Reasoning (TIME 2011), pp. 41–48. IEEE Computer Society (2011)

  69. de Roever, W.P., de Boer, F., Hanneman, U., Hooman, J., Lakhnech, Y., Poel, M., Zwiers, J.: Concurrency Verification: Introduction to Compositional and Noncompositional Methods. No. 54 in Cambridge Tracts in Theoretical Computer Science. Cambridge University Press (2001)

  70. Sánchez, C., Leucker, M.: Regular Linear Temporal Logic with past. In: 11th Int’l Conf. on Verification, Model Checking, and Abstract Interpretation (VMCAI 2010). LNCS, vol. 5944, pp. 295–311. Springer (2010)

  71. Shanahan, M.: Solving the Frame Problem: A Mathematical Investigation of the Common Sense Law of Inertia. MIT Press (1997)

  72. Siewe, F., Cau, A., Zedan, H.: A compositional framework for access control policies enforcement. In: Backes, M., Basin, D., Waidner, M. (eds.) ACM Workshop on Formal Methods in Security Engineering (FMSE’03), pp. 32–42. ACM Press, Washington, DC (2003)

    Google Scholar 

  73. Stark, E.W.: A proof technique for rely/guarantee properties. In: Proceedings of the 5th Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 1985). LNCS, vol. 206, pp. 369–391. Springer (1985)

  74. Stølen, K.: A method for the development of totally correct shared-state parallel programs. In: CONCUR 1991. LNCS, vol. 527, pp. 510–525. Springer (1991)

  75. Taubenfeld, G.: Synchronization Algorithms and Concurrent Programming. Pearson/Prentice Hall (2006)

  76. Thomas, W.: Automata on infinite objects. In: van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science, vol. B: Formal Models and Semantics, chap. 4, pp. 133–191. Elsevier/MIT Press, Amsterdam (1990)

    Google Scholar 

  77. Thums, A., Schellhorn, G., Ortmeier, F., Reif, W.: Interactive verification of Statecharts. In: Ehrig, H., Damm, W., Desel, J., Große-Rhode, M., Reif, W., Schnieder, E., Westkämper, E. (eds.) SoftSpez Final Report. LNCS, vol. 3147, pp. 355–373. Springer (2004)

  78. Tofan, B., Bäumler, S., Schellhorn, G., Reif, W.: Temporal logic verification of lock-freedom. In: Proc. MPC 2010. LNCS, vol. 6120, pp. 377–396. Springer (2010)

  79. van Emde Boas, P.: The connection between modal logic and algorithmic logic. In: 7th Symposium on Mathematical Foundations of Computer Science (MFCS 1978). LNCS, vol. 64, pp. 1–15. Springer (1978)

  80. Webber, L., Nilsson, N.J. (eds.): Readings in Artificial Intelligence. Tioga Publishing Co., Palo Alto, CA (1981)

    MATH  Google Scholar 

  81. Yang, X., Duan, Z., Ma, Q.: Axiomatic semantics of projection temporal logic programs. Math. Struct. Comput. Sci. 20(5), 865–914 (2010)

    Article  MATH  MathSciNet  Google Scholar 

  82. Zhang, N., Duan, Z., Tian, C.: A cylinder computation model for many-core parallel computing. Theor. Comput. Sci. (2012). doi:10.1016/j.tcs.2012.02.011

    MathSciNet  Google Scholar 

  83. Zhou, C., Hansen, M.R.: Duration Calculus: A Formal Approach to Real-Time Systems. Monographs in Theoretical Computer Science (An EATCS series). Springer (2004)

  84. Zhou, C., Hoare, C.A.R., Ravn, A.P.: A calculus of durations. Inf. Process. Lett. 40(5), 269–276 (1991)

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ben Moszkowski.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Moszkowski, B. Compositional reasoning using intervals and time reversal. Ann Math Artif Intell 71, 175–250 (2014). https://doi.org/10.1007/s10472-013-9356-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10472-013-9356-8

Keywords

Mathematics Subject Classifications (2010)

Navigation