package rocq-runtime
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page
The Rocq Prover -- Core Binaries and Tools
Install
dune-project
Dependency
Authors
Maintainers
Sources
rocq-9.2.0.tar.gz
sha256=a45280ab4fbaac7540b136a6b073b4a6db15739ec1e149bded43fa6f4fc25f20
doc/rocq-runtime.kernel/Modops/index.html
Module ModopsSource
Various operations on modules and module types
Functors
Source
val destr_functor :
('ty, 'a) Declarations.functorize ->
Names.MBId.t * 'ty * ('ty, 'a) Declarations.functorizeSource
val annotate_module_expression :
Declarations.module_expression ->
Mod_declarations.module_signature ->
(Mod_declarations.module_type_body,
(Constr.constr * UVars.AbstractContext.t option)
Declarations.module_alg_expr)
Declarations.functorizeSource
val annotate_struct_body :
Mod_declarations.structure_body ->
Mod_declarations.module_signature ->
Mod_declarations.module_signatureSubstitutions
Source
val subst_signature :
Mod_subst.substitution ->
Names.ModPath.t ->
Mod_declarations.module_signature ->
Mod_declarations.module_signatureSource
val subst_structure :
Mod_subst.substitution ->
Names.ModPath.t ->
Mod_declarations.structure_body ->
Mod_declarations.structure_bodyAdding to an environment
Source
val add_structure :
Names.ModPath.t ->
Mod_declarations.structure_body ->
Mod_subst.delta_resolver ->
Environ.env ->
Environ.envSource
val add_module :
Names.ModPath.t ->
Mod_declarations.module_body ->
Environ.env ->
Environ.envadds a module and its components, but not the constraints
Source
val add_linked_module :
Names.ModPath.t ->
Mod_declarations.module_body ->
Environ.link_info ->
Environ.env ->
Environ.envsame as add_module, but for a module whose native code has been linked by the native compiler. The linking information is updated.
Source
val add_module_parameter :
Names.MBId.t ->
Mod_declarations.module_type_body ->
Environ.env ->
Environ.envadd an abstract module parameter to the environment
Strengthening
Source
val strengthen :
Mod_declarations.module_type_body ->
Names.ModPath.t ->
Mod_declarations.module_type_bodySource
val strengthen_and_subst_module_body :
Names.ModPath.t ->
Mod_declarations.module_body ->
Names.ModPath.t ->
bool ->
Mod_declarations.module_bodySource
val subst_modtype_signature_and_resolver :
Names.ModPath.t ->
Names.ModPath.t ->
Mod_declarations.module_signature ->
Mod_subst.delta_resolver ->
Mod_declarations.module_signature * Mod_subst.delta_resolverBuilding map of constants to inline
Source
val inline_delta_resolver :
Environ.env ->
Entries.inline ->
Names.ModPath.t ->
Names.MBId.t ->
Mod_declarations.module_type_body ->
Mod_subst.delta_resolver ->
Mod_subst.delta_resolverCleaning a module expression from bounded parts
For instance: functor(X:T)->struct module M:=X end) becomes: functor(X:T)->struct module M:=<content of T> end)
Source
val clean_bounded_mod_expr :
Mod_declarations.module_signature ->
Mod_declarations.module_signatureErrors
Source
type signature_mismatch_error = | InductiveFieldExpected of Declarations.mutual_inductive_body| DefinitionFieldExpected| ModuleFieldExpected| ModuleTypeFieldExpected| NotConvertibleInductiveField of Names.Id.t * (Environ.env * Constr.types * Constr.types) option| NotConvertibleConstructorField of Names.Id.t * (Environ.env * Constr.types * Constr.types) option| NotConvertibleBodyField of (Environ.env * Constr.constr * Constr.constr) option| NotConvertibleTypeField of Environ.env * Constr.types * Constr.types| CumulativeStatusExpected of bool| PolymorphicStatusExpected of bool| NotSameConstructorNamesField of Names.Id.t array * Names.Id.t array| NotSameInductiveNameInBlockField of Names.Id.t * Names.Id.t| FiniteInductiveFieldExpected of bool| InductiveNumbersFieldExpected of {}| InductiveParamsNumberField of {}| RecordFieldExpected of bool| RecordProjectionsExpected of {expected : Names.Name.t list;got : Names.Name.t list;
}| NotEqualInductiveAliases of Names.MutInd.t * Names.MutInd.t| IncompatibleUniverses of {err : UGraph.univ_inconsistency;env : Environ.env;t1 : Constr.types;t2 : Constr.types;
}| IncompatibleQualities of {err : QGraph.elimination_error;env : Environ.env;t1 : Constr.types;t2 : Constr.types;
}| IncompatiblePolymorphism of Environ.env * Constr.types * Constr.types| IncompatibleUnivConstraints of {got : UVars.AbstractContext.t;expect : UVars.AbstractContext.t;
}| IncompatibleVariance| NoRewriteRulesSubtyping
Source
type with_constraint_error = | WithSignatureMismatch of signature_mismatch_error| WithCannotConstrainPrimitive| WithCannotConstrainSymbol
Source
type module_typing_error = | SignatureMismatch of subtyping_trace_elt list * Names.Id.t * signature_mismatch_error| LabelAlreadyDeclared of Names.Id.t| NotAFunctor| IsAFunctor of Names.ModPath.t| IncompatibleModuleTypes of Mod_declarations.module_type_body * Mod_declarations.module_type_body| NotEqualModulePaths of Names.ModPath.t * Names.ModPath.t| NoSuchLabel of Names.Id.t * Names.ModPath.t| NotAModuleLabel of Names.Id.t| NotAConstant of Names.Id.t| IncorrectWithConstraint of Names.Id.t * with_constraint_error| GenerativeModuleExpected of Names.Id.t| LabelMissing of Names.Id.t * string| IncludeRestrictedFunctor of Names.ModPath.t
Source
val error_incompatible_modtypes :
Mod_declarations.module_type_body ->
Mod_declarations.module_type_body ->
'aSource
val error_signature_mismatch :
subtyping_trace_elt list ->
Names.Id.t ->
signature_mismatch_error ->
'a sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page