Abstract
The formal system λδ is a typed λ-calculus that pursues the unification of terms, types, environments, and contexts as the main goal. λδ takes some features from the Automath-related λ-calculi and some from the pure type systems, but differs from both in that it does not include the Π construction while it provides for an abbreviation mechanism at the level of terms. λδ enjoys some important desirable properties such as the confluence of reduction, the correctness of types, the uniqueness of types up to conversion, the subject reduction of the type assignment, the strong normalization of the typed terms, and, as a corollary, the decidability of type inference problem.
Supplemental Material
Available for Download
Online appendix to the formal system λΔ. The appendix supports the information on article 5.
- Asperti, A. and Guerrini, S. 1999. The Optimal Implementation of Functional Programming Languages. Cambridge Tracts in Theoretical Computer Science, vol. 45. Cambridge University Press, Cambridge. Google ScholarDigital Library
- Asperti, A., Padovani, L., Sacerdoti Coen, C., Guidi, F., and Schena, I. 2003. Mathematical knowledge management in HELM. Ann. Math. Artif. Intell. 38, 1, 27--46. Google ScholarDigital Library
- Asperti, A., Sacerdoti Coen, C., Tassi, E., and Zacchiroli, S. 2006. User interaction with the Matita proof assistant. J. Autom. Reason. (Special Issue on User Interfaces for Theorem Proving). To appear. Google ScholarDigital Library
- Barendregt, H. 1993. Lambda calculi with types. Osborne Handbooks Logic Comput. Sci. 2, 117--309. Google ScholarDigital Library
- Barras, B. 1996. Coq en Coq. Rapport de Recherche 3026, INRIA.Google Scholar
- Cescutti, D. 2001. Normalizzazione forte attraverso un'interpretazione negli insiemi saturi. M.S. thesis, University of Padova.Google Scholar
- Church, A. 1941. The Calculi of Lambda-Conversion. Annals of Mathematics Studies, Vol. 6. Princeton University Press, Princeton, NJ. Google ScholarDigital Library
- Coq development team. 2007. The Coq Proof Assistant Reference Manual Version 8.1pl3. INRIA, Orsay.Google Scholar
- Coquand, T. 1985. Une théorie des constructions. Ph.D. thesis, Universite Paris 7.Google Scholar
- Coquand, T. and Huet, G. 1988. The calculus of constructions. Inform. Comput. 76, 2-3, 95--120. Google ScholarDigital Library
- Coquand, T. and Paulin-Mohring, C. 1990. Inductively defined types. In Proceedings of the International Conference on Computer Logic (Colog'88). P. Martin-Löf and G. Mints, Eds. Lecture Notes in Computer Science, vol. 417. Springer, Berlin. Google ScholarDigital Library
- Curien, P. and Herbelin, H. 2000. The duality of computation. In Proceedings of the 5th ACM SIGPLAN International Conference on Functional Programming (ICFP'00), revised ed. ACM SIGPLAN Not. 35, 9. ACM Press, New York, 233--243. Google ScholarDigital Library
- de Bruijn, N. 1991. A plea for weaker frameworks. In Logical Frameworks. Cambridge University Press, Cambridge, MA, 40--67. Google ScholarDigital Library
- de Bruijn, N. 1993. Algorithmic definition of lambda-typed lambda calculus. In Logical Environments. Cambridge University Press, Cambridge, MA, 131--145. Google ScholarDigital Library
- de Bruijn, N. 1994a. Example of a text written in Automath. In Selected Papers on Automath. North-Holland, Amsterdam, 687--700.Google Scholar
- de Bruijn, N. 1994b. Lambda calculus notation with nameless dummies, A tool for automatic formula manipulation, with application to the Church-Rosser theorem. In Selected Papers on Automath. North-Holland, Amsterdam, 375--388.Google Scholar
- de Bruijn, N. 1994c. The mathematical language Automath, its usage, and some of its extensions. In Selected Papers on Automath. North-Holland, Amsterdam, 73--100.Google Scholar
- de Groote, P. 1993. Defining λ-typed λ-calculi by axiomatising the typing relation. In Proceedings of the 10th Annual Symposium on Theoretical Aspects of Computer Science (STACS'93). Lecture Notes in Computer Scince, vol. 665. Springer, Berlin, 712--723. Google ScholarDigital Library
- de Vrijer, R. 1994. Big trees in a λ-calculus with λ-expressions as types. In Selected Papers on Automath. North-Holland, Amsterdam, 469--492.Google Scholar
- Girard, J.-Y., Taylor, P., and Lafont, Y. 1989. Proofs and Types. Cambridge Tracts in Theoretical Computer Science, vol. 7. Cambridge University Press, Cambridge, MA. Google ScholarDigital Library
- Guidi, F. 2006. Lambda-Types on the lambda-calculus with abbreviations: A certified specification. Tech. rep. UBLCS 2006-01, University of Bologna. http://www.cs.unibo.it/pub/TR/UBLCS/2006/2006-01.pdf.Google Scholar
- Guidi, F. 2007a. lambda-delta. Formal specification with the proof assistant coq. http://helm.cs.unibo.it/lambda-delta/.Google Scholar
- Guidi, F. 2007b. Procedural representation of CIC proof terms. In Local Proceedings of Programming Languages for Mechanized Mathematics Workshop (PLMMS'07). RISC-LINZ Report Series 07-10 (3120), J. Carette and F. Wiediejk, Eds. 36--52. http://www.risc.uni-linz.ac.at/publications/download/risc_3120/PLMMS_proc.pdf.Google Scholar
- Hendriks, D. and van Oostrom, V. 2003. Adbmal. In Proceedings of the 19th Conference on Automated Deduction (CADE 19). Lecture Notes in Artificial Intelligence, vol. 2741. Springer, Heidelberg, 136--150.Google Scholar
- Jacobs, B. 1999. Categorical Logic and Type Theory. Studies in Logic and the Foundations of Mathematics, vol. 141. Elsevier, Amsterdam.Google Scholar
- Jensen, K. and Wirth, N. 1981. PASCAL—User Manual and Report. ISO Pascal Standard. Italian Ed. Gruppo Editoriale Jackson, Milano.Google Scholar
- Kamareddine, F. 2005. Typed λ-calculi with one binder. J. Funct. Program. 15, 5, 771--796. Google ScholarDigital Library
- Kamareddine, F. and Bloo, R. 2005a. De Bruijn's syntax and reductional behaviour of lambda terms: The typed case. J. Logic Algebraic Program. 62, 2, 159--189.Google ScholarCross Ref
- Kamareddine, F. and Bloo, R. 2005b. De Bruijn's syntax and reductional behaviour of lambda terms: The untyped case. J. Logic Algebraic Program. 62, 1, 109--131.Google ScholarCross Ref
- Kamareddine, F., Bloo, R., and Nederpelt, R. 1999. On π-conversion in the λ-cube and the combination with abbreviations. Ann. Pure. Appi. Logic, 97, 1-3, 27--45.Google Scholar
- Kamareddine, F., Laan, T., and Nederpelt, R. 2004. A Modern Perspective on Type Theory From its Origins Until Today. Applied Logic Series, vol. 29. Kluwer Academic Publishers, Norwell, MA.Google Scholar
- Kamareddine, F. and Nederpelt, R. 1996a. Canonical typing and π-conversion in the Barendregt cube. J. Funct. Program. 6, 2, 245--267.Google ScholarCross Ref
- Kamareddine, F. and Nederpelt, R. 1996b. A useful λ-notation. Theoretical Comput. Sci. 155, 1, 85--109. Google ScholarDigital Library
- Kleene, S. 1945. On the interpretation of intuitionistic number theory. J. Symbol. Logic 10, 109--124.Google ScholarCross Ref
- Letouzey, P. and Schwichtenberg, H. 2004. A normalization proof a la Tait for simply-typed lambda-calculus. Formal specification with the proof assistant coq. http://coq.inria.fr/contribs/tait.html.Google Scholar
- Loader, R. 1998. Notes on simply typed lambda calculus. Course Notes Version 1.8.Google Scholar
- Luo, Z. 2003. Pal+: A lambda-free logical framework. J. Funct. Program. 13, 2, 317--338. Google ScholarDigital Library
- Maietti, M. and Sambin, G. 2005. Towards a minimalist foundation for constructive mathematics. In From Sets and Types to Topology and Analysis: Practicable Foundations for Constructive Mathematics, L. Crosilla and P. Schuster, Eds. Oxford Logic Guides, vol. 48. Oxford University Press, Oxford, UK, 91--114.Google Scholar
- Martin-Löf, P. 1984. Intuitionistic Type Theory (notes by G. Sambin). Studies in Proof Theory, vol. 1. Bibliopolis, Napoli.Google Scholar
- Nederpelt, R. 1994. Strong normalization in a typed lambda calculus with lambda structured types. In Selected Papers on Automath. North-Holland, Amsterdam, 389--468.Google Scholar
- Nederpelt, R., Geuvers, J., and de Vrijer, R., Eds. 1994. Selected Papers on Automath. Studies in Logic and the Foundations of Mathematics, vol. 133. North-Holland, Amsterdam.Google Scholar
- Network Working Group. 1998. Uniform resource identifiers (URI): Generic syntax. RCF 2396. http://www.ietf.org/rfc/rfc2396.txt.Google Scholar
- Nordström, B., Petersson, K., and Smit, J. 1990. Programming in Martin-Löf's Type Theory—An Introduction. Clarendon Press, Oxford, UK.Google Scholar
- Raffalli, C. 2007a. PML: A new proof assistant. In Proceedings of the Types Conference.Google Scholar
- Raffalli, C. 2007b. PML: A new proof assistant and deduction system. In Proceedings of the Workshop on Programming Languages for Mechanized Mathematics (PLMMS'07).Google Scholar
- Raffalli, C. 2008. PML and strong normalisation. In Proceedings of the Types Conference.Google Scholar
- Sørensen, M. and Urzyczyn, P. 2006. Lectures on the Curry-Howard Isomorphism. Studies in Logic and the Foundations of Mathematics, vol. 149. Elsevier, Amsterdam. Google ScholarDigital Library
- Solmi, R. 2005. Whole platform. Ph.D. thesis UBLCS 2005-07, University of Bologna. http://whole.sourceforge.net/.Google Scholar
- van Benthem Jutting, L. 1994a. Checking Landau's Grundlagen in the Automath system. In Selected Papers on Automath. North-Holland, Amsterdam, 299--301,701--720,721--732,763--799, 805--808.Google Scholar
- van Benthem Jutting, L. 1994b. Description of AUT-68. In Selected Papers on Automath. North-Holland, Amsterdam, 251--273.Google Scholar
- van Benthem Jutting, L. 1994c. The language theory of λ∞, a typed λ-calculus where terms are types. In Selected Papers on Automath. North-Holland, Amsterdam, 655--683.Google Scholar
- van Daalen, D. 1980. The language theory of Automath. Ph.D. thesis, Eindhoven University of Technology.Google Scholar
- van Oostrom, V. 2002. Simply typed lambda calculus is strongly normalising. Typescript note. http://www.phil.uu.nl/~oostrom/.Google Scholar
- Wiedijk, F. 1999. A lambda-typed typed lambda calculus with infinitely many lambdas. Typescript note. http://www.cs.ru.nl/~freek/.Google Scholar
Index Terms
- The formal system λδ
Recommendations
A Formal System for the Universal Quantification of Schematic Variables
We advocate the use of de Bruijn’s universal abstraction \lambda {\mathord \infty }{}{}{} for the quantification of schematic variables in the predicative setting, and we present a typed \lambda {}{}{}{} -calculus featuring the quantifier \lambda {\...
Formal polytypic programs and proofs
The aim of our work is to be able to do fully formal, machine verified proofs over Generic Haskell-style polytypic programs. In order to achieve this goal, we embed polytypic programming in the proof assistant Coq and provide an infrastructure for ...
Formal parametric polymorphism
POPL '93: Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languagesA polymorphic function is parametric if its behavior does not depend on the type at which it is instantiated. Starting with Reynolds' work, the study of parametricity is typically semantic. In this paper, we develop a syntactic approach to parametricity,...
Comments