Module Univ.Universe
type t
Type of universes. A universe is defined as a set of level expressions. A level expression is built from levels and successors of level expressions, i.e.: le ::= l + n, n \in N.
A universe is said atomic if it consists of a single level expression with no increment, and algebraic otherwise (think the least upper bound of a set of level expressions).
val hash : t -> int
Hash function
val pr_with : (Level.t -> Pp.t) -> t -> Pp.t
val is_level : t -> bool
Test if the universe is a level or an algebraic universe.
val is_levels : t -> bool
Test if the universe is a lub of levels or contains +n's.
val level : t -> Level.t option
Try to get a level out of a universe, returns
None
if it is an algebraic universe.
val levels : t -> Level.Set.t
Get the levels inside the universe, forgetting about increments
val type0 : t
image of Set in the universes hierarchy
val type1 : t
the universe of the type of Prop/Set