Glob_opsval map_glob_sort_gen : 
  ( 'a -> 'b ) ->
  'a Glob_term.glob_sort_gen ->
  'b Glob_term.glob_sort_genEqualities
val glob_sort_gen_eq : 
  ( 'a -> 'a -> bool ) ->
  'a Glob_term.glob_sort_gen ->
  'a Glob_term.glob_sort_gen ->
  boolval glob_sort_eq : Glob_term.glob_sort -> Glob_term.glob_sort -> boolval glob_level_eq : Glob_term.glob_level -> Glob_term.glob_level -> boolval cases_pattern_eq : 
  'a Glob_term.cases_pattern_g ->
  'a Glob_term.cases_pattern_g ->
  boolExpect a Prop/SProp/Set/Type universe; raise ComplexSort if contains a max, an increment, or a flexible universe
val glob_sort_family : Glob_term.glob_sort -> Sorts.familyval alias_of_pat : 'a Glob_term.cases_pattern_g -> Names.Name.tval set_pat_alias : 
  Names.Id.t ->
  'a Glob_term.cases_pattern_g ->
  'a Glob_term.cases_pattern_gval cast_kind_eq : Constr.cast_kind -> Constr.cast_kind -> boolval glob_constr_eq : 
  'a Glob_term.glob_constr_g ->
  'a Glob_term.glob_constr_g ->
  boolOperations on glob_constr
val cases_pattern_loc : 'a Glob_term.cases_pattern_g -> Loc.t optionval cases_predicate_names : 'a Glob_term.tomatch_tuples_g -> Names.Name.t listval mkGApp : 
  ?loc:Loc.t ->
  'a Glob_term.glob_constr_g ->
  'a Glob_term.glob_constr_g list ->
  'a Glob_term.glob_constr_gApply a list of arguments to a glob_constr
val map_glob_constr : 
  ( Glob_term.glob_constr -> Glob_term.glob_constr ) ->
  Glob_term.glob_constr ->
  Glob_term.glob_constrval binding_kind_eq : Glob_term.binding_kind -> Glob_term.binding_kind -> boolEquality on binding_kind
val map_glob_constr_left_to_right : 
  ( Glob_term.glob_constr -> Glob_term.glob_constr ) ->
  Glob_term.glob_constr ->
  Glob_term.glob_constrEnsure traversal from left to right
val warn_variable_collision : ?loc:Loc.t -> Names.Id.t -> unitval mk_glob_constr_eq : 
  ( Glob_term.glob_constr -> Glob_term.glob_constr -> bool ) ->
  Glob_term.glob_constr ->
  Glob_term.glob_constr ->
  boolval fold_glob_constr : 
  ( 'a -> Glob_term.glob_constr -> 'a ) ->
  'a ->
  Glob_term.glob_constr ->
  'aval fold_glob_constr_with_binders : 
  ( Names.Id.t -> 'a -> 'a ) ->
  ( 'a -> 'b -> Glob_term.glob_constr -> 'b ) ->
  'a ->
  'b ->
  Glob_term.glob_constr ->
  'bval iter_glob_constr : 
  ( Glob_term.glob_constr -> unit ) ->
  Glob_term.glob_constr ->
  unitval occur_glob_constr : Names.Id.t -> 'a Glob_term.glob_constr_g -> boolval free_glob_vars : 'a Glob_term.glob_constr_g -> Names.Id.Set.tval bound_glob_vars : Glob_term.glob_constr -> Names.Id.Set.tval loc_of_glob_constr : 'a Glob_term.glob_constr_g -> Loc.t optionval glob_visible_short_qualid : 'a Glob_term.glob_constr_g -> Names.Id.Set.tval rename_var : (Names.Id.t * Names.Id.t) list -> Names.Id.t -> Names.Id.tval rename_glob_vars : 
  (Names.Id.t * Names.Id.t) list ->
  'a Glob_term.glob_constr_g ->
  'a Glob_term.glob_constr_gval map_pattern_binders : 
  ( Names.Name.t -> Names.Name.t ) ->
  Glob_term.tomatch_tuples ->
  Glob_term.cases_clauses ->
  Glob_term.tomatch_tuples * Glob_term.cases_clausesmap_pattern_binders f m c applies f to all the binding names in a pattern-matching expression (Glob_term.glob_constr_r.GCases) represented here by its relevant components m and c. It is used to interpret Ltac-bound names both in pretyping and printing of terms.
val map_pattern : 
  ( Glob_term.glob_constr -> Glob_term.glob_constr ) ->
  Glob_term.tomatch_tuples ->
  Glob_term.cases_clauses ->
  Glob_term.tomatch_tuples * Glob_term.cases_clausesmap_pattern f m c applies f to the return predicate and the right-hand side of a pattern-matching expression (Glob_term.glob_constr_r.GCases) represented here by its relevant components m and c.
val cases_pattern_of_glob_constr : 
  Environ.env ->
  Names.Name.t ->
  'a Glob_term.glob_constr_g ->
  'a Glob_term.cases_pattern_gConversion from glob_constr to cases pattern, if possible
Evaluation is forced. Take the current alias as parameter,
val glob_constr_of_closed_cases_pattern : 
  Environ.env ->
  'a Glob_term.cases_pattern_g ->
  Names.Name.t * 'a Glob_term.glob_constr_gval glob_constr_of_cases_pattern : 
  Environ.env ->
  'a Glob_term.cases_pattern_g ->
  'a Glob_term.glob_constr_gA canonical encoding of cases pattern into constr such that composed with cases_pattern_of_glob_constr Anonymous gives identity
val add_patterns_for_params_remove_local_defs : 
  Environ.env ->
  Names.constructor ->
  'a Glob_term.cases_pattern_g list ->
  'a Glob_term.cases_pattern_g listval empty_lvar : Ltac_pretype.ltac_var_map