Skip to main content
Log in

Inductive families

  • Published:
Formal Aspects of Computing

Abstract

A general formulation of inductive and recursive definitions in Martin-Löf's type theory is presented. It extends Backhouse's ‘Do-It-Yourself Type Theory’ to include inductive definitions of families of sets and definitions of functions by recursion on the way elements of such sets are generated. The formulation is in natural deduction and is intended to be a natural generalisation to type theory of Martin-Löf's theory of iterated inductive definitions in predicate logic.

Formal criteria are given for correct formation and introduction rules of a new set former capturing definition by strictly positive, iterated, generalised induction. Moreover, there is an inversion principle for deriving elimination and equality rules from the formation and introduction rules. Finally, there is an alternative schematic presentation of definition by recursion.

The resulting theory is a flexible and powerful language for programming and constructive mathematics. We hint at the wealth of possible applications by showing several basic examples: predicate logic, generalised induction, and a formalisation of the untyped lambda calculus.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Abadi, M., Cardelli, L., Curien, P-L. and Lévy, J-J.: Explicit substitutions. InACM Conference on Principles of Programming Languages, San Francisco, 1990.

  2. Backhouse, R.: On the meaning and construction of the rules in Martin-Löf's theory of types. InProceedings of the Workshop on General Logic, Edinburgh, February 1987. Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh, 1988. ECS-LFCS-88-52.

  3. Backhouse, R., Chisholm, P., Malcolm, G. and Saaman, E.: Do-it-yourself type theory.Formal Aspects of Computing, 1(1):19–84, 1989.

    Google Scholar 

  4. Boyer, R. and Moore, J.:A Computational Logic. Academic Press, 1979.

  5. Coquand, T. and Huet, G.: The calculus of constructions.Information and Computation, 76:95–120, 1988.

    Google Scholar 

  6. Coquand, T.: Pattern matching with dependent types. InProceedings of The 1992 Workshop on Types for Proofs and Programs, June 1992.

  7. Coquand, T. and Paulin, C.: Inductively defined types, preliminary version. InLNCS 417, COLOG '88, International Conference on Computer Logic. Springer-Verlag, 1990.

  8. Curien, P-L.: An abstract framework for environment machines.Theoretical Computer Science, 1992.

  9. de Bruijn, N. G.: Telescopic mappings in typed lambda calculus.Information and Computation, (91):189–204, 1991.

    Google Scholar 

  10. Dowek, G., Felty, A., Herbelin, H., Huet, G., Paulin, C. and Werner, B.: The Coq proof assistant version 5.6, user's guide. Technical report, INRIA Rocquencourt — CNRS ENS Lyon, 1991.

  11. Dybjer, P.: Inductively defined sets in Martin-Löf's type theory. InProceedings of the Workshop on General Logic, Edinburgh, February 1981. Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh, 1988. ECS-LFCS-88-52.

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

    Google Scholar 

  13. Dybjer, P.: Inductive sets and families in Martin-Löf's type theory and their set-theoretic semantics. InLogical Frameworks, pages 280–306. Cambridge University Press, 1991.

  14. Dybjer, P.: Universes and a general notion of simultaneous inductive-recursive definition in type theory. InProceedings of the 1992 Workshop on Types for Proofs and Programs, 1992.

  15. Goguen, J. A., Thatcher, J. W., Wagner, E. G. and Wright, J. B.:An Initial Algebra Approach to the Specification, Correctness, and Implementation of Abstract Data Types. Prentice Hall, 1978.

  16. Hedberg, M.: Normalising the associative law: An experiment with Martin-Löf's type theory.Formal Aspects of Computing, 3(3):218–252, 1991.

    Google Scholar 

  17. Harper, R., Honsell, F. and Plotkin, G.: A framework for defining logics. InThe Second Annual Symposium on Logic in Computer Science, pages 193–204, 1987.

  18. Hagiya, M. and Sakurai, T.: Foundation of logic programming based on inductive definition.New Generation Computing, 2:59–77, 1984.

    Google Scholar 

  19. Huet, G.: Residual theory inλ-calculus: a complete Gallina development. 1993.

  20. Luo, Z., Pollack, R. and Taylor, P.: How to use LEGO (a preliminary user's manual). Technical report, University of Edinburgh, 1989.

  21. Mendler, P. F.:Inductive Definition in Type Theory. PhD thesis, Cornell University, September 1987.

  22. Martin-Löf, P.: Hauptsatz for the intuitionistic theory of iterated inductive definitions. In J. E. Fenstad, editor,Proceedings of the Second Scandinavian Logic Symposium, pages 179–216. North-Holland, 1971.

  23. Martin-Löf, P.: An intuitionistic theory of types. Unpublished report, 1972.

  24. Martin-Löf, P.: An intuitionistic theory of types: Predicative part. InLogic Colloquium '73, pages 73–118. North-Holland, 1975.

  25. Martin-Löf, P.: Constructive mathematics and computer programming. InLogic, Methodology and Philosophy of Science, VI, 1979, pages 153–175. North-Holland, 1982.

  26. Martin-Löf, P.:Intuitionistic Type Theory. Bibliopolis, 1984.

  27. Martin-Löf, P.: Amendment to intuitionistic type theory. Notes from a lecture given in Göteborg, March 1986.

  28. Nordström, B.: Terminating general recursion.BIT, 28:605–619, 1988.

    Google Scholar 

  29. Nordström, B., Petersson, K. and Smith, J.:Programming in Martin-Löf's Type Theory: an Introduction. Oxford University Press, 1990.

  30. Paulson, L. C.: The foundation of a generic theorem prover.Journal of Automated Reasoning, 5:363–397, 1989.

    Google Scholar 

  31. Paulin-Mohring, C.: Inductive definitions in the system Coq — rules and properties. InProceedings Typed λ-Calculus and Applications, pages 328–245. Springer-Verlag, LNCS, March 1993.

  32. Petersson, K. and Synek, D.: A set constructor for inductive sets in Martin-Löf's type theory. InCategory Theory and Computer Science, pages 128–140. Springer-Verlag, LNCS 389, 1989.

  33. Schroeder-Heister, P.: A natural extension of natural deduction.Journal of Symbolic Logic, 49(4), December 1984.

  34. Schroeder-Heister, P.: Judgements of higher levels and standardised rules for logical constants in Martin-Löf's theory of logic. Unpublished paper, June 1985.

  35. Smith, J.: Prepositional functions and families of types.Notre Dame Journal of Formal Logic, 30(3):442–458, 1989.

    Google Scholar 

  36. Szasz, N.: A Machine Checked Proof that Ackermann's Function is not Primitive Recursive. In G. Huet and G. Plotkin, editors,Proceedings of the Second Workshop on Logical Frameworks. Cambridge University Press, 1992.

Download references

Author information

Authors and Affiliations

Authors

Additional information

A shorter preliminary version of this paper appeared under the title ‘An inversion principle for Martin-Löf's type theory’ in the Proceedings of the Workshop on Programming Logic in Båstad, May 1989, Programming Methodology Group Report 54, Chalmers University of Technology and the University of Göteborg, pages 177–190.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Dybjer, P. Inductive families. Formal Aspects of Computing 6, 440–465 (1994). https://doi.org/10.1007/BF01211308

Download citation

  • Received:

  • Accepted:

  • Issue Date:

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

Keywords

Navigation