Module UnivSubst

val level_subst_of : Univ.universe_subst_fn -> Univ.universe_level_subst_fn
val subst_univs_constraints : Univ.universe_subst_fn -> Univ.Constraint.t -> Univ.Constraint.t
val subst_univs_constr : Univ.universe_subst -> Constr.constr -> Constr.constr
type universe_opt_subst = Univ.Universe.t option Univ.universe_map
val make_opt_subst : universe_opt_subst -> Univ.universe_subst_fn
val subst_opt_univs_constr : universe_opt_subst -> Constr.constr -> Constr.constr
val normalize_univ_variables : universe_opt_subst -> universe_opt_subst * Univ.LSet.t * Univ.universe_subst
val normalize_univ_variable : find:(Univ.Level.t -> Univ.Universe.t) -> Univ.Level.t -> Univ.Universe.t
val normalize_univ_variable_opt_subst : universe_opt_subst -> Univ.Level.t -> Univ.Universe.t
val normalize_univ_variable_subst : Univ.universe_subst -> Univ.Level.t -> Univ.Universe.t
val normalize_universe_opt_subst : universe_opt_subst -> Univ.Universe.t -> Univ.Universe.t
val normalize_universe_subst : Univ.universe_subst -> Univ.Universe.t -> Univ.Universe.t
val normalize_opt_subst : universe_opt_subst -> universe_opt_subst
val nf_evars_and_universes_opt_subst : (Constr.existential -> Constr.constr option) -> universe_opt_subst -> Constr.constr -> Constr.constr
val pr_universe_opt_subst : universe_opt_subst -> Pp.t