next up previous
Next: Using type systems to Up: Type theory Previous: Dependent types

Universes

universe

We can consider U1 and the rules for it in the last section as partial axiomatization of the concept of Type. On this view, we think of U1 as open-ended, and we do not adapt an axiom capturing its closed inductive character, such as the recursion combinator for U1 discussed above.

On the other hand, we can also think of U1 as a large type belonging to Type. On this view the axioms for U1 reflect the rules of type construction on Type into the collection of types. The axioms postulate a certain enrichment of the concept Type in the same way that the axiom of inaccessible cardinals postulates an enrichment of Set. Similarly, from the foundations of category theory ([68]), Grothendieck's concept of a universe is a way of modeling large categories (and is equivalent to inaccessible cardinals).

If we take the view that U1 is a universe (rather than Type), then it makes sense to form larger universes, say U2, then U3, etc. To form U2 we extend U1 by adding the type U1 itself, like this: $\ \ \ \ U_1 =
U_1\ \mbox{in}\ U_2$.

Martin-Löf and Nuprl axiomatize a universe hierarchy indexed by natural numbers, Ui. The method of doing this is to add Ui = Ui to Ui+1and to postulate cumulativity, that any type A in Ui belongs to all Uj for i<j. So the universe rules universe rules are:

\begin{displaymath}U_i = U_i\ \mbox{in}\ U_{i+1}\ \ \ \ \ \ \ \ \ \ \frac{A = A\
\mbox{in}\ U_i}{A = A\ \mbox{in}\ U_j\ \ \ \mbox{for}\ i<j.} \end{displaymath}

It is possible to extend the universe hierarchy further, say indexed by ordinal numbers ord. It is possible to postulate closure of Type under various schemes for generating larger universes; [92] considers such matters.

Nuprl has been designed to facilitate index free, or ``polymorphic''polymorphic, treatment of Ui. Generally, the user simply writes a universe as Ui and the system keeps track of providing relative level numbers among them in terms of expressions called level expressions which allow forming i+1 and max(i, j). The theoretical basis for this is in [3] and was implemented by Howe and Jackson (see [66]).


next up previous
Next: Using type systems to Up: Type theory Previous: Dependent types
James Wallis
1999-09-17