package coq-core
The Coq Proof Assistant -- Core Binaries and Tools
Install
Dune Dependency
Authors
Maintainers
Sources
coq-8.17.1.tar.gz
sha512=9a35311acec2a806730b94ac7dceabc88837f235c52a14c026827d9b89433bd7fa9555a9fc6829aa49edfedb24c8bbaf1411ebf463b74a50aeb17cba47745b6b
doc/coq-core.pretyping/Coercionops/index.html
Module Coercionops
Source
Source
type cl_typ =
| CL_SORT
| CL_FUN
| CL_SECVAR of Names.variable
| CL_CONST of Names.Constant.t
| CL_IND of Names.inductive
| CL_PROJ of Names.Projection.Repr.t
This is the type of class kinds
This is the type of coercion kinds
Source
type coe_info_typ = {
coe_value : Names.GlobRef.t;
coe_typ : Constr.t;
coe_local : bool;
coe_reversible : bool;
coe_is_identity : bool;
coe_is_projection : Names.Projection.Repr.t option;
coe_source : cl_typ;
coe_target : cl_typ;
coe_param : int;
}
This is the type of infos for declared coercions
This is the type of paths from a class to another
Access to classes infos
Source
val find_class_type :
Environ.env ->
Evd.evar_map ->
EConstr.types ->
cl_typ * EConstr.EInstance.t * EConstr.constr list
find_class_type env sigma c
returns the head reference of c
, its universe instance and its arguments
raises Not_found
if not convertible to a class
Set update
to update an already declared coercion (default false
).
Lookup functions for coercion paths
given one (or two) types these function also return the class (classes) of the type and its class_args_of
Source
val lookup_path_between :
Environ.env ->
Evd.evar_map ->
src:EConstr.types ->
tgt:EConstr.types ->
inheritance_path
Source
val lookup_path_to_fun_from :
Environ.env ->
Evd.evar_map ->
EConstr.types ->
inheritance_path
Source
val lookup_path_to_sort_from :
Environ.env ->
Evd.evar_map ->
EConstr.types ->
inheritance_path
Source
val lookup_pattern_path_between :
Environ.env ->
(Names.inductive * Names.inductive) ->
(Names.constructor * int) list
hide_coercion
returns the number of params to skip if the coercion must be hidden, None
otherwise; it raises Not_found
if not a coercion
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page