Skip to main content
Log in

A tableau-based decision procedure for CTL*

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

We present a sound, complete and implementable tableau method for deciding satisfiability of formulas in the propositional version of computation tree logic CTL*. This is the first such tableau. CTL* is an exceptionally important temporal logic with applications from hardware design to agent reasoning, but there is no easily automated reasoning approach to CTL*. The tableau here is a traditional tree-shaped or top-down style tableau, and affords the possibility of reasonably quick decisions on the satisfiability of medium-sized formulas and construction of small models for them. A straightforward subroutine is given for determining when looping allows successful branch termination, but much needed further development is left as future work. In particular, a more general repetition prevention mechanism is needed to speed up the task of tableau construction.

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.

Institutional subscriptions

Similar content being viewed by others

References

  1. Bhat G, Cleaveland R, Grumberg O (1995) Efficient on-the-fly model checking for ctl. In: LICS 1995. IEEE Computer Society Press, pp 388–397

  2. Bolotov A, Dixon C, Fisher M (1999) Clausal resolution for ctl. In: MFCS’99, pp 137–148

  3. Bernholtz O, Grumberg O (1994) Buy one, get one free !!! In: Gabbay D, Ohlbach H (eds) Temporal logic. Proceedings of ICTL ’94, LNAI, vol 827. Springer, Berlin, pp 210–224

  4. Clarke E, Emerson E (1981) Synthesis of synchronization skeletons for branching time temporal logic. In: Proceedings of IBM workshop on logic of programs, Yorktown heights, NY. Springer, Berlin, pp 52–71

  5. Emerson E, Clarke EC (1982) Using branching time temporal logic to synthesise synchronisation skeletons. Sci Comput Program 2: 241–266

    Article  MATH  Google Scholar 

  6. Emerson E, Halpern J (1985) Decision procedures and expressiveness in the temporal logic of branching time. J. Comput Syst Sci 30(1): 1–24

    Article  MathSciNet  MATH  Google Scholar 

  7. Emerson E, Halpern J (1986) ‘Sometimes’ and ‘not never’ revisited: on branching versus linear time. J ACM 33: 151–178

    Article  MathSciNet  MATH  Google Scholar 

  8. Emerson E, Jutla C (1988) Complexity of tree automata and modal logics of programs. In: Proceedings of 29th IEEE foundations of computer science. IEEE

  9. Emerson E (1983) Alternative semantics for temporal logics. Theor Comput Sci 26: 121–130

    Article  MathSciNet  MATH  Google Scholar 

  10. Emerson EA (1990) Temporal and modal logic. In: van Leeuwen J (eds) Handbook of theoretical computer science, vol B. Elsevier, Amsterdam

    Google Scholar 

  11. Emerson E (1996) Automated temporal reasoning for reactive systems. In: Moller F, Birtwistle G (eds) Logics for concurrency. Springer, Berlin, pp 41–101

    Google Scholar 

  12. Emerson E, Sistla A (1984) Deciding full branching time logic. Inf Control 61: 175–201

    Article  MathSciNet  MATH  Google Scholar 

  13. Fitting M (1983) Proof methods for modal and intuitionistic logics. Reidel

  14. Friedmann O, Latte M, Lange M (2010) A decision procedure for ctl* based on tableaux and automata. In: IJCAR’10, pp 331–345

  15. Goré R (1999) Tableau methods for modal and temporal logics. In: D’Agostino M, Gabbay D, Hähnle R, Posegga J (eds) Handbook of tableau methods. Kluwer, Dordrecht, pp 297–396

    Google Scholar 

  16. Gough G (1989) Decision procedures for temporal logics. Technical report UMCS-89-10-1. Department of Computer Science, University of Manchester

  17. Hughes G, Cresswell M (1968) An introduction to modal logic. Methuen, London

    MATH  Google Scholar 

  18. Hodkinson I, Reynolds M (2007) Temporal logic. In: Handbook of modal logic. Elsevier, pp 655–720

  19. Heuerding A, Seyfried M, Zimmermann H (1996) Efficient loop-check for backward proof search in some non-classical propositional logics. In: Miglioli P, Moscato U, Mundici D, Ornaghi M (eds) TABLEAUX. Lecture notes in computer science, vol 1071. Springer, Berlin, pp 210–225

  20. Lange M (2002) Games for modal and temporal logics. PhD thesis, University of Edinburgh

  21. Luo X, Su K, Sattar A, Chen Q, Lv G (2005) Bounded model checking knowledge and branching time in synchronous multi-agent systems. In: AAMAS ’05: Proceedings of the fourth international joint conference on autonomous agents and multiagent systems. ACM, New York, pp 1129–1130

  22. Pnueli A, Kesten Y (2002) A deductive proof system for CTL*. In: Brim L, Jancar P, Kretínský M, Kucera A (eds) CONCUR. Lecture notes in computer science, vol 2421. Springer, Berlin, pp 24–40

  23. Pnueli A (1977) The temporal logic of programs. In: Proceedings of the eighteenth symposium on foundations of computer science, Providence, RI, pp 46–57

  24. Pnueli A, Rosner R (1989) On the synthesis of a reactive module. In: Proceedings of the sixteenth symposium of principles of programming languages. ACM, pp 179–190

  25. Reynolds M, Dixon C (2005) Theorem-proving for discrete temporal logic. In: Fisher M, Gabbay D, and Vila L (eds) Handbook of temporal reasoning in artificial intelligence. Elsevier, pp 279–314

  26. Reynolds M (2000) More past glories. In: Fifteenth annual IEEE symposium on logic in computer science (LICS’2000), Santa Barbara, California, USA, June 26–28, 2000. IEEE, pp 229–240

  27. Reynolds M (2001) An axiomatization of full computation tree logic. J Symb Logic 66(3): 1011–1057

    Article  MathSciNet  MATH  Google Scholar 

  28. Reynolds M (2005) An axiomatization of PCTL*. Inf Comput 201: 72–119

    Article  MathSciNet  MATH  Google Scholar 

  29. Reynolds M (2007) A tableau for bundled CTL*. J Logic Comput 17: 117–132

    Article  MathSciNet  MATH  Google Scholar 

  30. Reynolds M (2009) A tableau for CTL*. In: Cavalcanti A, Dams D (eds) FM 2009: Proceedings of formal methods, second world congress, Eindhoven, The Netherlands, November 2009. Lecture notes in computer science, vol 5850. Springer, pp 403–418

  31. Schwendimann S (1998) A new one-pass tableau calculus for PLTL. In: de Swart HCM (ed) Proceedings of international conference, TABLEAUX 1998, Oisterwijk, LNAI 1397. Springer, pp 277–291

  32. Sprenger C (2000) Deductive local model checking. PhD thesis, Swiss Federal Institute of Technology, Lausanne, Switzerland

  33. Stirling C (1992) Modal and temporal logics. In: Abramsky S, Gabbay D, Maibaum T (eds) Handbook of logic in computer science, vol 2. Oxford University Press, pp 477–563

  34. Vardi M, Stockmeyer L (1985) Improved upper and lower bounds for modal logics of programs. In: Proceedings of 17th ACM symposium on theory of computing. ACM, pp 240–251

  35. Wolper P (1985) The tableau method for temporal logic: an overview. Logique et Analyse 28: 110–111

    MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mark Reynolds.

Additional information

by Ana Cavalcanti, Dennis Dams and Marie-Claude Gaudel

Rights and permissions

Reprints and permissions

About this article

Cite this article

Reynolds, M. A tableau-based decision procedure for CTL*. Form Asp Comp 23, 739–779 (2011). https://doi.org/10.1007/s00165-011-0193-4

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-011-0193-4

Keywords

Navigation