package coq-core

  1. Overview
  2. Docs
The Coq Proof Assistant -- Core Binaries and Tools

Install

Dune Dependency

Authors

Maintainers

Sources

coq-8.19.2.tar.gz
md5=5d1187d5e44ed0163f76fb12dabf012e
sha512=91bc81530fa4f6498961583ad51eac5001f139881788b88e360a866ad8e2a6e2c5bce86d1a580ab4cd4782bf49d48318767df82471ce33ba3ac143e5569ad33c

doc/coq-core.pretyping/Tacred/index.html

Module TacredSource

Sourcetype evaluable_global_reference =
  1. | EvalVarRef of Names.Id.t
  2. | EvalConstRef of Names.Constant.t

Here the semantics is completely unclear. What does "Hint Unfold t" means when "t" is a parameter? Does the user mean "Unfold X.t" or does she mean "Unfold y" where X.t is later on instantiated with y? I choose the first interpretation (i.e. an evaluable reference is never expanded).

Sourcetype reduction_tactic_error =
  1. | InvalidAbstraction of Environ.env * Evd.evar_map * EConstr.constr * Environ.env * Type_errors.type_error
Sourceexception ReductionTacticError of reduction_tactic_error
Reduction functions associated to tactics.

Evaluable global reference

Sourceval is_evaluable : Environ.env -> evaluable_global_reference -> bool
Sourceexception NotEvaluableRef of Names.GlobRef.t
Sourceval error_not_evaluable : Names.GlobRef.t -> 'a
Sourceval evaluable_of_global_reference : Environ.env -> Names.GlobRef.t -> evaluable_global_reference
Sourceval global_of_evaluable_reference : evaluable_global_reference -> Names.GlobRef.t

Red (returns None if nothing reducible)

Simpl only at the head

Hnf: like whd_simpl but force delta-reduction of constants that do not immediately hide a non reducible fix or cofix

Variant of the above that does not perform nf-βι

Rem: Lazy strategies are defined in Reduction

Sourceval cbv_norm_flags : RedFlags.reds -> strong:bool -> Reductionops.reduction_function

Call by value strategy (uses Closures)

= cbv_betadeltaiota

reduce_to_atomic_ind env sigma t puts t in the form t'=(I args) with I an inductive definition; returns I and t' or fails with a user error

reduce_to_quantified_ind env sigma t puts t in the form t'=(x1:A1)..(xn:An)(I args) with I an inductive definition; returns I and t' or fails with a user error

Same as reduce_to_quantified_ind but more efficient because it does not return the normalized type.

Sourceval reduce_to_quantified_ref : ?allow_failure:bool -> Environ.env -> Evd.evar_map -> Names.GlobRef.t -> EConstr.types -> EConstr.types

reduce_to_quantified_ref env sigma ref t try to put t in the form t'=(x1:A1)..(xn:An)(ref args). When this is not possible, if allow_failure is specified, t is unfolded until the point where this impossibility is plainly visible. Otherwise, it fails with user error.

Sourceval reduce_to_atomic_ref : ?allow_failure:bool -> Environ.env -> Evd.evar_map -> Names.GlobRef.t -> EConstr.types -> EConstr.types
Sourceval check_privacy : Environ.env -> Names.inductive -> unit

Errors if the inductive is not allowed for pattern-matching. *

OCaml

Innovation. Community. Security.