rocq-runtime.clib
PolyMap.Make
btauto_plugin
byte_config
cc_core_plugin
cc_plugin
derive_plugin
extraction_plugin
firstorder_core_plugin
firstorder_plugin
funind_plugin
ltac2_ltac1_plugin
ltac2_plugin
ltac_plugin
micromega_core_plugin
micromega_plugin
nsatz_core_plugin
nsatz_plugin
number_string_notation_plugin
ring_plugin
rocq-runtime.boot
rocq-runtime.checklib
rocq-runtime.config
rocq-runtime.coqargs
rocq-runtime.coqdeplib
rocq-runtime.coqworkmgrapi
rocq-runtime.debugger_support
rocq-runtime.dev
rocq-runtime.engine
rocq-runtime.gramlib
rocq-runtime.interp
rocq-runtime.kernel
rocq-runtime.lib
rocq-runtime.library
rocq-runtime.parsing
rocq-runtime.perf
rocq-runtime.plugins
rocq-runtime.pretyping
rocq-runtime.printing
rocq-runtime.proofs
rocq-runtime.rocqshim
rocq-runtime.stm
rocq-runtime.sysinit
rocq-runtime.tactics
rocq-runtime.toplevel
rocq-runtime.vernac
rocq-runtime.vm
rtauto_plugin
ssreflect_plugin
ssrmatching_plugin
tauto_plugin
tuto0_plugin
tuto1_plugin
tuto2_plugin
tuto3_plugin
zify_plugin
module Tag : Tag
module type OneTag = sig ... end
type 'a onetag = (module OneTag with type a = 'a)
There is no equality function between _ tag values (other than Stdlib.(=)), and especially no equality function which shows that when the values are equal the type arguments are also equal.
_ tag
Stdlib.(=)
Instead we can use 'a onetag to recognize 'b tag values.
'a onetag
'b tag
val eq_onetag : 'a onetag -> 'b Tag.tag -> ('a, 'b) CSig.eq option
val make : unit -> 'a onetag
val tag_of_onetag : 'a onetag -> 'a Tag.tag
module type MapS = sig ... end
module Map (V : ValueS) : MapS with type 'a value := 'a V.t