]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/notation.ma
- new extendedd beta-reductum involving native type annotation
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / notation.ma
index c8c98ecfc22bc870372c3dc671784f4bf1e20573..140086abb50e6ff15d93387c6d1be1c930de6058 100644 (file)
@@ -154,6 +154,10 @@ notation "hvbox( ⦃ term 46 L1, break term 46 T1 ⦄ ⊃⸮ break ⦃ term 46 L
    non associative with precedence 45
    for @{ 'SupTermOpt $L1 $T1 $L2 $T2 }.
 
+notation "hvbox( ⦃ term 46 L1, break term 46 T1 ⦄ ⊃⊃⸮ break ⦃ term 46 L2 , break term 46 T2 ⦄ )"
+   non associative with precedence 45
+   for @{ 'SupTermOptAlt $L1 $T1 $L2 $T2 }.
+
 notation "hvbox( L ⊢ break ⌘ ⦃ term 46 T ⦄ ≡ break term 46 k )"
    non associative with precedence 45
    for @{ 'ICM $L $T $k }.
@@ -186,7 +190,7 @@ notation "hvbox( ⦃ term 46 L1, break term 46 T1 ⦄ ⊃ * break ⦃ term 46 L2
 
 notation "hvbox( L1 ⊑ break term 46 L2 )"
    non associative with precedence 45
-   for @{ 'SubEq $L1 $L2 }.
+   for @{ 'CrSubEq $L1 $L2 }.
 
 notation "hvbox( L ⊢ break term 46 T1 ▶* break term 46 T2 )"
    non associative with precedence 45
@@ -238,18 +242,30 @@ notation "hvbox( T1 ⊢ ➤ * break term 46 T2 )"
 
 (* Reduction ****************************************************************)
 
-notation "hvbox( L ⊢ break 𝐑 ⦃ term 46 T ⦄ )"
+notation "hvbox( L ⊢ 𝐑 break ⦃ term 46 T ⦄ )"
    non associative with precedence 45
    for @{ 'Reducible $L $T }.
 
-notation "hvbox( L ⊢ break 𝐈 ⦃ term 46 T ⦄ )"
+notation "hvbox( ⦃ term 46 h, break term 46 L ⦄ ⊢ 𝐑 break [ term 46 g ] break ⦃ term 46 T ⦄ )"
+   non associative with precedence 45
+   for @{ 'Reducible $h $g $L $T }.
+
+notation "hvbox( L ⊢ 𝐈 break ⦃ term 46 T ⦄ )"
    non associative with precedence 45
    for @{ 'NotReducible $L $T }.
 
-notation "hvbox( L ⊢ break 𝐍 ⦃ term 46 T ⦄ )"
+notation "hvbox( ⦃ term 46 h, break term 46 L ⦄ ⊢ 𝐈 break [ term 46 g ] break ⦃ term 46 T ⦄ )"
+   non associative with precedence 45
+   for @{ 'NotReducible $h $g $L $T }.
+
+notation "hvbox( L ⊢ 𝐍 break ⦃ term 46 T ⦄ )"
    non associative with precedence 45
    for @{ 'Normal $L $T }.
 
+notation "hvbox( ⦃ term 46 h, break term 46 L ⦄ ⊢ 𝐍 break [ term 46 g ] break ⦃ term 46 T ⦄ )"
+   non associative with precedence 45
+   for @{ 'Normal $h $g $L $T }.
+
 notation "hvbox( L ⊢ break term 46 T1 ➡ break term 46 T2 )"
    non associative with precedence 45
    for @{ 'PRed $L $T1 $T2 }.
@@ -268,33 +284,45 @@ notation "hvbox( ⦃ term 46 h, break term 46 L1 ⦄ ⊢ ➡ break [ term 46 g ]
 
 (* Computation **************************************************************)
 
+notation "hvbox( ⦃ term 46 L, break term 46 T ⦄ ϵ break [ term 46 R ] break 〚term 46  A 〛 )"
+   non associative with precedence 45
+   for @{ 'InEInt $R $L $T $A }.
+
+notation "hvbox( T1 ⊑ break [ term 46 R ] break term 46 T2 )"
+   non associative with precedence 45
+   for @{ 'CrSubEq $T1 $R $T2 }.
+
+notation "hvbox( L1 ⓝ ⊑ break term 46 L2 )"
+   non associative with precedence 45
+   for @{ 'CrSubEqT $L1 $L2 }.
+
 notation "hvbox( L ⊢ break term 46 T1 ➡ * break term 46 T2 )"
    non associative with precedence 45
    for @{ 'PRedStar $L $T1 $T2 }.
 
-notation "hvbox( L1 ⊢ ➡* break term 46 L2 )"
+notation "hvbox( ⦃ term 46 h, break term 46 L ⦄ ⊢ break term 46 T1 ➡ * break [ term 46 g ] break term 46 T2 )"
    non associative with precedence 45
-   for @{ 'PRedSnStar $L1 $L2 }.
+   for @{ 'PRedStar $h $g $L $T1 $T2 }.
 
-notation "hvbox( L1 ⊢ ➡* break term 46 L2 )"
+notation "hvbox( L1 ⊢ ➡* break term 46 L2 )"
    non associative with precedence 45
-   for @{ 'PRedSnStarAlt $L1 $L2 }.
+   for @{ 'PRedSnStar $L1 $L2 }.
 
-notation "hvbox( L ⊢ break term 46 T1 ➡ * break 𝐍 ⦃ term 46 T2 ⦄ )"
+notation "hvbox( ⦃ term 46 h, break term 46 L1 ⦄ ⊢ ➡ * break [ term 46 g ] break term 46 L2 )"
    non associative with precedence 45
-   for @{ 'PEval $L $T1 $T2 }.
+   for @{ 'PRedSnStar $h $g $L1 $L2 }.
 
-notation "hvbox( L ⊢ ⬊ * break term 46 T )"
+notation "hvbox( L1 ⊢ ➡ ➡ * break term 46 L2 )"
    non associative with precedence 45
-   for @{ 'SN $L $T }.
+   for @{ 'PRedSnStarAlt $L1 $L2 }.
 
-notation "hvbox( L ⊢ ⬊ ⬊ * break term 46 T )"
+notation "hvbox( ⦃ term 46 h, break term 46 L1 ⦄ ⊢ ➡ ➡ * break [ term 46 g ] break term 46 L2 )"
    non associative with precedence 45
-   for @{ 'SNAlt $L $T }.
+   for @{ 'PRedSnStarAlt $h $g $L1 $L2 }.
 
-notation "hvbox( ⦃ term 46 h, break term 46 L ⦄ ⊢ break term 46 T1 ➡ * break [ term 46 g ] break term 46 T2 )"
+notation "hvbox( ⦃ term 46 h , break term 46 L ⦄ ⊢ break term 46 T1 • * ➡ * break [ term 46 g ] break term 46 T2 )"
    non associative with precedence 45
-   for @{ 'PRedStar $h $g $L $T1 $T2 }.
+   for @{ 'DecomposedPRedStar $h $g $L $T1 $T2 }.
 
 notation "hvbox( ⦃ term 46 h, break term 46 L ⦄ ⊢ ⬊ * break [ term 46 g ] break term 46 T )"
    non associative with precedence 45
@@ -304,21 +332,13 @@ notation "hvbox( ⦃ term 46 h, break term 46 L ⦄ ⊢ ⬊ ⬊ * break [ term 4
    non associative with precedence 45
    for @{ 'SNAlt $h $g $L $T }.
 
-notation "hvbox( ⦃ term 46 L, break term 46 T ⦄ ϵ break [ term 46 R ] break 〚term 46  A 〛 )"
-   non associative with precedence 45
-   for @{ 'InEInt $R $L $T $A }.
-
-notation "hvbox( T1 ⊑ break [ term 46 R ] break term 46 T2 )"
-   non associative with precedence 45
-   for @{ 'CrSubEq $T1 $R $T2 }.
-
-notation "hvbox( ⦃ term 46 h , break term 46 L ⦄ ⊢ break term 46 T1 • * ➡ * break [ term 46 g ] break term 46 T2 )"
+notation "hvbox( L ⊢ break term 46 T1 ➡ * break 𝐍 ⦃ term 46 T2 ⦄ )"
    non associative with precedence 45
-   for @{ 'DecomposedXPRedStar $h $g $L $T1 $T2 }.
+   for @{ 'PEval $L $T1 $T2 }.
 
-notation "hvbox( ⦃ term 46 h , break term 46 L ⦄ ⊢ • * ⬊ * break [ term 46 g ] break term 46 T2 )"
+notation "hvbox( ⦃ term 46 h, break term 46 L ⦄ ⊢ break term 46 T1 ➡ * break [ term 46 g ] break 𝐍 ⦃ term 46 T2 ⦄ )"
    non associative with precedence 45
-   for @{ 'DecomposedXSN $h $g $L $T }.
+   for @{ 'PEval $h $g $L $T1 $T2 }.
 
 (* Conversion ***************************************************************)