(************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* universe val is_base : universe -> bool (* The type of a universe *) val super : universe -> universe (* The max of 2 universes *) val sup : universe -> universe -> universe (* The max of an array of universes *) val sup_array : universe array -> universe (*s Graphs of universes. *) type universes (* The empty graph of universes *) val initial_universes : universes (*s Constraints. *) module Constraint : Set.S type constraints = Constraint.t type constraint_function = universe -> universe -> constraints -> constraints val enforce_geq : constraint_function val enforce_eq : constraint_function (*s Merge of constraints in a universes graph. The function [merge_constraints] merges a set of constraints in a given universes graph. It raises the exception [UniverseInconsistency] if the constraints are not satisfiable. *) exception UniverseInconsistency val merge_constraints : constraints -> universes -> universes (*s Support for sort-polymorphic inductive types *) val fresh_local_univ : unit -> universe val solve_constraints_system : universe array -> universe array -> universe array val is_empty_universe : universe -> bool (*s Pretty-printing of universes. *) val pr_uni : universe -> Pp.std_ppcmds val pr_universes : universes -> Pp.std_ppcmds (*s Dumping to a file *) val dump_universes : out_channel -> universes -> unit val hcons1_univ : universe -> universe