]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambda_delta/basic_2/notation.ma
- lambda_delta: bug fix in static type assignment
[helm.git] / matita / matita / contribs / lambda_delta / basic_2 / notation.ma
index 06d7d9ed37e8bfa31ffaade0cd5a3f20df321b7e..9d0c9e34bcc085c3ded6ad2ad915ce493aeea344 100644 (file)
@@ -150,10 +150,6 @@ notation "hvbox( L ⊢ break ⌘ [ T ] ≡ break k )"
    non associative with precedence 45
    for @{ 'ICM $L $T $k }.
 
-notation "hvbox( T1 break [ d , break e ] ▶ break T2 )"
-   non associative with precedence 45
-   for @{ 'PSubst $T1 $d $e $T2 }.
-
 notation "hvbox( L ⊢ break term 90 T1 break [ d , break e ] ▶ break T2 )"
    non associative with precedence 45
    for @{ 'PSubst $L $T1 $d $e $T2 }.
@@ -184,6 +180,10 @@ notation "hvbox( L ⊢ break term 90 T1 break [ d , break e ] ▶* break T2 )"
    non associative with precedence 45
    for @{ 'PSubstStar $L $T1 $d $e $T2 }.
 
+notation "hvbox( L ⊢ break term 90 T1 break [ d , break e ] ▶▶* break T2 )"
+   non associative with precedence 45
+   for @{ 'PSubstStarAlt $L $T1 $d $e $T2 }.
+
 notation "hvbox( T1 break [ d , break e ] ≡ break T2 )"
    non associative with precedence 45
    for @{ 'TSubst $T1 $d $e $T2 }.
@@ -192,7 +192,15 @@ notation "hvbox( L ⊢ break term 90 T1 break [ d , break e ] ≡ break T2 )"
    non associative with precedence 45
    for @{ 'TSubst $L $T1 $d $e $T2 }.
 
-(* Static Typing ************************************************************)
+notation "hvbox( T1 break [ d , break e ] ≡≡ break term 46 T2 )"
+   non associative with precedence 45
+   for @{ 'TSubstAlt $T1 $d $e $T2 }.
+
+notation "hvbox( L ⊢ break term 90 T1 break [ d , break e ] ≡≡ break term 46 T2 )"
+   non associative with precedence 45
+   for @{ 'TSubstAlt $L $T1 $d $e $T2 }.
+
+(* Static typing ************************************************************)
 
 notation "hvbox( L ⊢ break term 90 T ÷ break A )"
    non associative with precedence 45
@@ -202,6 +210,16 @@ notation "hvbox( T1 ÷ ⊑ break T2 )"
    non associative with precedence 45
    for @{ 'CrSubEqA $T1 $T2 }.
 
+notation "hvbox( ⦃ h , break L ⦄ ⊢ break term 90 T1 • break T2 )"
+   non associative with precedence 45
+   for @{ 'StaticType $h $L $T1 $T2 }.
+
+(* Unwind *******************************************************************)
+
+notation "hvbox( ⦃ h , break L ⦄ ⊢ break term 90 T1 •* break T2 )"
+   non associative with precedence 45
+   for @{ 'StaticTypeStar $h $L $T1 $T2 }.
+
 (* Reducibility *************************************************************)
 
 notation "hvbox( 𝐑 [ T ] )"
@@ -321,3 +339,13 @@ notation "hvbox( L ⊢ break term 90 T1 ⬌* break T2 )"
 notation "hvbox( T1 ⊢ ⬌* break T2 )"
    non associative with precedence 45
    for @{ 'CPConvStar $T1 $T2 }.
+
+(* Dynamic typing ***********************************************************)
+
+notation "hvbox( ⦃ h , break L ⦄ ⊢ break term 90 T1 : break T2 )"
+   non associative with precedence 45
+   for @{ 'NativeType $h $L $T1 $T2 }.
+
+notation "hvbox( h ⊢ break term 90 L1 : ⊑ break L2 )"
+   non associative with precedence 45
+   for @{ 'CrSubEqN $h $L1 $L2 }.