UnivGenmodule QualityOrSet : sig ... endexception UniverseLengthMismatch of univ_length_mismatchSide-effecting functions creating new universe levels.
val new_univ_global : unit -> Univ.UGlobal.tval fresh_level : unit -> Univ.Level.tval fresh_sort_quality : unit -> Sorts.QVar.tBuild a fresh instance for a given context, its associated substitution and the instantiated constraints.
type sort_context_set = (Sorts.QVar.Set.t * Univ.Level.Set.t) * PConstraints.ttype 'a in_sort_context_set = 'a * sort_context_setval sort_context_union :
sort_context_set ->
sort_context_set ->
sort_context_setval empty_sort_context : sort_context_setval is_empty_sort_context : sort_context_set -> boolval diff_sort_context :
sort_context_set ->
sort_context_set ->
sort_context_setval pr_sort_context : Sorts.printer -> sort_context_set -> Pp.tval fresh_instance :
UVars.AbstractContext.t ->
UVars.Instance.t in_sort_context_setval fresh_instance_from :
?loc:Loc.t ->
UVars.AbstractContext.t ->
(Names.GlobRef.t * UVars.Instance.t) option ->
UVars.Instance.t in_sort_context_setThe globref is only used for the error message when there is a mismatch.
val fresh_sort_in_quality : QualityOrSet.t -> Sorts.t in_sort_context_setNB: QSort is treated as QType
val fresh_constant_instance :
Environ.env ->
Names.Constant.t ->
Constr.pconstant in_sort_context_setval fresh_inductive_instance :
Environ.env ->
Names.inductive ->
Constr.pinductive in_sort_context_setval fresh_constructor_instance :
Environ.env ->
Names.constructor ->
Constr.pconstructor in_sort_context_setval fresh_array_instance : Environ.env -> UVars.Instance.t in_sort_context_setval fresh_global_instance :
?loc:Loc.t ->
?names:UVars.Instance.t ->
Environ.env ->
Names.GlobRef.t ->
Constr.constr in_sort_context_setval fresh_sort_context_instance :
sort_context_set ->
UVars.sort_level_subst * sort_context_setval constr_of_monomorphic_global :
Environ.env ->
Names.GlobRef.t ->
Constr.constrCreate a fresh global in the environment argument, without side effects. BEWARE: this raises an error on polymorphic constants/inductives: the constraints should be properly added to an evd. See Evd.fresh_global, Evarutil.new_global, and pf_constr_of_global for the proper way to get a fresh copy of a polymorphic global reference.