package coq-core
The Coq Proof Assistant -- Core Binaries and Tools
Install
Dune Dependency
Authors
Maintainers
Sources
coq-8.19.2.tar.gz
md5=5d1187d5e44ed0163f76fb12dabf012e
sha512=91bc81530fa4f6498961583ad51eac5001f139881788b88e360a866ad8e2a6e2c5bce86d1a580ab4cd4782bf49d48318767df82471ce33ba3ac143e5569ad33c
doc/coq-core.interp/Notation_ops/index.html
Module Notation_ops
Source
Constr default entries
Utilities about notation_constr
Source
val eq_notation_constr :
(Names.Id.t list * Names.Id.t list) ->
Notation_term.notation_constr ->
Notation_term.notation_constr ->
bool
Source
val strictly_finer_notation_constr :
(Names.Id.t list * Names.Id.t list) ->
Notation_term.notation_constr ->
Notation_term.notation_constr ->
bool
Tell if t1
is a strict refinement of t2
(this is a partial order and returning false
does not mean that t2
is finer than t1
)
Source
val strictly_finer_interpretation_than :
Notation_term.interpretation ->
Notation_term.interpretation ->
bool
Tell if a notation interpretation is strictly included in another one
Source
val finer_interpretation_than :
Notation_term.interpretation ->
Notation_term.interpretation ->
bool
Tell if a notation interpretation is included in another one
Substitution of kernel names in interpretation data
Source
val subst_interpretation :
Mod_subst.substitution ->
Notation_term.interpretation ->
Notation_term.interpretation
Name of the special identifier used to encode recursive notations
Translation back and forth between glob_constr
and notation_constr
Translate a glob_constr
into a notation given the list of variables bound by the notation; also interpret recursive patterns
Source
val notation_constr_of_glob_constr :
Notation_term.notation_interp_env ->
Glob_term.glob_constr ->
Notation_term.notation_constr * Notation_term.reversibility_status
Re-interpret a notation as a glob_constr
, taking care of binders
Source
type 'a binder_status_fun = {
no : 'a -> 'a;
restart_prod : 'a -> 'a;
restart_lambda : 'a -> 'a;
switch_prod : 'a -> 'a;
switch_lambda : 'a -> 'a;
slide : 'a -> 'a;
}
Source
val apply_cases_pattern :
?loc:Loc.t ->
((Names.Id.t list * Glob_term.cases_pattern_disjunction) * Names.Id.t) ->
Glob_term.glob_constr ->
Glob_term.glob_constr
Source
val glob_constr_of_notation_constr_with_binders :
?loc:Loc.t ->
('a ->
Names.Name.t ->
Glob_term.glob_constr option ->
'a
* ((Names.Id.t list * Glob_term.cases_pattern_disjunction) * Names.Id.t)
option
* Names.Name.t
* Glob_term.binding_kind
* Glob_term.glob_constr option) ->
('a -> Notation_term.notation_constr -> Glob_term.glob_constr) ->
?h:'a binder_status_fun ->
'a ->
Notation_term.notation_constr ->
Glob_term.glob_constr
Source
val glob_constr_of_notation_constr :
?loc:Loc.t ->
Notation_term.notation_constr ->
Glob_term.glob_constr
Source
val pr_notation_info :
(Glob_term.glob_constr -> Pp.t) ->
Constrexpr.notation_key ->
Notation_term.notation_constr ->
Pp.t
Matching a notation pattern against a glob_constr
match_notation_constr
matches a glob_constr
against a notation interpretation; raise No_match
if the matching fails
Source
val match_notation_constr :
print_univ:bool ->
'a Glob_term.glob_constr_g ->
vars:Names.Id.Set.t ->
Notation_term.interpretation ->
((Names.Id.Set.t * 'a Glob_term.glob_constr_g)
* Notation_term.extended_subscopes)
list
* ((Names.Id.Set.t * 'a Glob_term.glob_constr_g list)
* Notation_term.extended_subscopes)
list
* ((Names.Id.Set.t * 'a Glob_term.cases_pattern_disjunction_g)
* Notation_term.extended_subscopes)
list
* ((Names.Id.Set.t * 'a Glob_term.extended_glob_local_binder_g list)
* Notation_term.extended_subscopes)
list
Source
val match_notation_constr_cases_pattern :
'a Glob_term.cases_pattern_g ->
Notation_term.interpretation ->
(('a Glob_term.cases_pattern_g * Notation_term.extended_subscopes) list
* ('a Glob_term.cases_pattern_g list * Notation_term.extended_subscopes)
list
* ('a Glob_term.cases_pattern_g * Notation_term.extended_subscopes) list)
* (bool * int * 'a Glob_term.cases_pattern_g list)
Source
val match_notation_constr_ind_pattern :
Names.inductive ->
'a Glob_term.cases_pattern_g list ->
Notation_term.interpretation ->
(('a Glob_term.cases_pattern_g * Notation_term.extended_subscopes) list
* ('a Glob_term.cases_pattern_g list * Notation_term.extended_subscopes)
list
* ('a Glob_term.cases_pattern_g * Notation_term.extended_subscopes) list)
* (bool * int * 'a Glob_term.cases_pattern_g list)
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page