## 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.

## Keywords

Intuitionistic type theory Inductive definitions Natural deduction## Preview

Unable to display preview. Download preview PDF.

## References

- [ACC90]Abadi, M., Cardelli, L., Curien, P-L. and Lévy, J-J.: Explicit substitutions. In
*ACM Conference on Principles of Programming Languages, San Francisco*, 1990.Google Scholar - [Bac88]Backhouse, R.: On the meaning and construction of the rules in Martin-Löf's theory of types. In
*Proceedings 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.Google Scholar - [BCM89]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 - [BoM79]Boyer, R. and Moore, J.:
*A Computational Logic*. Academic Press, 1979.Google Scholar - [CoH88]Coquand, T. and Huet, G.: The calculus of constructions.
*Information and Computation*, 76:95–120, 1988.Google Scholar - [Coq92]Coquand, T.: Pattern matching with dependent types. In
*Proceedings of The 1992*Workshop on Types for Proofs and Programs, June 1992.Google Scholar - [CoP90]Coquand, T. and Paulin, C.: Inductively defined types, preliminary version. In
*LNCS 417, COLOG '88, International Conference on Computer Logic*. Springer-Verlag, 1990.Google Scholar - [Cur92]Curien, P-L.: An abstract framework for environment machines.
*Theoretical Computer Science*, 1992.Google Scholar - [dBr91]de Bruijn, N. G.: Telescopic mappings in typed lambda calculus.
*Information and Computation*, (91):189–204, 1991.Google Scholar - [DFH91]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.Google Scholar
- [Dyb88]Dybjer, P.: Inductively defined sets in Martin-Löf's type theory. In
*Proceedings 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.Google Scholar - [Dyb90]Dybjer, P.: Comparing integrated and external logics of functional programs.
*Science of Computer Programming*, 14:59–79, 1990.Google Scholar - [Dyb91]Dybjer, P.: Inductive sets and families in Martin-Löf's type theory and their set-theoretic semantics. In
*Logical Frameworks*, pages 280–306. Cambridge University Press, 1991.Google Scholar - [Dyb92]Dybjer, P.: Universes and a general notion of simultaneous inductive-recursive definition in type theory. In
*Proceedings of the 1992 Workshop on Types for Proofs and Programs, 1992*.Google Scholar - [GTW78]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.Google Scholar - [Hed91]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 - [HHP87]Harper, R., Honsell, F. and Plotkin, G.: A framework for defining logics. In
*The Second Annual Symposium on Logic in Computer Science*, pages 193–204, 1987.Google Scholar - [HaS84]Hagiya, M. and Sakurai, T.: Foundation of logic programming based on inductive definition.
*New Generation Computing*, 2:59–77, 1984.Google Scholar - [Hue93]Huet, G.: Residual theory in
*λ*-calculus: a complete Gallina development. 1993.Google Scholar - [LPT89]Luo, Z., Pollack, R. and Taylor, P.: How to use LEGO (a preliminary user's manual). Technical report, University of Edinburgh, 1989.Google Scholar
- [Men87]Mendler, P. F.:
*Inductive Definition in Type Theory*. PhD thesis, Cornell University, September 1987.Google Scholar - [MaL71]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.Google Scholar - [MaL72]Martin-Löf, P.: An intuitionistic theory of types. Unpublished report, 1972.Google Scholar
- [MaL75]Martin-Löf, P.: An intuitionistic theory of types: Predicative part. In
*Logic Colloquium*'73, pages 73–118. North-Holland, 1975.Google Scholar - [MaL82]Martin-Löf, P.: Constructive mathematics and computer programming. In
*Logic, Methodology and Philosophy of Science, VI, 1979*, pages 153–175. North-Holland, 1982.Google Scholar - [MaL84]Martin-Löf, P.:
*Intuitionistic Type Theory*. Bibliopolis, 1984.Google Scholar - [MaL86]Martin-Löf, P.: Amendment to intuitionistic type theory. Notes from a lecture given in Göteborg, March 1986.Google Scholar
- [Nor88]Nordström, B.: Terminating general recursion.
*BIT*, 28:605–619, 1988.Google Scholar - [NPS90]Nordström, B., Petersson, K. and Smith, J.:
*Programming in Martin-Löf's Type Theory: an Introduction*. Oxford University Press, 1990.Google Scholar - [Pau89]Paulson, L. C.: The foundation of a generic theorem prover.
*Journal of Automated Reasoning*, 5:363–397, 1989.Google Scholar - [PaM93]Paulin-Mohring, C.: Inductive definitions in the system Coq — rules and properties. In
*Proceedings Typed λ-Calculus and Applications*, pages 328–245. Springer-Verlag, LNCS, March 1993.Google Scholar - [PeS89]Petersson, K. and Synek, D.: A set constructor for inductive sets in Martin-Löf's type theory. In
*Category Theory and Computer Science*, pages 128–140. Springer-Verlag, LNCS 389, 1989.Google Scholar - [ScH84]Schroeder-Heister, P.: A natural extension of natural deduction.
*Journal of Symbolic Logic*, 49(4), December 1984.Google Scholar - [ScH85]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.Google Scholar
- [Smi89]Smith, J.: Prepositional functions and families of types.
*Notre Dame Journal of Formal Logic*, 30(3):442–458, 1989.Google Scholar - [Sza92]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.Google Scholar