Journal of Automated Reasoning

, Volume 56, Issue 3, pp 343–365 | Cite as

Completeness and Decidability Results for CTL in Constructive Type Theory

  • Christian Doczkal
  • Gert Smolka


We prove completeness and decidability results for the temporal logic CTL in Coq/Ssreflect. Our main result is a constructive proof that for every formula one can obtain either a finite model satisfying the formula or a proof in a Hilbert system certifying the unsatisfiability of the formula. The small model property of CTL and completeness of the Hilbert system follow as corollaries. Our proofs mostly refine the mathematical proofs given by Emerson and Halpern. One important deviation is our use of an inductive semantics for CTL to avoid reasoning about infinite paths. On finite models the inductive semantics agrees constructively with the standard path semantics. The proof amounts to the verification of a simple model checking algorithm. For general models, the agreement between the inductive semantics and the path semantics requires excluded middle and dependent choice.


Computation tree logic (CTL) Hilbert axiomatizations  Completeness Decidability Coq Ssreflect Constructive proofs Interactive theorem proving 

Supplementary material (75 kb)
Supplementary material 1 (zip 74 KB)


  1. 1.
    Baier, C., Katoen, J.P.: Principles of Model Checking. MIT Press, Cambridge (2008)zbMATHGoogle Scholar
  2. 2.
    Ben-Ari, M., Pnueli, A., Manna, Z.: The temporal logic of branching time. Acta Inf. 20(3), 207–226 (1983)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Bertot, Y., Gonthier, G., Biha, S.O., Pasca, I.: Canonical big operators. In: O.A. Mohamed, C. Muñoz, S. Tahar (eds.) Theorem Proving in Higher Order Logics (TPHOLs 2008), LNCS, vol. 5170, pp. 86–101. Springer (2008)Google Scholar
  4. 4.
    Brünnler, K., Lange, M.: Cut-free sequent systems for temporal logic. J. Log. Algebr. Program. 76(2), 216–225 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Clarke, E.M., Emerson, E.A., Sistla, A.P.: Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Trans. Program. Lang. Syst. 8(2), 244–263 (1986)CrossRefzbMATHGoogle Scholar
  6. 6.
    Doczkal, C., Smolka, G.: Coq formalization accompanying this paper (Online Resource 1).
  7. 7.
    Doczkal, C., Smolka, G.: Completeness and decidability results for CTL in Coq. In: G. Klein, R. Gamboa (eds.) Interactive Theorem Proving (ITP 2014), LNAI, vol. 8558, pp. 226–241. Springer (2014)Google Scholar
  8. 8.
    Emerson, E.A.: Temporal and modal logic. In: van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science: Formal Models and Sematics, vol. B, pp. 995–1072. Elsevier, Amsterdam (1990)Google Scholar
  9. 9.
    Emerson, E.A.: The beginning of model checking: a personal perspective. In: Grumberg, O., Veith, H. (eds.) 25 Years of Model Checking, LNCS, vol. 5000, pp. 27–45. Springer, Berlin (2008)CrossRefGoogle Scholar
  10. 10.
    Emerson, E.A., Clarke, E.M.: Characterizing correctness properties of parallel programs using fixpoints. In: de Bakker, J.W., van Leeuwen, J. (eds.) Automata, Languages and Programming, LNCS, vol. 85, pp. 169–181. Springer, Berlin (1980)CrossRefGoogle Scholar
  11. 11.
    Emerson, E.A., Clarke, E.M.: Using branching time temporal logic to synthesize synchronization skeletons. Sci. Comput. Program. 2(3), 241–266 (1982)CrossRefzbMATHGoogle Scholar
  12. 12.
    Emerson, E.A., Halpern, J.Y.: Decision procedures and expressiveness in the temporal logic of branching time. J. Comput. Syst. Sci. 30(1), 1–24 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Emerson, E.A., Lei, C.: Efficient model checking in fragments of the propositional mu-calculus (extended abstract). In: Proceedings, Symposium on Logic in Computer Science, 16–18 June 1986, Cambridge, Massachusetts, USA, pp. 267–278. IEEE Computer Society (1986)Google Scholar
  14. 14.
    Escardó, M.: Infinite sets that satisfy the principle of omniscience in any variety of constructive mathematics. J. Symb. Log. 78(3), 764–784 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Fischer, M.J., Ladner, R.E.: Propositional dynamic logic of regular programs. J. Comput. Syst. Sci. 18(2), 194–211 (1979)MathSciNetCrossRefzbMATHGoogle Scholar
  16. 16.
    Fitting, M.: Modal proof theory. In: Blackburn, P., van Benthem, J., Wolter, F. (eds.) Handbook of Modal Logic, Studies in Logic and Practical Reasoning, vol. 3, pp. 85–138. Elsevier, Amsterdam (2007)Google Scholar
  17. 17.
    Gonthier, G., Mahboubi, A., Rideau, L., Tassi, E., Théry, L.: A modular formalisation of finite group theory. In: Schneider, K., Brandt, J. (eds.) Theorem Proving in Higher Order Logics (TPHOLs 2007), LNCS, vol. 4732, pp. 86–101. Springer, Berlin (2007)CrossRefGoogle Scholar
  18. 18.
    Gonthier, G., Mahboubi, A., Tassi, E.: A small scale reflection extension for the Coq system. Research report RR-6455, INRIA Saclay (2008)Google Scholar
  19. 19.
    Herbelin, H.: A constructive proof of dependent choice, compatible with classical logic. In: 27th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), pp. 365–374. IEEE Computer Society (2012)Google Scholar
  20. 20.
    Kaminski, M., Schneider, T., Smolka, G.: Correctness and worst-case optimality of Pratt-style decision procedures for modal and hybrid logics. In: Brünnler, K., Metcalfe, G. (eds.) Automated Reasoning with Analytic Tableaux and Related Methods (TABLEAUX 2011), LNAI, vol. 6793, pp. 196–210. Springer, Berlin (2011)CrossRefGoogle Scholar
  21. 21.
    Kaminski, M., Smolka, G.: Terminating tableaux for hybrid logic with eventualities. In: Giesl, J., Hähnle, R. (eds.) Automated Reasoning (IJCAR 2010), LNCS, vol. 6173, pp. 240–254. Springer, Berlin (2010)CrossRefGoogle Scholar
  22. 22.
    Kaminski, M., Smolka, G.: A goal-directed decision procedure for hybrid PDL. J. Autom. Reason. 52(4), 407–450 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
  23. 23.
    Lange, M., Stirling, C.: Focus games for satisfiability and completeness of temporal logic. In: 16th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), pp. 357–365. IEEE Computer Society (2001)Google Scholar
  24. 24.
    Pratt, V.R.: Models of program logics. In: 20th Annual Symposium on Foundations of Computer Science (FOCS’79), pp. 115–122. IEEE Computer Society (1979)Google Scholar
  25. 25.
    Smullyan, R.M.: First-Order Logic. Springer, Berlin (1968)CrossRefzbMATHGoogle Scholar
  26. 26.
    Sozeau, M.: A new look at generalized rewriting in type theory. J. Form. Reason. 2(1), 41–62 (2009)MathSciNetzbMATHGoogle Scholar
  27. 27.
    The Coq Development Team.

Copyright information

© Springer Science+Business Media Dordrecht 2016

Authors and Affiliations

  1. 1.Saarland UniversitySaarbrückenGermany

Personalised recommendations