ReductionNone of these functions do eta reduction
val whd_all : Environ.env -> Constr.constr -> Constr.constrval beta_applist : Constr.constr -> Constr.constr list -> Constr.constrBuilds an application node, reducing beta redexes it may produce.
val beta_appvect : Constr.constr -> Constr.constr array -> Constr.constrBuilds an application node, reducing beta redexes it may produce.
val beta_app : Constr.constr -> Constr.constr -> Constr.constrBuilds an application node, reducing beta redexe it may produce.
val hnf_prod_applist : 
  Environ.env ->
  Constr.types ->
  Constr.constr list ->
  Constr.typesPseudo-reduction rule Prod(x,A,B) a --> Bx\a
val hnf_prod_applist_decls : 
  Environ.env ->
  int ->
  Constr.types ->
  Constr.constr list ->
  Constr.typesIn hnf_prod_applist_decls n c args, c is supposed to (whd-)reduce to the form ∀Γ.t with Γ of length n and possibly with let-ins; it returns t with the assumptions of Γ instantiated by args and the local definitions of Γ expanded.
val betazeta_appvect : 
  int ->
  Constr.constr ->
  Constr.constr array ->
  Constr.constrCompatibility alias for Term.lambda_appvect_decls
val hnf_decompose_prod : 
  Environ.env ->
  Constr.types ->
  Constr.rel_context * Constr.typesval hnf_decompose_prod_decls : 
  Environ.env ->
  Constr.types ->
  Constr.rel_context * Constr.typesval hnf_decompose_lambda : 
  Environ.env ->
  Constr.constr ->
  Constr.rel_context * Constr.constrval hnf_decompose_lambda_decls : 
  Environ.env ->
  Constr.constr ->
  Constr.rel_context * Constr.constrval hnf_decompose_lambda_n_decls : 
  Environ.env ->
  int ->
  Constr.constr ->
  Constr.rel_context * Constr.constrval dest_arity : Environ.env -> Constr.types -> Term.arityval is_arity : Environ.env -> Constr.types -> boolval eta_expand : Environ.env -> Constr.constr -> Constr.types -> Constr.constrDeprecated
val dest_prod : 
  Environ.env ->
  Constr.types ->
  Constr.rel_context * Constr.typesval dest_prod_assum : 
  Environ.env ->
  Constr.types ->
  Constr.rel_context * Constr.typesval dest_lam : 
  Environ.env ->
  Constr.constr ->
  Constr.rel_context * Constr.constrval dest_lam_assum : 
  Environ.env ->
  Constr.constr ->
  Constr.rel_context * Constr.constr