package coq-core
Install
Dune Dependency
Authors
Maintainers
Sources
md5=0cfaa70f569be9494d24c829e6555d46
sha512=8ee967c636b67b22a4f34115871d8f9b9114df309afc9ddf5f61275251088c6e21f6cf745811df75554d30f4cebb6682f23eeb2e88b771330c4b60ce3f6bf5e2
doc/coq-core.proofs/Proof/index.html
Module Proof
Source
type data = {
sigma : Evd.evar_map;
(*A representation of the evar_map
*)EJGA wouldn't it better to just return the proofview?
goals : Evar.t list;
(*Focused goals
*)entry : Proofview.entry;
(*Entry for the proofview
*)stack : (Evar.t list * Evar.t list) list;
(*A representation of the focus stack
*)name : Names.Id.t;
(*The name of the theorem whose proof is being constructed
*)poly : bool;
(*polymorphism
*)
}
val start :
name:Names.Id.t ->
poly:bool ->
?typing_flags:Declarations.typing_flags ->
Evd.evar_map ->
(Environ.env * EConstr.types) list ->
t
val dependent_start :
name:Names.Id.t ->
poly:bool ->
?typing_flags:Declarations.typing_flags ->
Proofview.telescope ->
t
update_sigma_univs
lifts UState.update_sigma_univs
to the proof
val run_tactic :
Environ.env ->
'a Proofview.tactic ->
t ->
t * (bool * Proofview_monad.Info.tree) * 'a
solve (SelectNth n) tac
applies tactic tac
to the n
th subgoal of the current focused proof. solve SelectAll tac
applies tac
to all subgoals.
val solve :
?with_end_tac:unit Proofview.tactic ->
Goal_select.t ->
int option ->
unit Proofview.tactic ->
t ->
t * bool
Option telling if unification heuristics should be used.
val refine_by_tactic :
name:Names.Id.t ->
poly:bool ->
Environ.env ->
Evd.evar_map ->
EConstr.types ->
unit Proofview.tactic ->
EConstr.constr * Evd.evar_map
A variant of the above function that handles open terms as well. Caveat: all effects are purged in the returned term at the end, but other evars solved by side-effects are NOT purged, so that unexpected failures may occur. Ideally all code using this function should be rewritten in the monad.
Helpers to obtain proof state when in an interactive proof
get_proof_context ()
gets the goal context for the first subgoal of the proof