Type checking, universe polymorphism, and typical ambiguity in the calculus of constructions draft
The Generalized Calculus of Constructions (CCω) of Coquand and Huet is a system for formalizing constructive mathematics. CCω includes a cumulative hierarchy of universes, with each universe closed under the type forming operations. Universe hierarchies are tedious to use in practice. Russell and Whitehead introduced a convention for dealing with stratification, called “typical ambiguity”, in which universe levels are not explicitly mentioned, but it is tactily asserted that some correctly stratified level assignment exists. Using an “operational semantics” for type synthesis, we study type checking and typical ambiguity for CCω. We show type synthesis is effective in CCω. Even if explicit universe levels are erased from a term it is possible to compute a “schematic type” for that term, and a set of constraints, that characterize all types of all well-typed instances of the term. We also consider the extension with δ-reductions, which introduces a form of “universe polymorphism” induced by the failure of type unicity in CCω.