package coq
Formal proof management system
Install
Dune Dependency
Authors
Maintainers
Sources
coq-8.14.1.tar.gz
sha256=3cbfc1e1a72b16d4744f5b64ede59586071e31d9c11c811a0372060727bfd9c3
doc/ssreflect_plugin/Ssreflect_plugin/Ssrcommon/index.html
Module Ssreflect_plugin.Ssrcommon
Source
Source
type 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;
}
Source
val with_ctx :
(tac_ctx -> 'b * tac_ctx) ->
('a * tac_ctx) Ssrast.sigma ->
'b * ('a * tac_ctx) Ssrast.sigma
Source
val tac_on_all :
(Ssrast.goal * tac_ctx) list Ssrast.sigma ->
tac_ctx tac_a ->
(Ssrast.goal * tac_ctx) list Ssrast.sigma
Source
val mkRLambda :
Names.Name.t ->
Glob_term.glob_constr ->
Glob_term.glob_constr ->
Glob_term.glob_constr
Source
val mkCCast :
?loc:Loc.t ->
Constrexpr.constr_expr ->
Constrexpr.constr_expr ->
Constrexpr.constr_expr
Source
val mkCArrow :
?loc:Loc.t ->
Constrexpr.constr_expr ->
Constrexpr.constr_expr ->
Constrexpr.constr_expr
Source
val mkCLambda :
?loc:Loc.t ->
Names.Name.t ->
Constrexpr.constr_expr ->
Constrexpr.constr_expr ->
Constrexpr.constr_expr
Source
val intern_term :
Ltac_plugin.Tacinterp.interp_sign ->
Environ.env ->
Ssrast.ssrterm ->
Glob_term.glob_constr
Source
val pf_intern_term :
Ltac_plugin.Tacinterp.interp_sign ->
Goal.goal Evd.sigma ->
Ssrast.ssrterm ->
Glob_term.glob_constr
Source
val interp_term :
Environ.env ->
Evd.evar_map ->
Ltac_plugin.Tacinterp.interp_sign ->
Ssrast.ssrterm ->
Evd.evar_map * EConstr.t
Source
val interp_wit :
('a, 'b, 'c) Genarg.genarg_type ->
Ssrast.ist ->
Ssrast.goal Ssrast.sigma ->
'b ->
Evd.evar_map * 'c
Source
val interp_hyp :
Ssrast.ist ->
Ssrast.goal Ssrast.sigma ->
Ssrast.ssrhyp ->
Evd.evar_map * Ssrast.ssrhyp
Source
val interp_hyps :
Ssrast.ist ->
Ssrast.goal Ssrast.sigma ->
Ssrast.ssrhyps ->
Evd.evar_map * Ssrast.ssrhyps
Source
val interp_refine :
Ltac_plugin.Tacinterp.interp_sign ->
Goal.goal Evd.sigma ->
Glob_term.glob_constr ->
Evd.evar_map * (Evd.evar_map * EConstr.constr)
Source
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)
Source
val pf_e_type_of :
Goal.goal Evd.sigma ->
EConstr.constr ->
Goal.goal Evd.sigma * EConstr.types
Source
val splay_open_constr :
Environ.env ->
(Evd.evar_map * EConstr.t) ->
(Names.Name.t Context.binder_annot * EConstr.t) list * EConstr.t
Source
val mk_ast_closure_term :
[ `None | `Parens | `DoubleParens | `At ] ->
Constrexpr.constr_expr ->
Ssrast.ast_closure_term
Source
val interp_ast_closure_term :
Geninterp.interp_sign ->
Goal.goal Evd.sigma ->
Ssrast.ast_closure_term ->
Evd.evar_map * Ssrast.ast_closure_term
Source
val subst_ast_closure_term :
Mod_subst.substitution ->
Ssrast.ast_closure_term ->
Ssrast.ast_closure_term
Source
val glob_ast_closure_term :
Genintern.glob_sign ->
Ssrast.ast_closure_term ->
Ssrast.ast_closure_term
Source
val ssrdgens_of_parsed_dgens :
((Ssrast.ssrdocc * Ssrmatching_plugin.Ssrmatching.cpattern) list list
* Ssrast.ssrclear) ->
Ssrast.ssrdgens
Source
val abs_evars :
Environ.env ->
Evd.evar_map ->
(Evd.evar_map * EConstr.t) ->
int * EConstr.t * Evar.t list * UState.t
Source
val abs_evars2 :
Environ.env ->
Evd.evar_map ->
Evar.t list ->
(Evd.evar_map * EConstr.t) ->
int * EConstr.t * Evar.t list * UState.t
Source
val pfe_type_relevance_of :
Goal.goal Evd.sigma ->
EConstr.t ->
Goal.goal Evd.sigma * EConstr.types * Sorts.relevance
Source
val pf_abs_prod :
Names.Name.t ->
Goal.goal Evd.sigma ->
EConstr.t ->
EConstr.t ->
Goal.goal Evd.sigma * EConstr.types
Source
val pf_fresh_global :
Names.GlobRef.t ->
Goal.goal Evd.sigma ->
Constr.constr * Goal.goal Evd.sigma
Source
val abs_evars_pirrel :
Environ.env ->
Evd.evar_map ->
(Evd.evar_map * Constr.constr) ->
int * Constr.constr
Source
val pf_abs_evars_pirrel :
Goal.goal Evd.sigma ->
(Evd.evar_map * Constr.constr) ->
int * Constr.constr
Source
val ssrevaltac :
Ltac_plugin.Tacinterp.interp_sign ->
Ltac_plugin.Tacinterp.Value.t ->
unit Proofview.tactic
Source
val red_safe :
Reductionops.reduction_function ->
Environ.env ->
Evd.evar_map ->
EConstr.t ->
EConstr.t
Source
val discharge_hyp :
(Names.Id.t * (Names.Id.t * string)) ->
Goal.goal Evd.sigma ->
Evar.t list Evd.sigma
Source
val pf_abs_ssrterm :
?resolve_typeclasses:bool ->
Ssrast.ist ->
Goal.goal Evd.sigma ->
Ssrast.ssrterm ->
Evd.evar_map * EConstr.t * UState.t * int
Source
val 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.t
Source
val applyn :
with_evars:bool ->
?beta:bool ->
?with_shelve:bool ->
?first_goes_last:bool ->
int ->
EConstr.t ->
unit Proofview.tactic
Source
val 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.sigma
Source
val 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_map
Source
val refine_with :
?first_goes_last:bool ->
?beta:bool ->
?with_evars:bool ->
(Evd.evar_map * EConstr.t) ->
unit Proofview.tactic
Source
val resolve_typeclasses :
where:EConstr.t ->
fail:bool ->
Environ.env ->
Evd.evar_map ->
Evd.evar_map
Source
val gentac :
(Ssrast.ssrdocc * Ssrmatching_plugin.Ssrmatching.cpattern) ->
unit Proofview.tactic
Source
val genstac :
(((Ssrast.ssrhyp list option * Ssrmatching_plugin.Ssrmatching.occ)
* Ssrmatching_plugin.Ssrmatching.cpattern)
list
* Ssrast.ssrhyp list) ->
unit Proofview.tactic
Source
val 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.sigma
Basic tactics
Source
val interp_clr :
Evd.evar_map ->
(Ssrast.ssrhyps option * (Ssrast.ssrtermkind * EConstr.t)) ->
Ssrast.ssrhyps
Source
val 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.t
Source
val clr_of_wgen :
(Ssrast.ssrhyps * ((Ssrast.ssrhyp_or_id * 'a) * 'b option) option) ->
unit Proofview.tactic list ->
unit Proofview.tactic list
Source
val tclINTERP_AST_CLOSURE_TERM_AS_CONSTR :
Ssrast.ast_closure_term ->
EConstr.t list Proofview.tactic
Source
val tacREDUCE_TO_QUANTIFIED_IND :
EConstr.types ->
((Names.inductive * EConstr.EInstance.t) * EConstr.types) Proofview.tactic
Source
val tclINTRO :
id:intro_id ->
conclusion:
(orig_name:Names.Name.t -> new_name:Names.Id.t -> unit Proofview.tactic) ->
unit Proofview.tactic
Source
val tacMKPROD :
EConstr.t ->
?name:Names.Name.t ->
EConstr.types ->
EConstr.types Proofview.tactic
Source
val tacINTERP_CPATTERN :
Ssrmatching_plugin.Ssrmatching.cpattern ->
Ssrmatching_plugin.Ssrmatching.pattern Proofview.tactic
1 shot, hands-on the top of the stack, eg for => ->
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>