2
한다고 가정 내가있어이 같은 :귀납적 유형에 대한 표기법을 사용하여 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 매뉴얼에서 'Reserved Notation'과 'where'를 찾으십시오. – ejgallego
@ejgallego 완벽하게 답변으로 넣어 주시면 받아 드리겠습니다! – jmite