Browse > Article
http://dx.doi.org/10.4134/JKMS.j160546

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)
Publication Information
Journal of the Korean Mathematical Society / v.54, no.5, 2017 , pp. 1521-1536 More about this Journal
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
formal proofs; first-order predicate logic; Kripke semantics; soundness; completeness;
Citations & Related Records
연도 인용수 순위
  • Reference
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.   DOI
6 A. Chargueraud, The locally nameless representation, J. Automat. Reason. 49 (2012), no. 3, 363-408.   DOI
7 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.   DOI
8 Coq Development Team, The Coq Proof Assistant Reference Manual, Available at http://coq.inria.fr.
9 T. Coquand, An algorithm for testing conversion in type theory, Logical frameworks (Sophia-Antipolis, 1990), 255-279, Cambridge Univ. Press, Cambridge, 1991.
10 H. B. Curry and R. Feys, Combinatory Logic. Vol. I, North Holland, 1958.
11 G. Gentzen, Untersuchungen uber das logische SchlieBen. I, Math. Z. 39 (1935), no. 1, 176-210.   DOI
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 J. McKinna and R. Pollack, Some lambda calculus and type theory formalized, J. Automat. Reason. 23 (1999), no. 3-4, 373-409.   DOI
16 D. Ilik, G. Lee, and H. Herbelin, Kripke models for classical logic, Ann. Pure Appl. Logic 161 (2010), no. 11, 1367-1378.   DOI
17 S. A. Kripke, A Completeness Theorem in Modal Logic, J. Symb. Logic 24 (1959), no. 1, 1-14.   DOI
18 S. A. Kripke, Semantical considerations on modal logic, Acta Philos. Fenn. 16 (1963), 83-94.
19 C. McBride and J. McKinna, The view from the left, J. Funct. Programming 14 (2004), no. 1, 69-111.   DOI
20 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.
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.   DOI
24 M. Sato and R. Pollack, External and internal syntax of the $\lambda$-calculus, J. Symbolic Comput. 45 (2010), no. 5, 598-616.   DOI
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.   DOI