Module Tacmach

Operations for handling terms under a local typing context.

Variants of Tacmach functions built with the new proof engine

val pf_apply : (Environ.env -> Evd.evar_map -> 'a) -> Proofview.Goal.t -> 'a
val pf_get_type_of : Proofview.Goal.t -> EConstr.constr -> EConstr.types

This function does no type inference and expects an already well-typed term. It recomputes its type in the fastest way possible (no conversion is ever involved)

This function entirely type-checks the term and computes its type and the implied universe constraints.

val pf_conv_x : Proofview.Goal.t -> EConstr.t -> EConstr.t -> bool
val pf_get_new_id : Names.Id.t -> Proofview.Goal.t -> Names.Id.t
val pf_ids_of_hyps : Proofview.Goal.t -> Names.Id.t list
val pf_ids_set_of_hyps : Proofview.Goal.t -> Names.Id.Set.t
val pf_hyps_types : Proofview.Goal.t -> (Names.Id.t * EConstr.types) list
val pf_get_hyp_typ : Names.Id.t -> Proofview.Goal.t -> EConstr.types
val pf_nf_concl : Proofview.Goal.t -> EConstr.types
val pf_hnf_type_of : Proofview.Goal.t -> EConstr.constr -> EConstr.types
val pr_gls : Proofview.Goal.t -> Pp.t