In
intuitionistic type theory (ITT), some discipline within
mathematical logic
Mathematical logic is the study of formal logic within mathematics. Major subareas include model theory, proof theory, set theory, and recursion theory. Research in mathematical logic commonly addresses the mathematical properties of formal ...
, induction-induction is for simultaneously declaring some inductive type and some inductive predicate over this type.
An
inductive definition
In mathematics and computer science, a recursive definition, or inductive definition, is used to define the elements in a set in terms of other elements in the set ( Aczel 1977:740ff). Some examples of recursively-definable objects include fact ...
is given by rules for generating elements of some type. One can then define some predicate on that type by providing constructors for forming the elements of the predicate , such inductively on the way the elements of the type are generated. Induction-induction generalizes this situation since one can ''simultaneously'' define the type and the predicate, because the rules for generating elements of the type
are allowed to refer to the predicate
.
Induction-induction can be used to define larger types including various universe constructions in type theory.
and limit constructions in category/topos theory.
Example 1
Present the type
as having the following constructors , note the early reference to the predicate
:
*
*
and-simultaneously present the predicate
as having the following constructors :
*
*
* if
and
then
* if
and
and
then
.
Example 2
A simple common example is the Universe à la Tarski type former. It creates some inductive type
and some inductive predicate
. For every type in the type theory (except
itself!), there will be some element of
which may be seen as some code for this corresponding type ; The predicate
inductively encodes each possible type to the corresponding element of
; and constructing new codes in
will require referring to the decoding-as-type of earlier codes , via the predicate
.
See also
*
Induction-recursion – for simultaneously declaring some inductive type and some recursive function on this type .
References
{{reflist
External links
A list of Peter Dybjer's publications on induction and induction-recursion
Type theory