package rocq-runtime

  1. Overview
  2. Docs
The Rocq Prover -- Core Binaries and Tools

Install

dune-project
 Dependency

Authors

Maintainers

Sources

rocq-9.3.0.tar.gz
sha256=3f0fc283e8644394aa9c7a6e3995b6d9ebbe1e6dda712bf431f9c372dcef95ad

doc/rocq-runtime.vernac/ComCoercion/index.html

Module ComCoercionSource

Classes and coercions.

Sourceval try_add_new_coercion_with_target : Names.GlobRef.t -> local:bool -> reversible:bool -> source:Coercionops.cl_typ -> target:Coercionops.cl_typ -> unit

try_add_new_coercion_with_target ref s src tg declares ref as a coercion from src to tg

Sourceval try_add_new_coercion : Names.GlobRef.t -> local:bool -> reversible:bool -> unit

try_add_new_coercion ref s declares ref, assumed to be of type (x1:T1)...(xn:Tn)src->tg, as a coercion from src to tg

Sourceval try_add_new_coercion_subclass : ?loc:Loc.t -> Coercionops.cl_typ -> local:bool -> poly:PolyFlags.t -> reversible:bool -> unit

try_add_new_coercion_subclass cst s expects that cst denotes a transparent constant which unfolds to some class tg; it declares an identity coercion from cst to tg, named something like "Id_cst_tg"

Sourceval try_add_new_coercion_with_source : Names.GlobRef.t -> local:bool -> reversible:bool -> source:Coercionops.cl_typ -> unit

try_add_new_coercion_with_source ref s src declares ref as a coercion from src to tg where the target is inferred from the type of ref

Sourceval try_add_new_identity_coercion : Names.lident -> local:bool -> poly:PolyFlags.t -> source:Coercionops.cl_typ -> target:Coercionops.cl_typ -> unit

try_add_new_identity_coercion id s src tg enriches the environment with a new definition of name id declared as an identity coercion from src to tg

Sourceval coercion_hook : reversible:bool -> Declare.Hook.t
Sourceval subclass_hook : poly:PolyFlags.t -> reversible:bool -> Declare.Hook.t
Sourceval class_of_global : Names.GlobRef.t -> Coercionops.cl_typ
Sourceval change_reverse : Names.GlobRef.t -> reversible:bool -> unit