DOI QR코드

DOI QR Code

FORMALIZING THE META-THEORY OF FIRST-ORDER PREDICATE LOGIC

  • Herberlin, Hugo (Laboratoire IRIF-PPS) ;
  • Kim, SunYoung (Department of Mathematics Ewha Womans University) ;
  • Lee, Gyesik (Department of Computer Science and Engineering Hankyong National University)
  • Received : 2016.08.17
  • Accepted : 2017.07.17
  • Published : 2017.09.01

Abstract

This paper introduces a representation style of variable binding using dependent types when formalizing meta-theoretic properties. The style we present is a variation of the Coquand-McKinna-Pollack's locally-named representation. The main characteristic is the use of dependent families in defining expressions such as terms and formulas. In this manner, we can handle many syntactic elements, among which wellformedness, provability, soundness, and completeness are critical, in a compact manner. Another point of our paper is to investigate the roles of free variables and constants. Our idea is that fresh constants can entirely play the role of free variables in formalizing meta-theories of first-order predicate logic. In order to show the feasibility of our idea, we formalized the soundness and completeness of LJT with respect to Kripke semantics using the proof assistant Coq, where LJT is the intuitionistic first-order predicate calculus. The proof assistant Coq supports all the functionalities we need: intentional type theory, dependent types, inductive families, and simultaneous substitution.

Keywords

References

  1. T. Altenkirch and B. Reus, Monadic presentation of lambda terms using generalized inductive types, Computer science logic (Madrid, 1999), 453-468, Lecture Notes in Comput. Sci., 1683, Springer, Berlin, 1999.
  2. B. Aydemir, A. Chargueraud, B. C. Pierce, R. Pollack, and S. Weirich, Engineering formal metatheory, ACM SIGPLAN Notices 43 (2008), no. 1, 3-15.
  3. S. Berghofer and C. Urban, A head-to-head comparison of de Bruijn indices and names, Electronic Notes in Theoretical Computer Science 174 (2007), no. 5, 53-67.
  4. R. S. Bird and L. Meertens, Nested datatypes, Lecture Notes in Computer Science 1422 (1998), 52-67.
  5. R. S. Bird and R. Paterson, de Bruijn notation as a nested datatype, J. Funct. Programming 9 (1999), no. 1, 77-91. https://doi.org/10.1017/S0956796899003366
  6. A. Chargueraud, The locally nameless representation, J. Automat. Reason. 49 (2012), no. 3, 363-408. https://doi.org/10.1007/s10817-011-9225-2
  7. Coq Development Team, The Coq Proof Assistant Reference Manual, Available at http://coq.inria.fr.
  8. T. Coquand, An algorithm for testing conversion in type theory, Logical frameworks (Sophia-Antipolis, 1990), 255-279, Cambridge Univ. Press, Cambridge, 1991.
  9. H. B. Curry and R. Feys, Combinatory Logic. Vol. I, North Holland, 1958.
  10. M. J. Gabbay and A. M. Pitts, A new approach to abstract syntax with variable binding, Formal Aspects of Computing 13 (2002), no. 3-5, 341-363. https://doi.org/10.1007/s001650200016
  11. G. Gentzen, Untersuchungen uber das logische SchlieBen. I, Math. Z. 39 (1935), no. 1, 176-210. https://doi.org/10.1007/BF01201353
  12. H. Herbelin, A $\lambda$-calculus structure isomorphic to Gentzen-style sequent calculus structure , Lecture Notes in Computer Science 933 (1995), 61-75.
  13. H. Herbelin, Sequents quon calcule: de l'interpretation du calcul des sequents comme calcul de $\lambda$-termes et comme calcul de strategies gagnantes, Ph.D. thesis, Universite Paris 7, 1995.
  14. H. Herbelin and G. Lee, Forcing-based cut-elimination for Gentzen-style intuitionistic sequent calculus, Logic, language, information and computation, 209-217, Lecture Notes in Comput. Sci., 5514, Lecture Notes in Artificial Intelligence, Springer, Berlin, 2009.
  15. D. Ilik, G. Lee, and H. Herbelin, Kripke models for classical logic, Ann. Pure Appl. Logic 161 (2010), no. 11, 1367-1378. https://doi.org/10.1016/j.apal.2010.04.007
  16. S. A. Kripke, A Completeness Theorem in Modal Logic, J. Symb. Logic 24 (1959), no. 1, 1-14. https://doi.org/10.2307/2964568
  17. S. A. Kripke, Semantical considerations on modal logic, Acta Philos. Fenn. 16 (1963), 83-94.
  18. C. McBride and J. McKinna, The view from the left, J. Funct. Programming 14 (2004), no. 1, 69-111. https://doi.org/10.1017/S0956796803004829
  19. J. McKinna and R. Pollack, Pure type systems formalized, Typed lambda calculi and applications (Utrecht, 1993), 289-305, Lecture Notes in Comput. Sci., 664, Springer, Berlin, 1993.
  20. J. McKinna and R. Pollack, Some lambda calculus and type theory formalized, J. Automat. Reason. 23 (1999), no. 3-4, 373-409. https://doi.org/10.1023/A:1006294005493
  21. G. Mints, Normal forms for sequent derivations, Kreiseliana, 469-492, A. K. Peters, Wellesley, MA, 1996.
  22. U. Norell, Dependently typed programming in Agda, in A. Kennedy and A. Ahmed, editors, Proceeding of TLDI'09, ACM, 2009, 1-2.
  23. A. M. Pitts, Nominal logic, a first order theory of names and binding, Inform. and Comput. 186 (2003), no. 2, 165-193. https://doi.org/10.1016/S0890-5401(03)00138-X
  24. M. Sato and R. Pollack, External and internal syntax of the $\lambda$-calculus, J. Symbolic Comput. 45 (2010), no. 5, 598-616. https://doi.org/10.1016/j.jsc.2010.01.010
  25. A. Stump, Poplmark 1a with named bound variables, Available at https://www.seas.upenn.edu/-plclub/poplmark/stump.html/.
  26. A. S. Troelstra and D. van Dalen, Constructivism in Mathematics: An Introduction I and II, Stud. Logic Found. Math., vol. 121, 123, North-Holland, 1988.
  27. C. Urban, Nominal Techniques in Isabelle/HOL, J. Automat. Reason. 40 (2008), no. 4, 327-356. https://doi.org/10.1007/s10817-008-9097-2