Module Cooking
Data needed to abstract over the section variables and section universes
type abstr_inst_infotype 'a entry_map= 'a Names.Cmap.t * 'a Names.Mindmap.ttype expand_info= abstr_inst_info entry_map
val empty_cooking_info : cooking_infoNothing to abstract
val make_cooking_info : recursive:Names.MutInd.t option -> expand_info -> Constr.named_context -> Univ.UContext.t -> cooking_info * abstr_inst_infoAbstract a context assumed to be de-Bruijn free for terms and universes
val names_info : cooking_info -> Names.Id.Set.tval universe_context_of_cooking_info : cooking_info -> Univ.AbstractContext.tval instance_of_cooking_info : cooking_info -> Constr.t array
val create_cache : cooking_info -> cooking_cacheval instance_of_cooking_cache : cooking_cache -> Constr.t arrayval rel_context_of_cooking_cache : cooking_cache -> Constr.rel_contextval abstract_as_type : cooking_cache -> Constr.types -> Constr.typesval abstract_as_body : cooking_cache -> Constr.constr -> Constr.constrval abstract_as_sort : cooking_cache -> Sorts.t -> Sorts.tval lift_mono_univs : cooking_info -> Univ.ContextSet.t -> cooking_info * Univ.ContextSet.tval lift_poly_univs : cooking_info -> Univ.AbstractContext.t -> cooking_info * int * Univ.AbstractContext.tThe
intis how many universes got discharged, ie size of returned context - size of input context.
val lift_private_mono_univs : cooking_info -> 'a -> 'aval lift_private_poly_univs : cooking_info -> Univ.ContextSet.t -> Univ.ContextSet.tval discharge_proj_repr : cooking_info -> Names.Projection.Repr.t -> Names.Projection.Repr.t