X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambda_delta%2FBasic_2%2Fsubstitution%2Fldrop_ldrop.ma;h=90f724ad36f93a19d2570ccbc88d62eae1bae8e0;hb=011cf6478141e69822a5b40933f2444d0522532f;hp=e9b92d9e3e0eb3a16fe1218d2f3248e1ec7f6dc9;hpb=0aa60d67f17b528b896e05bbd01038cbc195f69d;p=helm.git diff --git a/matita/matita/contribs/lambda_delta/Basic_2/substitution/ldrop_ldrop.ma b/matita/matita/contribs/lambda_delta/Basic_2/substitution/ldrop_ldrop.ma index e9b92d9e3..90f724ad3 100644 --- a/matita/matita/contribs/lambda_delta/Basic_2/substitution/ldrop_ldrop.ma +++ b/matita/matita/contribs/lambda_delta/Basic_2/substitution/ldrop_ldrop.ma @@ -19,9 +19,9 @@ include "Basic_2/substitution/ldrop.ma". (* Main properties **********************************************************) -(* Basic_1: was: ldrop_mono *) -theorem ldrop_mono: ∀d,e,L,L1. ⇓[d, e] L ≡ L1 → - ∀L2. ⇓[d, e] L ≡ L2 → L1 = L2. +(* Basic_1: was: drop_mono *) +theorem ldrop_mono: ∀d,e,L,L1. ⇩[d, e] L ≡ L1 → + ∀L2. ⇩[d, e] L ≡ L2 → L1 = L2. #d #e #L #L1 #H elim H -d -e -L -L1 [ #d #e #L2 #H >(ldrop_inv_atom1 … H) -L2 // @@ -36,10 +36,10 @@ theorem ldrop_mono: ∀d,e,L,L1. ⇓[d, e] L ≡ L1 → ] qed-. -(* Basic_1: was: ldrop_conf_ge *) -theorem ldrop_conf_ge: ∀d1,e1,L,L1. ⇓[d1, e1] L ≡ L1 → - ∀e2,L2. ⇓[0, e2] L ≡ L2 → d1 + e1 ≤ e2 → - ⇓[0, e2 - e1] L1 ≡ L2. +(* Basic_1: was: drop_conf_ge *) +theorem ldrop_conf_ge: ∀d1,e1,L,L1. ⇩[d1, e1] L ≡ L1 → + ∀e2,L2. ⇩[0, e2] L ≡ L2 → d1 + e1 ≤ e2 → + ⇩[0, e2 - e1] L1 ≡ L2. #d1 #e1 #L #L1 #H elim H -d1 -e1 -L -L1 [ #d #e #e2 #L2 #H >(ldrop_inv_atom1 … H) -L2 // @@ -55,12 +55,12 @@ theorem ldrop_conf_ge: ∀d1,e1,L,L1. ⇓[d1, e1] L ≡ L1 → ] qed. -(* Basic_1: was: ldrop_conf_lt *) -theorem ldrop_conf_lt: ∀d1,e1,L,L1. ⇓[d1, e1] L ≡ L1 → - ∀e2,K2,I,V2. ⇓[0, e2] L ≡ K2. 𝕓{I} V2 → +(* Basic_1: was: drop_conf_lt *) +theorem ldrop_conf_lt: ∀d1,e1,L,L1. ⇩[d1, e1] L ≡ L1 → + ∀e2,K2,I,V2. ⇩[0, e2] L ≡ K2. ⓑ{I} V2 → e2 < d1 → let d ≝ d1 - e2 - 1 in - ∃∃K1,V1. ⇓[0, e2] L1 ≡ K1. 𝕓{I} V1 & - ⇓[d, e1] K2 ≡ K1 & ⇑[d, e1] V1 ≡ V2. + ∃∃K1,V1. ⇩[0, e2] L1 ≡ K1. ⓑ{I} V1 & + ⇩[d, e1] K2 ≡ K1 & ⇧[d, e1] V1 ≡ V2. #d1 #e1 #L #L1 #H elim H -d1 -e1 -L -L1 [ #d #e #e2 #K2 #I #V2 #H lapply (ldrop_inv_atom1 … H) -H #H destruct @@ -77,10 +77,10 @@ theorem ldrop_conf_lt: ∀d1,e1,L,L1. ⇓[d1, e1] L ≡ L1 → ] qed. -(* Basic_1: was: ldrop_trans_le *) -theorem ldrop_trans_le: ∀d1,e1,L1,L. ⇓[d1, e1] L1 ≡ L → - ∀e2,L2. ⇓[0, e2] L ≡ L2 → e2 ≤ d1 → - ∃∃L0. ⇓[0, e2] L1 ≡ L0 & ⇓[d1 - e2, e1] L0 ≡ L2. +(* Basic_1: was: drop_trans_le *) +theorem ldrop_trans_le: ∀d1,e1,L1,L. ⇩[d1, e1] L1 ≡ L → + ∀e2,L2. ⇩[0, e2] L ≡ L2 → e2 ≤ d1 → + ∃∃L0. ⇩[0, e2] L1 ≡ L0 & ⇩[d1 - e2, e1] L0 ≡ L2. #d1 #e1 #L1 #L #H elim H -d1 -e1 -L1 -L [ #d #e #e2 #L2 #H >(ldrop_inv_atom1 … H) -L2 /2 width=3/ @@ -99,9 +99,9 @@ theorem ldrop_trans_le: ∀d1,e1,L1,L. ⇓[d1, e1] L1 ≡ L → ] qed. -(* Basic_1: was: ldrop_trans_ge *) -theorem ldrop_trans_ge: ∀d1,e1,L1,L. ⇓[d1, e1] L1 ≡ L → - ∀e2,L2. ⇓[0, e2] L ≡ L2 → d1 ≤ e2 → ⇓[0, e1 + e2] L1 ≡ L2. +(* Basic_1: was: drop_trans_ge *) +theorem ldrop_trans_ge: ∀d1,e1,L1,L. ⇩[d1, e1] L1 ≡ L → + ∀e2,L2. ⇩[0, e2] L ≡ L2 → d1 ≤ e2 → ⇩[0, e1 + e2] L1 ≡ L2. #d1 #e1 #L1 #L #H elim H -d1 -e1 -L1 -L [ #d #e #e2 #L2 #H >(ldrop_inv_atom1 … H) -H -L2 // @@ -116,11 +116,11 @@ theorem ldrop_trans_ge: ∀d1,e1,L1,L. ⇓[d1, e1] L1 ≡ L → qed. theorem ldrop_trans_ge_comm: ∀d1,e1,e2,L1,L2,L. - ⇓[d1, e1] L1 ≡ L → ⇓[0, e2] L ≡ L2 → d1 ≤ e2 → - ⇓[0, e2 + e1] L1 ≡ L2. + ⇩[d1, e1] L1 ≡ L → ⇩[0, e2] L ≡ L2 → d1 ≤ e2 → + ⇩[0, e2 + e1] L1 ≡ L2. #e1 #e1 #e2 >commutative_plus /2 width=5/ qed. -(* Basic_1: was: ldrop_conf_rev *) -axiom ldrop_div: ∀e1,L1,L. ⇓[0, e1] L1 ≡ L → ∀e2,L2. ⇓[0, e2] L2 ≡ L → - ∃∃L0. ⇓[0, e1] L0 ≡ L2 & ⇓[e1, e2] L0 ≡ L1. +(* Basic_1: was: drop_conf_rev *) +axiom ldrop_div: ∀e1,L1,L. ⇩[0, e1] L1 ≡ L → ∀e2,L2. ⇩[0, e2] L2 ≡ L → + ∃∃L0. ⇩[0, e1] L0 ≡ L2 & ⇩[e1, e2] L0 ≡ L1.