следующий код:Ошибка синтаксиса с `<` в Coq нотаций
Reserved Notation "g || t |- x < y" (at level 10).
Inductive SubtypeOf :
GammaEnv -> ThetaEnv -> UnsafeType -> UnsafeType -> Set :=
| SubRefl :
forall (gamma : GammaEnv) (theta : ThetaEnv) (u : UnsafeType) , gamma || theta |- u < u
where "g || t |- x < y" := (SubtypeOf g t x y).
дает следующее сообщение об ошибке:
Syntax error: '<' expected after [constr:operconstr level 200] (in [constr:operconstr])
я получаю подобную ошибку, если я использую <:
вместо <
.
Но этот код работает отлично:
Reserved Notation "g || t |- x << y" (at level 10).
Inductive SubtypeOf :
GammaEnv -> ThetaEnv -> UnsafeType -> UnsafeType -> Set :=
| SubRefl :
forall (gamma : GammaEnv) (theta : ThetaEnv) (u : UnsafeType) , gamma || theta |- u << u
where "g || t |- x << y" := (SubtypeOf g t x y).
Почему? Есть ли параметр приоритета, который можно изменить, чтобы разрешить <
или <:
в обозначении? Есть ли встроенный синтаксис, с которым я сталкиваюсь, и нужно отслеживать его при определении обозначений?