Ssreflect_plugin.SsrcommonSourcetype tac_ctx = {tmp_ids : (Names.Id.t * Names.Name.t Stdlib.ref) list;wild_ids : Names.Id.t list;delayed_clears : Names.Id.t list;}val with_ctx :
(tac_ctx -> 'b * tac_ctx) ->
('a * tac_ctx) Ssrast.sigma ->
'b * ('a * tac_ctx) Ssrast.sigmaval tac_on_all :
(Ssrast.goal * tac_ctx) list Ssrast.sigma ->
tac_ctx tac_a ->
(Ssrast.goal * tac_ctx) list Ssrast.sigmaval mkRLambda :
Names.Name.t ->
Glob_term.glob_constr ->
Glob_term.glob_constr ->
Glob_term.glob_constrval mkCCast :
?loc:Loc.t ->
Constrexpr.constr_expr ->
Constrexpr.constr_expr ->
Constrexpr.constr_exprval mkCArrow :
?loc:Loc.t ->
Constrexpr.constr_expr ->
Constrexpr.constr_expr ->
Constrexpr.constr_exprval mkCLambda :
?loc:Loc.t ->
Names.Name.t ->
Constrexpr.constr_expr ->
Constrexpr.constr_expr ->
Constrexpr.constr_exprval intern_term :
Ltac_plugin.Tacinterp.interp_sign ->
Environ.env ->
Ssrast.ssrterm ->
Glob_term.glob_constrval pf_intern_term :
Ltac_plugin.Tacinterp.interp_sign ->
Goal.goal Evd.sigma ->
Ssrast.ssrterm ->
Glob_term.glob_constrval interp_term :
Environ.env ->
Evd.evar_map ->
Ltac_plugin.Tacinterp.interp_sign ->
Ssrast.ssrterm ->
Evd.evar_map * EConstr.tval interp_wit :
('a, 'b, 'c) Genarg.genarg_type ->
Ssrast.ist ->
Ssrast.goal Ssrast.sigma ->
'b ->
Evd.evar_map * 'cval interp_hyp :
Ssrast.ist ->
Ssrast.goal Ssrast.sigma ->
Ssrast.ssrhyp ->
Evd.evar_map * Ssrast.ssrhypval interp_hyps :
Ssrast.ist ->
Ssrast.goal Ssrast.sigma ->
Ssrast.ssrhyps ->
Evd.evar_map * Ssrast.ssrhypsval interp_refine :
Ltac_plugin.Tacinterp.interp_sign ->
Goal.goal Evd.sigma ->
Glob_term.glob_constr ->
Evd.evar_map * (Evd.evar_map * EConstr.constr)val interp_open_constr :
Environ.env ->
Evd.evar_map ->
Ltac_plugin.Tacinterp.interp_sign ->
Genintern.glob_constr_and_expr ->
Evd.evar_map * (Evd.evar_map * EConstr.t)val pf_e_type_of :
Goal.goal Evd.sigma ->
EConstr.constr ->
Goal.goal Evd.sigma * EConstr.typesval splay_open_constr :
Environ.env ->
(Evd.evar_map * EConstr.t) ->
(Names.Name.t Context.binder_annot * EConstr.t) list * EConstr.tval mk_ast_closure_term :
[ `None | `Parens | `DoubleParens | `At ] ->
Constrexpr.constr_expr ->
Ssrast.ast_closure_termval interp_ast_closure_term :
Geninterp.interp_sign ->
Goal.goal Evd.sigma ->
Ssrast.ast_closure_term ->
Evd.evar_map * Ssrast.ast_closure_termval subst_ast_closure_term :
Mod_subst.substitution ->
Ssrast.ast_closure_term ->
Ssrast.ast_closure_termval glob_ast_closure_term :
Genintern.glob_sign ->
Ssrast.ast_closure_term ->
Ssrast.ast_closure_termval ssrdgens_of_parsed_dgens :
((Ssrast.ssrdocc * Ssrmatching_plugin.Ssrmatching.cpattern) list list
* Ssrast.ssrclear) ->
Ssrast.ssrdgensval abs_evars :
Environ.env ->
Evd.evar_map ->
(Evd.evar_map * EConstr.t) ->
int * EConstr.t * Evar.t list * UState.tval abs_evars2 :
Environ.env ->
Evd.evar_map ->
Evar.t list ->
(Evd.evar_map * EConstr.t) ->
int * EConstr.t * Evar.t list * UState.tval pfe_type_relevance_of :
Goal.goal Evd.sigma ->
EConstr.t ->
Goal.goal Evd.sigma * EConstr.types * Sorts.relevanceval pf_abs_prod :
Names.Name.t ->
Goal.goal Evd.sigma ->
EConstr.t ->
EConstr.t ->
Goal.goal Evd.sigma * EConstr.typesval pf_fresh_global :
Names.GlobRef.t ->
Goal.goal Evd.sigma ->
Constr.constr * Goal.goal Evd.sigmaval abs_evars_pirrel :
Environ.env ->
Evd.evar_map ->
(Evd.evar_map * Constr.constr) ->
int * Constr.constrval pf_abs_evars_pirrel :
Goal.goal Evd.sigma ->
(Evd.evar_map * Constr.constr) ->
int * Constr.constrval ssrevaltac :
Ltac_plugin.Tacinterp.interp_sign ->
Ltac_plugin.Tacinterp.Value.t ->
unit Proofview.tacticval red_safe :
Reductionops.reduction_function ->
Environ.env ->
Evd.evar_map ->
EConstr.t ->
EConstr.tval discharge_hyp :
(Names.Id.t * (Names.Id.t * string)) ->
Goal.goal Evd.sigma ->
Evar.t list Evd.sigmaval pf_abs_ssrterm :
?resolve_typeclasses:bool ->
Ssrast.ist ->
Goal.goal Evd.sigma ->
Ssrast.ssrterm ->
Evd.evar_map * EConstr.t * UState.t * intval pf_interp_ty :
?resolve_typeclasses:bool ->
Environ.env ->
Evd.evar_map ->
Ltac_plugin.Tacinterp.interp_sign ->
(Ssrast.ssrtermkind * (Glob_term.glob_constr * Constrexpr.constr_expr option)) ->
int * EConstr.t * EConstr.t * UState.tval applyn :
with_evars:bool ->
?beta:bool ->
?with_shelve:bool ->
?first_goes_last:bool ->
int ->
EConstr.t ->
unit Proofview.tacticval pf_saturate :
?beta:bool ->
?bi_types:bool ->
Goal.goal Evd.sigma ->
EConstr.constr ->
?ty:EConstr.types ->
int ->
EConstr.constr
* EConstr.types
* (int * EConstr.constr) list
* Goal.goal Evd.sigmaval saturate :
?beta:bool ->
?bi_types:bool ->
Environ.env ->
Evd.evar_map ->
EConstr.constr ->
?ty:EConstr.types ->
int ->
EConstr.constr * EConstr.types * (int * EConstr.constr) list * Evd.evar_mapval refine_with :
?first_goes_last:bool ->
?beta:bool ->
?with_evars:bool ->
(Evd.evar_map * EConstr.t) ->
unit Proofview.tacticval resolve_typeclasses :
where:EConstr.t ->
fail:bool ->
Environ.env ->
Evd.evar_map ->
Evd.evar_mapval gentac :
(Ssrast.ssrdocc * Ssrmatching_plugin.Ssrmatching.cpattern) ->
unit Proofview.tacticval genstac :
(((Ssrast.ssrhyp list option * Ssrmatching_plugin.Ssrmatching.occ)
* Ssrmatching_plugin.Ssrmatching.cpattern)
list
* Ssrast.ssrhyp list) ->
unit Proofview.tacticval pf_interp_gen :
bool ->
((Ssrast.ssrhyp list option * Ssrmatching_plugin.Ssrmatching.occ)
* Ssrmatching_plugin.Ssrmatching.cpattern) ->
Goal.goal Evd.sigma ->
(EConstr.t * EConstr.t * Ssrast.ssrhyp list) * Goal.goal Evd.sigmaBasic tactics
val interp_clr :
Evd.evar_map ->
(Ssrast.ssrhyps option * (Ssrast.ssrtermkind * EConstr.t)) ->
Ssrast.ssrhypsval abs_wgen :
bool ->
(Names.Id.t -> Names.Id.t) ->
('a
* ((Ssrast.ssrhyp_or_id * string)
* Ssrmatching_plugin.Ssrmatching.cpattern option)
option) ->
(Goal.goal Evd.sigma * EConstr.t list * EConstr.t) ->
Goal.goal Evd.sigma * EConstr.t list * EConstr.tval clr_of_wgen :
(Ssrast.ssrhyps * ((Ssrast.ssrhyp_or_id * 'a) * 'b option) option) ->
unit Proofview.tactic list ->
unit Proofview.tactic listval tclINTERP_AST_CLOSURE_TERM_AS_CONSTR :
Ssrast.ast_closure_term ->
EConstr.t list Proofview.tacticval tacREDUCE_TO_QUANTIFIED_IND :
EConstr.types ->
((Names.inductive * EConstr.EInstance.t) * EConstr.types) Proofview.tacticval tclINTRO :
id:intro_id ->
conclusion:
(orig_name:Names.Name.t -> new_name:Names.Id.t -> unit Proofview.tactic) ->
unit Proofview.tacticval tacMKPROD :
EConstr.t ->
?name:Names.Name.t ->
EConstr.types ->
EConstr.types Proofview.tacticval tacINTERP_CPATTERN :
Ssrmatching_plugin.Ssrmatching.cpattern ->
Ssrmatching_plugin.Ssrmatching.pattern Proofview.tactic1 shot, hands-on the top of the stack, eg for => ->