Completeness Theorems for First-Order Logic Analysed in Constructive Type Theory

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11972)


We study various formulations of the completeness of first-order logic phrased in constructive type theory and mechanised in the Coq proof assistant. Specifically, we examine the completeness of variants of classical and intuitionistic natural deduction and sequent calculi with respect to model-theoretic, algebraic, and game semantics. As completeness with respect to standard model-theoretic semantics is not readily constructive, we analyse the assumptions necessary for particular syntax fragments and discuss non-standard semantics admitting assumption-free completeness. We contribute a reusable Coq library for first-order logic containing all results covered in this paper.



We thank Kathrin Stark for adapting Autosubst according to our needs, Fabian Kunze for helping with technicalities during the formalisation of Corollary 41, and Hugo Herbelin for fruitful discussion and pointers to relevant work.

Supplementary material


  1. 1.
    Bauer, A.: First steps in synthetic computability theory. Electron. Notes Theor. Comput. Sci. 155, 5–31 (2006). Proceedings of the 21st Annual Conference on Mathematical Foundations of Programming Semantics (MFPS XXI)CrossRefGoogle Scholar
  2. 2.
    Berardi, S.: Intuitionistic completeness for first order classical logic. J. Symbolic Logic 64(1), 304–312 (1999)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Berger, U., Schwichtenberg, H.: An inverse of the evaluation functional for typed lambda-calculus. In: 1991 Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science, pp. 203–211. IEEE (1991)Google Scholar
  4. 4.
    Blanchette, J.C., Popescu, A., Traytel, D.: Unified classical logic completeness. In: Demri, S., Kapur, D., Weidenbach, C. (eds.) IJCAR 2014. LNCS (LNAI), vol. 8562, pp. 46–60. Springer, Cham (2014). Scholar
  5. 5.
    Braselmann, P., Koepke, P.: Gödel’s completeness theorem. Formalized Math. 13(1), 49–53 (2005)Google Scholar
  6. 6.
    Constable, R., Bickford, M.: Intuitionistic completeness of first-order logic. Ann. Pure Appl. Logic 165(1), 164–198 (2014)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Coquand, T., Mannaa, B.: The independence of Markov’s principle in type theory. Logical Methods Comput. Sci. 13(3), 18605974 (2017). arXiv: 1602.04530
  8. 8.
    de Bruijn, N.G.: Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theorem. Indagationes Mathematicae (Proceedings) 75(5), 381–392 (1972)MathSciNetCrossRefGoogle Scholar
  9. 9.
    Delaware, B., d S Oliveira, B.C., Schrijvers, T.: Meta-theory à la carte. In: ACM SIGPLAN Notices, vol. 48, pp. 207–218. ACM (2013)Google Scholar
  10. 10.
    Dybjer, P., Filinski, A.: Normalization and partial evaluation. In: Barthe, G., Dybjer, P., Pinto, L., Saraiva, J. (eds.) APPSEM 2000. LNCS, vol. 2395, pp. 137–192. Springer, Heidelberg (2002). Scholar
  11. 11.
    Felscher, W.: Dialogues, strategies, and intuitionistic provability. Ann. Pure Appl. Logic 28(3), 217–254 (1985)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Forster, Y., Larchey-Wendling, D., Dudenhefner, A., Heiter, E., Kirst, D., Kunze, F., Gert, S., Spies, S., Wehr, D., Wuttke, M.: A Coq Library of Undecidable Problems (2019).
  13. 13.
    Forster, Y., Heiter, E., Smolka, G.: Verification of PCP-related computational reductions in Coq. In: Avigad, J., Mahboubi, A. (eds.) ITP 2018. LNCS, vol. 10895, pp. 253–269. Springer, Cham (2018). Scholar
  14. 14.
    Forster, Y., Kirst, D., Smolka, G.: On synthetic undecidability in Coq, with an application to the Entscheidungsproblem. In: International Conference on Certified Programs and Proofs, pp. 38–51. ACM (2019)Google Scholar
  15. 15.
    Forster, Y., Kunze, F.: Verified extraction from Coq to a Lambda-Calculus. In: Coq Workshop, vol. 2016 (2016)Google Scholar
  16. 16.
    Forster, Y., Kunze, F.: A certifying extraction with time bounds from Coq to call-by-value Lambda Calculus. In: Harrison, J., O’Leary, J., Tolmach, A. (eds.) 10th International Conference on Interactive Theorem Proving, volume 141 of Leibniz International Proceedings in Informatics (LIPIcs), Dagstuhl, Germany, pp. 17:1–17:19. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2019)Google Scholar
  17. 17.
    Forster, Y., Smolka, G.: Weak call-by-value lambda calculus as a model of computation in Coq. In: Ayala-Rincón, M., Muñoz, C.A. (eds.) ITP 2017. LNCS, vol. 10499, pp. 189–206. Springer, Cham (2017). Scholar
  18. 18.
    Gödel, K.: Die Vollständigkeit der Axiome des logischen Funktionenkalküls. Monatshefte für Mathematik und Physik 37, 349–360 (1930)MathSciNetCrossRefGoogle Scholar
  19. 19.
    Han, J., van Doorn, F.: A formalization of forcing and the consistency of the failure of the continuum hypothesis. In: International Conference on Interactive Theorem Proving. Springer, Heidelberg (2019).
  20. 20.
    Hasenjaeger, G.: Eine Bemerkung zu Henkin’s Beweis für die Vollständigkeit des Prädikatenkalküls der Ersten Stufe. J. Symbolic Logic 18(1), 42–48 (1953)MathSciNetCrossRefGoogle Scholar
  21. 21.
    Henkin, L.: The completeness of the first-order functional calculus. J. Symbolic Logic 14(3), 159–166 (1949)MathSciNetCrossRefGoogle Scholar
  22. 22.
    Herbelin, H., Ilik, D.: An analysis of the constructive content of Henkin’s proof of Gödel’s completeness theorem. Draft (2016)Google Scholar
  23. 23.
    Herbelin, H., Lee, G.: Forcing-based cut-elimination for gentzen-style intuitionistic sequent calculus. In: Ono, H., Kanazawa, M., de Queiroz, R. (eds.) WoLLIC 2009. LNCS (LNAI), vol. 5514, pp. 209–217. Springer, Heidelberg (2009). Scholar
  24. 24.
    Ilik, D.: Constructive completeness proofs and delimited control. Ph.D. thesis, Ecole Polytechnique X (2010)Google Scholar
  25. 25.
    Ishihara, H.: Reverse mathematics in Bishop’s constructive mathematics. Philosophia Scientae 6, 43–59 (2006)CrossRefGoogle Scholar
  26. 26.
    Keuchel, S., Schrijvers, T.: Generic datatypes à la carte. In: ACM SIGPLAN Workshop on Generic Programming, pp. 13–24. ACM (2013)Google Scholar
  27. 27.
    Kirst, D., Smolka, G.: Categoricity results and large model constructions for second-order ZF in dependent type theory. J. Autom. Reasoning 63, 415–438 (2018)MathSciNetCrossRefGoogle Scholar
  28. 28.
    Kreisel, G.: On weak completeness of intuitionistic predicate logic. J. Symbolic Logic 27(2), 139–158 (1962)MathSciNetCrossRefGoogle Scholar
  29. 29.
    Kreisel, G., Troelstra, A.S.: Formal systems for some branches of intuitionistic analysis. Ann. Math. Logic 1(3), 229–387 (1970)MathSciNetCrossRefGoogle Scholar
  30. 30.
    Krivine, J.-L.: Une preuve formelle et intuitionniste du théorème de complétude de la logique classique. Bull. Symbolic Logic 2(4), 405–421 (1996)MathSciNetCrossRefGoogle Scholar
  31. 31.
    Krivtsov, V.N.: An intuitionistic completeness theorem for classical predicate logic. Studia Logica 96(1), 109–115 (2010)MathSciNetCrossRefGoogle Scholar
  32. 32.
    Krivtsov, V.N.: Semantical completeness of first-order predicate logic and the weak fan theorem. Studia Logica 103(3), 623–638 (2015)MathSciNetCrossRefGoogle Scholar
  33. 33.
    Leivant, D.: Failure of completeness properties of intuitionistic predicate logic for constructive models. Annales scientifiques de l’Université de Clermont. Mathématiques 60(13), 93–107 (1976)Google Scholar
  34. 34.
    Lorenzen, P.: Logik und Agon. Atti del XII Congresso Internazionale di Filosofia 4, 187–194 (1960)Google Scholar
  35. 35.
    Lorenzen, P.: Ein dialogisches Konstruktivitätskriterium. In: Proceedings of the Symposium on Foundations of Mathematics (Warsaw, 2–9 September 1959), pp. 193–200 (1961)Google Scholar
  36. 36.
    MacNeille, H.M.: Partially ordered sets. Trans. Am. Math. Soc. 42(3), 416–460 (1937)MathSciNetCrossRefGoogle Scholar
  37. 37.
    Mannaa, B., Coquand, T.: The independence of Markov’s principle in type theory. Logical Methods Comput. Sci. 13(3:10), 1–28 (2017)Google Scholar
  38. 38.
    McCarty, C.: Constructive validity is nonarithmetic. J. Symbolic Logic 53, 1036–1041 (1988)MathSciNetCrossRefGoogle Scholar
  39. 39.
    McCarty, C.: Completeness and incompleteness for intuitionistic logic. J. Symbolic Logic 73(4), 1315–1327 (2008)MathSciNetCrossRefGoogle Scholar
  40. 40.
    McCarty, D.C., et al.: Incompleteness in intuitionistic metamathematics. Notre Dame J. Formal Logic 32(3), 323–358 (1991)MathSciNetCrossRefGoogle Scholar
  41. 41.
    Pédrot, P.-M., Tabareau, N.: Failure is not an option. In: Ahmed, A. (ed.) ESOP 2018. LNCS, vol. 10801, pp. 245–271. Springer, Cham (2018). Scholar
  42. 42.
    Plotkin, G.D.: Call-by-name, call-by-value and the lambda-calculus. Theor. Comput. Sci. 1(2), 125–159 (1975)MathSciNetCrossRefGoogle Scholar
  43. 43.
    Ridge, T., Margetson, J.: A mechanically verified, sound and complete theorem prover for first order logic. In: Hurd, J., Melham, T. (eds.) TPHOLs 2005. LNCS, vol. 3603, pp. 294–309. Springer, Heidelberg (2005). Scholar
  44. 44.
    Schlichtkrull, A.: Formalization of the resolution calculus for first-order logic. J. Autom. Reason. 61(1–4), 455–484 (2018)MathSciNetCrossRefGoogle Scholar
  45. 45.
    Schumm, G.F.: A Henkin-style completeness proof for the pure implicational calculus. Notre Dame J. Formal Logic 16(3), 402–404 (1975)MathSciNetCrossRefGoogle Scholar
  46. 46.
    Scott, D.: The algebraic interpretation of quantifiers: intuitionistic and classical. In: Ehrenfeucht, V.M.A., Srebrny, M. (eds.) Andrzej Mostowski and Foundational Studies. IOS Press (2008)Google Scholar
  47. 47.
    Sørensen, M.H., Urzyczyn, P.: Sequent calculus, dialogues, and cut elimination. Reflections Type Theor. \(\lambda \)-Calculus Mind 253–261 (2007).
  48. 48.
    Sozeau, M., Mangin, C.: Equations reloaded: high-level dependently-typed functional programming and proving in Coq. Proc. ACM Program. Lang. 3(ICFP), 86 (2019)CrossRefGoogle Scholar
  49. 49.
    Stark, K., Schäfer, S., Kaiser, J.: Autosubst 2: reasoning with multi-sorted de Bruijn terms and vector substitutions. In: International Conference on Certified Programs and Proofs, pp. 166–180. ACM (2019)Google Scholar
  50. 50.
    The Coq Proof Assistant (2019).
  51. 51.
    Timany, A., Sozeau, M.: Cumulative inductive types in Coq. In: Kirchner, H. (ed.) International Conference on Formal Structures for Computation and Deduction, volume 108 of Leibniz International Proceedings in Informatics (LIPIcs), Dagstuhl, Germany,, pp. 29:1–29:16. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2018)Google Scholar
  52. 52.
    Underwood, J.: Aspects of the computational content of proofs. Technical report, Cornell University (1994)Google Scholar
  53. 53.
    Veldman, W.: An intuitiomstic completeness theorem for intuitionistic predicate logic 1. J. Symbolic Logic 41(1), 159–166 (1976)MathSciNetzbMATHGoogle Scholar
  54. 54.
    Wehr, D.: A constructive analysis of first-order completeness theorems in Coq. Bachelor’s thesis, Saarland University (2019)Google Scholar
  55. 55.
    Wuttke, M.: Verified programming of turing machines in Coq. Bachelor’s thesis, Saarland University (2018)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2020

Authors and Affiliations

  1. 1.Saarland University, Saarland Informatics CampusSaarbrückenGermany

Personalised recommendations