Skip to main content

Inductive definitions in the system Coq rules and properties

  • Conference paper
  • First Online:
Typed Lambda Calculi and Applications (TLCA 1993)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 664))

Included in the following conference series:

Abstract

In the pure Calculus of Constructions, it is possible to represent data structures and predicates using higher-order quantification. However, this representation is not satisfactory, from the point of view of both the efficiency of the underlying programs and the power of the logical system. For these reasons, the calculus was extended with a primitive notion of inductive definitions [8]. This paper describes the rules for inductive definitions in the system Coq. They are general enough to be seen as one formulation of adding inductive definitions to a typed lambda-calculus. We prove strong normalization for a subsystem of Coq corresponding to the pure Calculus of Constructions plus Inductive Definitions with only weak eliminations.

This research was partly supported by ESPRIT Basic Research Action “Types for Proofs and Programs” and by Programme de Recherche Coordonnées “Programmation avancée et Outils pour l'Intelligence Artificielle”.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ph. Audebaud. Partial objects in the calculus of constructions. In Proceedings of the sixth Conf. on Logic in Computer Science. IEEE, 1991.

    Google Scholar 

  2. Ph. Audebaud. Extension du Calcul des Constructions par Points fixes. PhD thesis, Université Bordeaux I, 1992.

    Google Scholar 

  3. H. Barendregt. Lambda calculi with types. Technical Report 91–19, Catholic University Nijmegen, 1991. in Handbook of Logic in Computer Science, Vol II.

    Google Scholar 

  4. C. Böhm and A. Berarducci. Automatic synthesis of typed λ-programs on term algebras. Theoretical Computer Science, 39, 1985.

    Google Scholar 

  5. R.L. Constable et al. Implementing Mathematics with the Nuprl Proof Development System. Prentice-Hall, 1986.

    Google Scholar 

  6. Th. Coquand. Metamathematical investigations of a Calculus of Constructions. In P. Oddifredi, editor, Logic and Computer Science. Academic Press, 1990. Rapport de recherche INRIA 1088, also in [11].

    Google Scholar 

  7. Th. Coquand. Pattern matching with dependent types. In Nordström et al. [17].

    Google Scholar 

  8. Th. Coquand and C. Paulin-Mohring. Inductively defined types. In P. Martin-Löf and G. Mints, editors, Proceedings of Colog'88. Springer-Verlag, 1990. LNCS 417.

    Google Scholar 

  9. P. Dybjer. Comparing integrated and external logics of functional programs. Science of Computer Programming, 14:59–79, 1990.

    Google Scholar 

  10. G. Dowek et al. The Coq Proof Assistant User's Guide Version 5.6. Rapport Technique 134, INRIA, December 1991.

    Google Scholar 

  11. G. Huet ed. The Calculus of Constructions, Documentation and user's guide, Version V4.10, 1989. Rapport technique INRIA 110.

    Google Scholar 

  12. H. Geuvers. Type systems for Higher Order Logic. Faculty of Mathematics and Informatics, Catholic University Nijmegen, 1990.

    Google Scholar 

  13. H. Geuvers and M.-J. Nederhof. A modular proof of strong normalization for the Calculus of Constructions. Faculty of Mathematics and Informatics, Catholic University Nijmegen, 1989.

    Google Scholar 

  14. Z. Luo and R. Pollack. Lego proof development syste: User's manual. Technical Report ECS-LFCS-92-211, University of Edinburgh., 1992.

    Google Scholar 

  15. L. Magnusson. The new implementation of ALF. In Nordström et al. [17].

    Google Scholar 

  16. N. Mendler. Recursive types and type constraints in second order lambda-calculus. In Symposium on Logic in Computer Science, Ithaca, NY, 1987. IEEE.

    Google Scholar 

  17. B. Nordström, K. Petersson, and G. Plotkin, editors. Proceedings of the 1992 Workshop on Types for Proofs and Programs, 1992.

    Google Scholar 

  18. P. Martin-Löf. Intuitionistic Type Theory. Studies in Proof Theory. Bibliopolis, 1984.

    Google Scholar 

  19. M. Parigot. On the representation of data in lambda-calculus. In CSL'89, volume 440 of LNCS, Kaiserslautern, 1989. Springer-Verlag.

    Google Scholar 

  20. C. Paulin-Mohring. Extracting F ω's programs from proofs in the Calculus of Constructions. In Association for Computing Machinery, editor, Sixteenth Annual ACM Symposium on Principles of Programming Languages, Austin, January 1989.

    Google Scholar 

  21. C. Paulin-Mohring. Extraction de programmes dans le Calcul des Constructions. PhD thesis, Université Paris 7, January 1989.

    Google Scholar 

  22. F. Pfenning and C. Paulin-Mohring. Inductively defined types in the Calculus of Constructions. In Proceedings of Mathematical Foundations of Programming Semantics, LNCS 442. Springer-Verlag, 1990. also technical report CMU-CS-89-209.

    Google Scholar 

  23. B. Werner. A normalization proof for an impredicative type system with large elimination over integers. In Nordström et al. [17].

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Marc Bezem Jan Friso Groote

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Paulin-Mohring, C. (1993). Inductive definitions in the system Coq rules and properties. In: Bezem, M., Groote, J.F. (eds) Typed Lambda Calculi and Applications. TLCA 1993. Lecture Notes in Computer Science, vol 664. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0037116

Download citation

  • DOI: https://doi.org/10.1007/BFb0037116

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-56517-8

  • Online ISBN: 978-3-540-47586-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics