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.20.1.tar.gz
    
    
        
    
  
  
  
    
  
  
    
  
        md5=0cfaa70f569be9494d24c829e6555d46
    
    
  sha512=8ee967c636b67b22a4f34115871d8f9b9114df309afc9ddf5f61275251088c6e21f6cf745811df75554d30f4cebb6682f23eeb2e88b771330c4b60ce3f6bf5e2
    
    
  doc/coq-core.interp/Constrexpr/index.html
Module Constrexpr
Concrete syntax for terms
type sort_name_expr = - | CSProp
- | CProp
- | CSet
- | CType of Libnames.qualid
- | CRawType of Univ.Level.t(*- Universes like "foo.1" have no qualid form *)
Universes
type univ_level_expr = sort_name_expr Glob_term.glob_sort_gentype relevance_info_expr = relevance_expr optiontype sort_expr =
  qvar_expr option * (sort_name_expr * int) list Glob_term.glob_sort_gentype instance_expr = quality_expr list * univ_level_expr listtype univ_constraint_expr =
  sort_name_expr * Univ.constraint_type * sort_name_exprConstraints don't have anonymous universes
type universe_decl_expr =
  (Names.lident list, Names.lident list, univ_constraint_expr list)
    UState.gen_universe_decltype cumul_univ_decl_expr =
  (Names.lident list,
    (Names.lident * UVars.Variance.t option) list,
    univ_constraint_expr list)
    UState.gen_universe_decltype ident_decl = Names.lident * universe_decl_expr optiontype cumul_ident_decl = Names.lident * cumul_univ_decl_expr optiontype name_decl = Names.lname * universe_decl_expr optiontype notation_entry_relative_level = {- notation_subentry : notation_entry;
- notation_relative_level : entry_relative_level;
- notation_position : side option;
}type notation = notation_entry * notation_keytype specific_notation =
  notation_with_optional_scope * (notation_entry * notation_key)type 'a or_by_notation = 'a or_by_notation_r CAst.ttype binder_kind = - | Default of Glob_term.binding_kind
- | Generalized of Glob_term.binding_kind * bool(*- (Inner binding always Implicit) Outer bindings, typeclass-specific flag for implicit generalization of superclasses *)
type cases_pattern_expr_r = - | CPatAlias of cases_pattern_expr * Names.lname
- | CPatCstr of Libnames.qualid * cases_pattern_expr list option * cases_pattern_expr list(*
 *)- CPatCstr (_, c, Some l1, l2)represents- (@ c l1) l2
- | CPatAtom of Libnames.qualid option
- | CPatOr of cases_pattern_expr list
- | CPatNotation of notation_with_optional_scope option * notation * cases_pattern_notation_substitution * cases_pattern_expr list(*- CPatNotation (_, n, l1 ,l2) represents (notation n applied with substitution l1) applied to arguments l2 *)
- | CPatPrim of prim_token
- | CPatRecord of (Libnames.qualid * cases_pattern_expr) list
- | CPatDelimiters of delimiter_depth * string * cases_pattern_expr
- | CPatCast of cases_pattern_expr * constr_expr
constr_expr is the abstract syntax tree produced by the parser
and cases_pattern_expr = cases_pattern_expr_r CAst.tand kinded_cases_pattern_expr = cases_pattern_expr * Glob_term.binding_kindand cases_pattern_notation_substitution =
  cases_pattern_expr list
  * cases_pattern_expr list list
  * kinded_cases_pattern_expr listand constr_expr_r = - | CRef of Libnames.qualid * instance_expr option
- | CFix of Names.lident * fix_expr list
- | CCoFix of Names.lident * cofix_expr list
- | CProdN of local_binder_expr list * constr_expr
- | CLambdaN of local_binder_expr list * constr_expr
- | CLetIn of Names.lname * constr_expr * constr_expr option * constr_expr
- | CAppExpl of Libnames.qualid * instance_expr option * constr_expr list
- | CApp of constr_expr * (constr_expr * explicitation CAst.t option) list
- | CProj of explicit_flag * Libnames.qualid * instance_expr option * (constr_expr * explicitation CAst.t option) list * constr_expr
- | CRecord of (Libnames.qualid * constr_expr) list
- | CCases of Constr.case_style * constr_expr option * case_expr list * branch_expr list
- | CLetTuple of Names.lname list * Names.lname option * constr_expr option * constr_expr * constr_expr
- | CIf of constr_expr * Names.lname option * constr_expr option * constr_expr * constr_expr
- | CHole of Evar_kinds.glob_evar_kind option
- | CGenarg of Genarg.raw_generic_argument
- | CGenargGlob of Genarg.glob_generic_argument
- | CPatVar of Pattern.patvar
- | CEvar of Glob_term.existential_name CAst.t * (Names.lident * constr_expr) list
- | CSort of sort_expr
- | CCast of constr_expr * Constr.cast_kind option * constr_expr
- | CNotation of notation_with_optional_scope option * notation * constr_notation_substitution
- | CGeneralization of Glob_term.binding_kind * constr_expr
- | CPrim of prim_token
- | CDelimiters of delimiter_depth * string * constr_expr
- | CArray of instance_expr option * constr_expr array * constr_expr * constr_expr
and constr_expr = constr_expr_r CAst.tand case_expr = constr_expr * Names.lname option * cases_pattern_expr optionand branch_expr = (cases_pattern_expr list list * constr_expr) CAst.tand fix_expr =
  Names.lident
  * relevance_info_expr
  * recursion_order_expr option
  * local_binder_expr list
  * constr_expr
  * constr_exprand cofix_expr =
  Names.lident
  * relevance_info_expr
  * local_binder_expr list
  * constr_expr
  * constr_exprand recursion_order_expr_r = - | CStructRec of Names.lident
- | CWfRec of Names.lident * constr_expr
- | CMeasureRec of Names.lident option * constr_expr * constr_expr option(*- argument, measure, relation *)
and recursion_order_expr = recursion_order_expr_r CAst.tand local_binder_expr = - | CLocalAssum of Names.lname list * relevance_info_expr * binder_kind * constr_expr
- | CLocalDef of Names.lname * relevance_info_expr * constr_expr * constr_expr option
- | CLocalPattern of cases_pattern_expr
and constr_notation_substitution =
  constr_expr list
  * constr_expr list list
  * kinded_cases_pattern_expr list
  * local_binder_expr list listtype constr_pattern_expr = constr_exprConcrete syntax for modules and module types
type with_declaration_ast = - | CWith_Module of Names.Id.t list CAst.t * Libnames.qualid
- | CWith_Definition of Names.Id.t list CAst.t * universe_decl_expr option * constr_expr
type module_ast_r = - | CMident of Libnames.qualid
- | CMapply of module_ast * Libnames.qualid
- | CMwith of module_ast * with_declaration_ast
and module_ast = module_ast_r CAst.t sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
  On This Page