package coq-core
 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
On This Page
  
  
  The Coq Proof Assistant -- Core Binaries and Tools
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
  
    
      coq-8.18.0.tar.gz
    
    
        
    
  
  
  
    
  
  
    
  
        md5=8d852367b54f095d9fbabd000304d450
    
    
  sha512=46922d5f2eb6802a148a52fd3e7f0be8370c93e7bc33cee05cf4a2044290845b10ccddbaa306f29c808e7c5019700763e37e45ff6deb507b874a4348010fed50
    
    
  doc/coq-core.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.functorizeConversions between module_body and module_type_body
Source
val module_body_of_type : 
  Names.ModPath.t ->
  Declarations.module_type_body ->
  Declarations.module_bodySource
val implem_smart_map : 
  (Declarations.structure_body -> Declarations.structure_body) ->
  (Declarations.module_expression -> Declarations.module_expression) ->
  Declarations.module_implementation ->
  Declarations.module_implementationSource
val annotate_module_expression : 
  Declarations.module_expression ->
  Declarations.module_signature ->
  (Declarations.module_type_body,
    (Constr.constr * Univ.AbstractContext.t option)
      Declarations.module_alg_expr)
    Declarations.functorizeSource
val annotate_struct_body : 
  Declarations.structure_body ->
  Declarations.module_signature ->
  Declarations.module_signatureSubstitutions
Source
val subst_signature : 
  Mod_subst.substitution ->
  Declarations.module_signature ->
  Declarations.module_signatureSource
val subst_structure : 
  Mod_subst.substitution ->
  Declarations.structure_body ->
  Declarations.structure_bodyAdding to an environment
Source
val add_structure : 
  Names.ModPath.t ->
  Declarations.structure_body ->
  Mod_subst.delta_resolver ->
  Environ.env ->
  Environ.envadds a module and its components, but not the constraints
Source
val add_linked_module : 
  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_type : 
  Names.ModPath.t ->
  Declarations.module_type_body ->
  Environ.env ->
  Environ.envsame, for a module type
Source
val add_retroknowledge : 
  Declarations.module_implementation Declarations.module_retroknowledge ->
  Environ.env ->
  Environ.envStrengthening
Source
val strengthen : 
  Declarations.module_type_body ->
  Names.ModPath.t ->
  Declarations.module_type_bodySource
val strengthen_and_subst_module_body : 
  Declarations.module_body ->
  Names.ModPath.t ->
  bool ->
  Declarations.module_bodySource
val subst_modtype_signature_and_resolver : 
  Names.ModPath.t ->
  Names.ModPath.t ->
  Declarations.module_signature ->
  Mod_subst.delta_resolver ->
  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 ->
  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)
Errors
Source
type signature_mismatch_error = - | InductiveFieldExpected of Declarations.mutual_inductive_body
- | DefinitionFieldExpected
- | ModuleFieldExpected
- | ModuleTypeFieldExpected
- | NotConvertibleInductiveField of Names.Id.t
- | NotConvertibleConstructorField of Names.Id.t
- | NotConvertibleBodyField
- | NotConvertibleTypeField of Environ.env * Constr.types * Constr.types
- | CumulativeStatusExpected of bool
- | PolymorphicStatusExpected of bool
- | NotSameConstructorNamesField
- | NotSameInductiveNameInBlockField
- | FiniteInductiveFieldExpected of bool
- | InductiveNumbersFieldExpected of int
- | InductiveParamsNumberField of int
- | RecordFieldExpected of bool
- | RecordProjectionsExpected of Names.Name.t list
- | NotEqualInductiveAliases
- | IncompatibleUniverses of UGraph.univ_inconsistency
- | IncompatiblePolymorphism of Environ.env * Constr.types * Constr.types
- | IncompatibleConstraints of {- got : Univ.AbstractContext.t;
- expect : Univ.AbstractContext.t;
 - }
- | IncompatibleVariance
Source
type module_typing_error = - | SignatureMismatch of subtyping_trace_elt list * Names.Label.t * signature_mismatch_error
- | LabelAlreadyDeclared of Names.Label.t
- | NotAFunctor
- | IsAFunctor of Names.ModPath.t
- | IncompatibleModuleTypes of Declarations.module_type_body * Declarations.module_type_body
- | NotEqualModulePaths of Names.ModPath.t * Names.ModPath.t
- | NoSuchLabel of Names.Label.t * Names.ModPath.t
- | NotAModuleLabel of Names.Label.t
- | NotAConstant of Names.Label.t
- | IncorrectWithConstraint of Names.Label.t
- | GenerativeModuleExpected of Names.Label.t
- | LabelMissing of Names.Label.t * string
- | IncludeRestrictedFunctor of Names.ModPath.t
Source
val error_incompatible_modtypes : 
  Declarations.module_type_body ->
  Declarations.module_type_body ->
  'aSource
val error_signature_mismatch : 
  subtyping_trace_elt list ->
  Names.Label.t ->
  signature_mismatch_error ->
  'a sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
  On This Page