Предположим, что у меня есть что-то вроде этого:Могу ли я использовать обозначение для индуктивного типа для определения этого типа в Coq?
Inductive SubtypeOf :
Gamma -> UnsafeType -> Type -> Set :=
| SubRefl :
forall (gamma : GammaEnv) (u : UnsafeType)
, SubtypeOf gamma u u
| SubTrans :
forall (gamma : GammaEnv) (u1 u2 u3 : Type)
, SubtypeOf gamma u1 u2
-> SubtypeOf gamma u2 u3
-> SubtypeOf gamma u1 u3.
А обозначения, которые определены:
Notation "G |- x <: y " := (SubtypeOf G x y) (at level 50).
Есть ли способ, что я могу принести эти обозначения в область видимости для определения SubtypeOf
, так Я мог бы сделать что-то вроде этого:
Inductive SubtypeOf :
Gamma -> UnsafeType -> Type -> Set :=
| SubRefl :
forall (gamma : GammaEnv) (u : UnsafeType)
, gamma |- u <: u
| SubTrans :
forall (gamma : GammaEnv) (u1 u2 u3 : Type)
, gamma |- u1 <: u2
-> gamma |- u2 <: u3
-> gamma |- u1 <: u3.
Да, найдите «Зарезервированные обозначения» и «где» в руководстве Coq. – ejgallego
@ejgallego Perfect, поставьте это как ответ, и я соглашусь! – jmite