A realizability interpretation of Church's simple theory of types

We give a realizability interpretation of an intuitionistic version of Church's Simple Theory of Types (CST) which can be viewed as a formalization of intuitionistic higher-order logic. Although definable in CST we include operators for monotone induction and coinduction and provide simple realizers for them. Realizers are formally represented in an untyped lambda–calculus with pairing and case-construct. The purpose of this interpretation is to provide a foundation for the extraction of verified programs from formal proofs as an alternative to type-theoretic systems. The advantages of our approach are that (a) induction and coinduction are not restricted to the strictly positive case, (b) abstract mathematical structures and results may be imported, (c) the formalization is technically simpler than in other systems, for example, regarding the definition of realizability, which is a simple syntactical substitution, and the treatment of nested and simultaneous (co)inductive definitions.

[1]  William M. Farmer,et al.  IMPS: An Interactive Mathematical Proof System , 1990, CADE.

[2]  Natarajan Shankar,et al.  PVS: Combining Specification, Proof Checking, and Model Checking , 1996, FMCAD.

[3]  Lawrence C. Paulson,et al.  LEO-II - A Cooperative Automatic Theorem Prover for Classical Higher-Order Logic (System Description) , 2008, IJCAR.

[4]  M. Gordon,et al.  Introduction to HOL: a theorem proving environment for higher order logic , 1993 .

[5]  Makoto Tatsuta Realizability of Monotone Coinductive Definitions and Its Application to Program Synthesis , 1998, MPC.

[6]  Pierre Letouzey,et al.  A New Extraction for Coq , 2002, TYPES.

[7]  N. P. Mendler,et al.  Inductive Types and Type Constraints in the Second-Order lambda Calculus , 1991, Ann. Pure Appl. Log..

[8]  Ulrich Berger,et al.  Proofs, Programs, Processes , 2010, CiE.

[9]  Tarmo Uustalu,et al.  Resumptions, Weak Bisimilarity and Big-Step Semantics for While with Interactive I/O: An Exercise in Mixed Induction-Coinduction , 2010, SOS.

[10]  Ulrich Berger,et al.  Typed vs. Untyped Realizability , 2012, MFPS.

[11]  Nick Bezhanishvili,et al.  Finitely generated free Heyting algebras via Birkhoff duality and coalgebra , 2011, Log. Methods Comput. Sci..

[12]  Thomas Streicher,et al.  On Krivine's Realizability Interpretation of Classical Second-Order Arithmetic , 2008, Fundam. Informaticae.

[13]  Jean-Louis Krivine,et al.  Dependent choice, 'quote' and the clock , 2003, Theor. Comput. Sci..

[14]  Rance Cleaveland,et al.  Implementing mathematics with the Nuprl proof development system , 1986 .

[15]  S. Feferman Constructive Theories of Functions and Classes , 1979 .

[16]  Jaap van Oosten,et al.  Axiomatizing Higher-Order Kleene Realizability , 1994, Ann. Pure Appl. Log..

[17]  K. Hofmann,et al.  Continuous Lattices and Domains , 2003 .

[18]  Christine Paulin-Mohring,et al.  Extracting ω's programs from proofs in the calculus of constructions , 1989, POPL '89.

[19]  M. Gordon HOL: A Proof Generating System for Higher-Order Logic , 1988 .

[20]  J. H. Geuvers,et al.  Inductive and Coinductive Types with Iteration and Recursion , 1992 .

[21]  Brigitte Pientka,et al.  Copatterns: programming infinite structures by observations , 2013, POPL.

[22]  Ralph Matthes,et al.  Iteration and coiteration schemes for higher-order and nested datatypes , 2005, Theor. Comput. Sci..

[23]  Chad E. Brown,et al.  Satallax: An Automatic Higher-Order Prover , 2012, IJCAR.

[24]  Lourdes Del Carmen González-Huesca,et al.  Mendler-style Iso-(Co)inductive predicates: a strongly normalizing approach , 2011, LSFA.

[25]  Dana S. Scott,et al.  Outline of a Mathematical Theory of Computation , 1970 .

[26]  S. Hayashi,et al.  PX, a computational logic , 1988 .

[27]  Christine C. Paulin Extraction de programmes dans le calcul des constructions , 1989 .

[28]  Frank Pfenning,et al.  The TPS Theorem Proving System , 1990, CADE.

[29]  Kenji Miyamoto,et al.  Minlog - A Tool for Program Extraction Supporting Algebras and Coalgebras , 2011, CALCO.

[30]  Christophe Raffalli,et al.  Realizability of the Axiom of Choice in HOL. (An Analysis of Krivine's Work) , 2008, Fundam. Informaticae.

[31]  W. J. Thron,et al.  Encyclopedia of Mathematics and its Applications. , 1982 .

[32]  Kenji Miyamoto,et al.  Program Extraction from Nested Definitions , 2013, ITP.

[33]  Favio E. Miranda-Perea Realizability for Monotone and Clausular (Co)inductive Definitions , 2005, Electron. Notes Theor. Comput. Sci..

[34]  Lawrence Charles Paulson,et al.  Isabelle: A Generic Theorem Prover , 1994 .

[35]  Piergiorgio Odifreddi,et al.  Logic and computer science , 1990 .

[36]  Dale A. Miller A compact representation of proofs , 1987, Stud Logica.

[37]  Daniel Leivant,et al.  Contracting proofs to programs , 1989 .

[38]  Stefan Berghofer Program Extraction in Simply-Typed Higher Order Logic , 2002, TYPES.

[39]  Ulrich Berger,et al.  From coinductive proofs to exact real arithmetic: theory and applications , 2011, Log. Methods Comput. Sci..

[40]  Ulrich Berger,et al.  Realisability for Induction and Coinduction with Applications to Constructive Analysis , 2010, J. Univers. Comput. Sci..