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)"
  >
  
  
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.pretyping/Cases/index.html
Module CasesSource
Compilation of pattern-matching
Source
type pattern_matching_error = - | BadPattern of Names.constructor * EConstr.constr
- | BadConstructor of Names.constructor * Names.inductive
- | WrongNumargConstructor of {- cstr : Names.constructor;
- expanded : bool;
- nargs : int;
- expected_nassums : int;
- expected_ndecls : int;
 - }
- | WrongNumargInductive of {- ind : Names.inductive;
- expanded : bool;
- nargs : int;
- expected_nassums : int;
- expected_ndecls : int;
 - }
- | UnusedClause of Glob_term.cases_pattern list
- | NonExhaustive of Glob_term.cases_pattern list
- | CannotInferPredicate of (EConstr.constr * EConstr.types) array
Pattern-matching errors
Source
val error_wrong_numarg_constructor : 
  ?loc:Loc.t ->
  Environ.env ->
  cstr:Names.constructor ->
  expanded:bool ->
  nargs:int ->
  expected_nassums:int ->
  expected_ndecls:int ->
  'aSource
val error_wrong_numarg_inductive : 
  ?loc:Loc.t ->
  Environ.env ->
  ind:Names.inductive ->
  expanded:bool ->
  nargs:int ->
  expected_nassums:int ->
  expected_ndecls:int ->
  'aCompilation primitive.
Source
val compile_cases : 
  ?loc:Loc.t ->
  program_mode:bool ->
  Constr.case_style ->
  ((Evardefine.type_constraint ->
   GlobEnv.t ->
   Evd.evar_map ->
   Glob_term.glob_constr ->
   Evd.evar_map * EConstr.unsafe_judgment)
   * Evd.evar_map) ->
  Evardefine.type_constraint ->
  GlobEnv.t ->
  (Glob_term.glob_constr option
   * Glob_term.tomatch_tuples
   * Glob_term.cases_clauses) ->
  Evd.evar_map * EConstr.unsafe_judgmentSource
val constr_of_pat : 
  Environ.env ->
  Evd.evar_map ->
  EConstr.rel_context ->
  Glob_term.cases_pattern ->
  Names.Id.Set.t ->
  Evd.evar_map
  * Glob_term.cases_pattern
  * (EConstr.rel_context
     * EConstr.constr
     * (EConstr.types * EConstr.constr list)
     * Glob_term.cases_pattern)
  * Names.Id.Set.tSource
type 'a rhs = {- rhs_env : GlobEnv.t;
- rhs_vars : Names.Id.Set.t;
- avoid_ids : Names.Id.Set.t;
- it : 'a option;
}Source
type 'a equation = {- patterns : Glob_term.cases_pattern list;
- rhs : 'a rhs;
- alias_stack : Names.Name.t list;
- eqn_loc : Loc.t option;
- orig : int option;
- catch_all_vars : Names.Id.t CAst.t list;
}Source
type tomatch_type = - | IsInd of EConstr.types * Inductiveops.inductive_type * Names.Name.t list
- | NotInd of EConstr.constr option * EConstr.types
Source
type tomatch_status = - | Pushed of bool * ((EConstr.constr * tomatch_type) * int list * Names.Name.t)
- | Alias of bool * (Names.Name.t * EConstr.constr * (EConstr.constr * EConstr.types))
- | NonDepAlias
- | Abstract of int * EConstr.rel_declaration
Source
and pattern_continuation = - | Continuation of int * Glob_term.cases_pattern list * pattern_history
- | Result of Glob_term.cases_pattern list
Source
type 'a pattern_matching_problem = {- env : GlobEnv.t;
- pred : EConstr.constr;
- tomatch : tomatch_stack;
- history : pattern_continuation;
- mat : 'a matrix;
- caseloc : Loc.t option;
- casestyle : Constr.case_style;
- typing_function : Evardefine.type_constraint -> GlobEnv.t -> Evd.evar_map -> 'a option -> Evd.evar_map * EConstr.unsafe_judgment;
}Source
val compile : 
  program_mode:bool ->
  Evd.evar_map ->
  'a pattern_matching_problem ->
  (int option * Names.Id.t CAst.t list) list
  * Evd.evar_map
  * EConstr.unsafe_judgmentSource
val prepare_predicate : 
  ?loc:Loc.t ->
  program_mode:bool ->
  (Evardefine.type_constraint ->
    GlobEnv.t ->
    Evd.evar_map ->
    Glob_term.glob_constr ->
    Evd.evar_map * EConstr.unsafe_judgment) ->
  GlobEnv.t ->
  Evd.evar_map ->
  (EConstr.types * tomatch_type) list ->
  EConstr.rel_context list ->
  EConstr.constr option ->
  Glob_term.glob_constr option ->
  (Evd.evar_map * (Names.Name.t * Names.Name.t list) list * EConstr.constr)
    listSource
val make_return_predicate_ltac_lvar : 
  GlobEnv.t ->
  Evd.evar_map ->
  Names.Name.t ->
  Glob_term.glob_constr ->
  EConstr.constr ->
  GlobEnv.t sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
  On This Page