]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/static_2/static/lsuba.ma
update in ground_2, static_2, basic_2, apps_2, alpha_1
[helm.git] / matita / matita / contribs / lambdadelta / static_2 / static / lsuba.ma
index ce9a92392e7dc20d90b750d567aed0e20ee385c7..fd30febbfd87fad44df62d014812710f261653a0 100644 (file)
@@ -20,8 +20,8 @@ include "static_2/static/aaa.ma".
 
 inductive lsuba (G:genv): relation lenv ≝
 | lsuba_atom: lsuba G (⋆) (⋆)
-| lsuba_bind: ∀I,L1,L2. lsuba G L1 L2 → lsuba G (L1.ⓘ{I}) (L2.ⓘ{I})
-| lsuba_beta: â\88\80L1,L2,W,V,A. â¦\83G,L1â¦\84 â\8a¢ â\93\9dW.V â\81\9d A â\86\92 â¦\83G,L2â¦\84 ⊢ W ⁝ A →
+| lsuba_bind: ∀I,L1,L2. lsuba G L1 L2 → lsuba G (L1.ⓘ[I]) (L2.ⓘ[I])
+| lsuba_beta: â\88\80L1,L2,W,V,A. â\9dªG,L1â\9d« â\8a¢ â\93\9dW.V â\81\9d A â\86\92 â\9dªG,L2â\9d« ⊢ W ⁝ A →
               lsuba G L1 L2 → lsuba G (L1.ⓓⓝW.V) (L2.ⓛW)
 .
 
@@ -42,9 +42,9 @@ qed-.
 lemma lsuba_inv_atom1: ∀G,L2. G ⊢ ⋆ ⫃⁝ L2 → L2 = ⋆.
 /2 width=4 by lsuba_inv_atom1_aux/ qed-.
 
-fact lsuba_inv_bind1_aux: ∀G,L1,L2. G ⊢ L1 ⫃⁝ L2 → ∀I,K1. L1 = K1.ⓘ{I} →
-                          (∃∃K2. G ⊢ K1 ⫃⁝ K2 & L2 = K2.ⓘ{I}) ∨
-                          â\88\83â\88\83K2,W,V,A. â¦\83G,K1â¦\84 â\8a¢ â\93\9dW.V â\81\9d A & â¦\83G,K2â¦\84 ⊢ W ⁝ A &
+fact lsuba_inv_bind1_aux: ∀G,L1,L2. G ⊢ L1 ⫃⁝ L2 → ∀I,K1. L1 = K1.ⓘ[I] →
+                          (∃∃K2. G ⊢ K1 ⫃⁝ K2 & L2 = K2.ⓘ[I]) ∨
+                          â\88\83â\88\83K2,W,V,A. â\9dªG,K1â\9d« â\8a¢ â\93\9dW.V â\81\9d A & â\9dªG,K2â\9d« ⊢ W ⁝ A &
                                       G ⊢ K1 ⫃⁝ K2 & I = BPair Abbr (ⓝW.V) & L2 = K2.ⓛW.
 #G #L1 #L2 * -L1 -L2
 [ #J #K1 #H destruct
@@ -53,9 +53,9 @@ fact lsuba_inv_bind1_aux: ∀G,L1,L2. G ⊢ L1 ⫃⁝ L2 → ∀I,K1. L1 = K1.
 ]
 qed-.
 
-lemma lsuba_inv_bind1: ∀I,G,K1,L2. G ⊢ K1.ⓘ{I} ⫃⁝ L2 →
-                       (∃∃K2. G ⊢ K1 ⫃⁝ K2 & L2 = K2.ⓘ{I}) ∨
-                       â\88\83â\88\83K2,W,V,A. â¦\83G,K1â¦\84 â\8a¢ â\93\9dW.V â\81\9d A & â¦\83G,K2â¦\84 ⊢ W ⁝ A & G ⊢ K1 ⫃⁝ K2 &
+lemma lsuba_inv_bind1: ∀I,G,K1,L2. G ⊢ K1.ⓘ[I] ⫃⁝ L2 →
+                       (∃∃K2. G ⊢ K1 ⫃⁝ K2 & L2 = K2.ⓘ[I]) ∨
+                       â\88\83â\88\83K2,W,V,A. â\9dªG,K1â\9d« â\8a¢ â\93\9dW.V â\81\9d A & â\9dªG,K2â\9d« ⊢ W ⁝ A & G ⊢ K1 ⫃⁝ K2 &
                                    I = BPair Abbr (ⓝW.V) & L2 = K2.ⓛW.
 /2 width=3 by lsuba_inv_bind1_aux/ qed-.
 
@@ -70,9 +70,9 @@ qed-.
 lemma lsubc_inv_atom2: ∀G,L1. G ⊢ L1 ⫃⁝ ⋆ → L1 = ⋆.
 /2 width=4 by lsuba_inv_atom2_aux/ qed-.
 
-fact lsuba_inv_bind2_aux: ∀G,L1,L2. G ⊢ L1 ⫃⁝ L2 → ∀I,K2. L2 = K2.ⓘ{I} →
-                          (∃∃K1. G ⊢ K1 ⫃⁝ K2 & L1 = K1.ⓘ{I}) ∨
-                          â\88\83â\88\83K1,V,W,A. â¦\83G,K1â¦\84 â\8a¢ â\93\9dW.V â\81\9d A & â¦\83G,K2â¦\84 ⊢ W ⁝ A &
+fact lsuba_inv_bind2_aux: ∀G,L1,L2. G ⊢ L1 ⫃⁝ L2 → ∀I,K2. L2 = K2.ⓘ[I] →
+                          (∃∃K1. G ⊢ K1 ⫃⁝ K2 & L1 = K1.ⓘ[I]) ∨
+                          â\88\83â\88\83K1,V,W,A. â\9dªG,K1â\9d« â\8a¢ â\93\9dW.V â\81\9d A & â\9dªG,K2â\9d« ⊢ W ⁝ A &
                                        G ⊢ K1 ⫃⁝ K2 & I = BPair Abst W & L1 = K1.ⓓⓝW.V.
 #G #L1 #L2 * -L1 -L2
 [ #J #K2 #H destruct
@@ -81,9 +81,9 @@ fact lsuba_inv_bind2_aux: ∀G,L1,L2. G ⊢ L1 ⫃⁝ L2 → ∀I,K2. L2 = K2.
 ]
 qed-.
 
-lemma lsuba_inv_bind2: ∀I,G,L1,K2. G ⊢ L1 ⫃⁝ K2.ⓘ{I} →
-                       (∃∃K1. G ⊢ K1 ⫃⁝ K2 & L1 = K1.ⓘ{I}) ∨
-                       â\88\83â\88\83K1,V,W,A. â¦\83G,K1â¦\84 â\8a¢ â\93\9dW.V â\81\9d A & â¦\83G,K2â¦\84 ⊢ W ⁝ A & G ⊢ K1 ⫃⁝ K2 &
+lemma lsuba_inv_bind2: ∀I,G,L1,K2. G ⊢ L1 ⫃⁝ K2.ⓘ[I] →
+                       (∃∃K1. G ⊢ K1 ⫃⁝ K2 & L1 = K1.ⓘ[I]) ∨
+                       â\88\83â\88\83K1,V,W,A. â\9dªG,K1â\9d« â\8a¢ â\93\9dW.V â\81\9d A & â\9dªG,K2â\9d« ⊢ W ⁝ A & G ⊢ K1 ⫃⁝ K2 &
                                    I = BPair Abst W & L1 = K1.ⓓⓝW.V.
 /2 width=3 by lsuba_inv_bind2_aux/ qed-.