UnivGenSourceSide-effecting functions creating new universe levels.
Build a fresh instance for a given context, its associated substitution and the instantiated constraints.
val fresh_instance_from :
?loc:Loc.t ->
UVars.AbstractContext.t ->
UVars.Instance.t option ->
UVars.Instance.t in_sort_context_setNB: InQSort is treated as InType
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_global_instance :
?loc:Loc.t ->
?names:UVars.Instance.t ->
Environ.env ->
Names.GlobRef.t ->
Constr.constr in_sort_context_setval fresh_universe_context_set_instance :
Univ.ContextSet.t ->
Univ.universe_level_subst * Univ.ContextSet.tGet fresh variables for the universe context. Useful to make tactics that manipulate constrs in universe contexts polymorphic.
val fresh_sort_context_instance :
sort_context_set ->
UVars.sort_level_subst * sort_context_setCreate 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.