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.
Similar content being viewed by others
References
Aceto, L., Ingólfsdóttir, A., Larsen, K.G., Srba, J.: Reactive Systems: Modelling, Specification and Verification. Cambridge University Press (2007)
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)
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)
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)
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)
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)
Bäumler, S., Schellhorn, G., Tofan, B., Reif, W.: Proving linearizability with temporal logic. Form. Asp. Comput. 23(1), 91–112 (2011)
Biere, A., Cimatti, A., Clarke, E.M., Strichman, O., Zhu, Y.: Bounded model checking. Adv. Comput. 58, 117–148 (2003)
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)
Collette, P.: Composition of assumption-commitment specifications in a UNITY style. Sci. Comput. Program. 23(2–3), 107–125 (1994)
Dijkstra, E.W.: Cooperating sequential processes. In: Genuys, F. (ed.) Programming Languages: NATO Advanced Study Institute, pp. 43–112. Academic Press (1968)
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]
Duan, Z.: Temporal Logic and Temporal Logic Programming. Science Press, Beijing, China (2005). Published version of [12]
Duan, Z., Koutny, M.: A framed temporal logic programming language. J. Comput. Sci. Technol. 19(3), 341–351 (2004)
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)
Duan, Z., Yang, X., Koutny, M.: Framed temporal logic programming. Sci. Comput. Program. 70(1), 31–61 (2008)
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
Fisher, M.: An Introduction to Practical Formal Methods Using Temporal Logic. Wiley (2011)
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)
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)
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
Hale, R.: Temporal logic programming. In: Galton, A. (ed.) Temporal Logics and Their Applications, pp. 91–119. Academic Press, London (1987)
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
Hansen, M.R., Zhou, C.: Duration calculus: logical foundations. Form. Asp. Comput. 9(3), 283–330 (1997)
Harel, D., Kozen, D., Parikh, R.: Process logic: expressiveness, decidability, completeness. J. Comput. Syst. Sci. 25(2), 144–170 (1982)
Harel, D., Kozen, D., Tiuryn, J.: Dynamic Logic. MIT Press, Cambridge, MA (2000)
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)
Herlihy, M., Shavit, N.: The Art of Multiprocessor Programming. Morgan Kaufmann Publishers Inc., San Francisco, CA (2008)
Hoare, C.A.R.: An axiomatic basis for computer programming. Commun. ACM 12(10), 576–580,583 (1969)
Holzmann, G.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley Professional (2003)
Interval Temporal Logic web pages. http://www.tech.dmu.ac.uk/STRL/ITL/. Accessed 24 April 2013
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)
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)
Jones, C.B.: Tentative steps toward a development method for interfering programs. ACM Trans. Program. Lang. Syst. 5(4), 596–619 (1983)
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)
Kröger, F., Merz, S.: Temporal Logic and State Systems. Texts in Theoretical Computer Science (An EATCS Series). Springer (2008)
Lamport, L.: Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers. Addison-Wesley Professional (2002)
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)
Lichtenstein, O., Pnueli, A.: Propositional temporal logics: decidability and completeness. Logic J. IGPL 8(1), 55–85 (2000)
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)
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)
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)]
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)
Moszkowski, B.: Reasoning about digital circuits. Ph.D. thesis, Department of Computer Science, Stanford University (1983). Technical report STAN–CS–83–970
Moszkowski, B.: A temporal logic for multilevel reasoning about hardware. Computer 18, 10–19 (1985)
Moszkowski, B.: Executing Temporal Logic Programs. Cambridge University Press, Cambridge (1986)
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)
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)
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)
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)
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)
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)
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
Moszkowski, B.: Using temporal logic to analyse temporal logic: a hierarchical approach based on intervals. J. Log. Comput. 17(2), 333–409 (2007)
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)
Moszkowski, B.: A complete axiom system for propositional Interval Temporal Logic with infinite time. Log. Meth. Comp. Sci. 8(3:10), 1–56 (2012)
Moszkowski, B.: Interconnections between classes of sequentially compositional temporal formulas. Inf. Process. Lett. 113, 350–353 (2013)
Olderog, E.R., Dierks, H.: Real-Time Systems: Formal Specification and Automatic Verification. Cambridge University Press, Cambridge (2008)
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)
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)
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)
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)
Peterson, G.L.: Myths about the mutual exclusion problem. Inf. Process. Lett. 12(3), 115–116 (1981)
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)
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)
Prior, A.: Past, Present and Future. Oxford University Press, London (1967)
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)
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)
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)
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)
Shanahan, M.: Solving the Frame Problem: A Mathematical Investigation of the Common Sense Law of Inertia. MIT Press (1997)
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)
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)
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)
Taubenfeld, G.: Synchronization Algorithms and Concurrent Programming. Pearson/Prentice Hall (2006)
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)
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)
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)
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)
Webber, L., Nilsson, N.J. (eds.): Readings in Artificial Intelligence. Tioga Publishing Co., Palo Alto, CA (1981)
Yang, X., Duan, Z., Ma, Q.: Axiomatic semantics of projection temporal logic programs. Math. Struct. Comput. Sci. 20(5), 865–914 (2010)
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
Zhou, C., Hansen, M.R.: Duration Calculus: A Formal Approach to Real-Time Systems. Monographs in Theoretical Computer Science (An EATCS series). Springer (2004)
Zhou, C., Hoare, C.A.R., Ravn, A.P.: A calculus of durations. Inf. Process. Lett. 40(5), 269–276 (1991)
Author information
Authors and Affiliations
Corresponding author
Rights 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
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10472-013-9356-8
Keywords
- Interval Temporal Logic
- Compositional reasoning
- Formal verification
- Time reversal
- Symmetry
- Mutual exclusion
- Peterson’s algorithm