package coq-core
- Overview
- No Docs
You can search for identifiers within the package.
in-package search v0.2.0
 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
  The Coq Proof Assistant -- Core Binaries and Tools
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
  
    
      coq-8.17.1.tar.gz
    
    
        
    
  
  
  
    
  
        sha512=9a35311acec2a806730b94ac7dceabc88837f235c52a14c026827d9b89433bd7fa9555a9fc6829aa49edfedb24c8bbaf1411ebf463b74a50aeb17cba47745b6b
    
    
  doc/coq-core.pretyping/Unification/index.html
Module UnificationSource
Source
type core_unify_flags = {- modulo_conv_on_closed_terms : TransparentState.t option;
- use_metas_eagerly_in_conv_on_closed_terms : bool;
- use_evars_eagerly_in_conv_on_closed_terms : bool;
- modulo_delta : TransparentState.t;
- modulo_delta_types : TransparentState.t;
- check_applied_meta_types : bool;
- use_pattern_unification : bool;
- use_meta_bound_pattern_unification : bool;
- allowed_evars : Evarsolve.AllowedEvars.t;
- restrict_conv_on_strict_subterms : bool;
- modulo_betaiota : bool;
- modulo_eta : bool;
}Source
type unify_flags = {- core_unify_flags : core_unify_flags;
- merge_unify_flags : core_unify_flags;
- subterm_unify_flags : core_unify_flags;
- allow_K_in_toplevel_higher_order_unification : bool;
- resolve_evars : bool;
}Source
val w_unify : 
  Environ.env ->
  Evd.evar_map ->
  Evd.conv_pb ->
  ?flags:unify_flags ->
  EConstr.constr ->
  EConstr.constr ->
  Evd.evar_mapThe "unique" unification function
Source
val w_unify_to_subterm : 
  Environ.env ->
  Evd.evar_map ->
  ?flags:unify_flags ->
  (EConstr.constr * EConstr.constr) ->
  Evd.evar_map * EConstr.constrw_unify_to_subterm env m (c,t) performs unification of c with a subterm of t. Constraints are added to m and the matched subterm of t is also returned.
Source
val w_unify_to_subterm_all : 
  Environ.env ->
  Evd.evar_map ->
  ?flags:unify_flags ->
  (EConstr.constr * EConstr.constr) ->
  Evd.evar_map listSource
val w_coerce_to_type : 
  Environ.env ->
  Evd.evar_map ->
  EConstr.constr ->
  EConstr.types ->
  EConstr.types ->
  Evd.evar_map * EConstr.constrw_coerce_to_type env evd c ctyp typ tries to coerce c of type ctyp so that its gets type typ; typ may contain metavariables
Source
type abstraction_request = - | AbstractPattern of prefix_of_inductive_support_flag * EConstr.types -> bool * Names.Name.t * Evd.evar_map * EConstr.constr * Locus.clause * bool
- | AbstractExact of Names.Name.t * EConstr.constr * EConstr.types option * Locus.clause * bool
Source
type 'r abstraction_result =
  Names.Id.t
  * Environ.named_context_val
  * EConstr.named_declaration list
  * Names.Id.t option
  * EConstr.types
  * (Evd.evar_map * EConstr.constr) optionSource
val make_abstraction : 
  Environ.env ->
  Evd.evar_map ->
  EConstr.constr ->
  abstraction_request ->
  'r abstraction_resultSource
val pose_all_metas_as_evars : 
  Environ.env ->
  Evd.evar_map ->
  EConstr.constr ->
  Evd.evar_map * EConstr.constrSource
val abstract_list_all : 
  Environ.env ->
  Evd.evar_map ->
  EConstr.constr ->
  EConstr.constr ->
  EConstr.constr list ->
  Evd.evar_map * (EConstr.constr * EConstr.types)abstract_list_all env evd t c l abstracts the terms in l over c to get a term of type t (exported for inv.ml)
Source
type metabinding =
  Constr.metavariable
  * EConstr.constr
  * (Evd.instance_constraint * Evd.instance_typing_status)Source
type subst0 =
  Evd.evar_map
  * metabinding list
  * ((Environ.env * int) * EConstr.existential * EConstr.t) listSource
val unify_0 : 
  Environ.env ->
  Evd.evar_map ->
  Evd.conv_pb ->
  core_unify_flags ->
  EConstr.types ->
  EConstr.types ->
  subst0 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >