X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambda_delta%2Fbasic_2%2Funfold%2Fthin.ma;h=c86d9b16066cd256315e5faf7fe9bca32f1813f5;hb=69644bb333b2862a5ff2ff434df8830e854e3385;hp=0b4da98f9532e57c16a84e7125c70cbe22df7d0f;hpb=913512bbc9202f2109d53acd43dc8c0270b17184;p=helm.git diff --git a/matita/matita/contribs/lambda_delta/basic_2/unfold/thin.ma b/matita/matita/contribs/lambda_delta/basic_2/unfold/thin.ma index 0b4da98f9..c86d9b160 100644 --- a/matita/matita/contribs/lambda_delta/basic_2/unfold/thin.ma +++ b/matita/matita/contribs/lambda_delta/basic_2/unfold/thin.ma @@ -14,12 +14,24 @@ include "basic_2/unfold/ltpss.ma". -(* DELIFT ON LOCAL ENVIRONMENTS ********************************************) +(* BASIC LOCAL ENVIRONMENT THINNING *****************************************) definition thin: nat → nat → relation lenv ≝ - λd,e,L1,L2. ∃∃L. L1 [d, e] ▶* L & ⇩[d, e] L ≡ L2. + λd,e,L1,L2. ∃∃L. L1 ▶* [d, e] L & ⇩[d, e] L ≡ L2. -interpretation "delift (local environment)" +interpretation "basic thinning (local environment)" 'TSubst L1 d e L2 = (thin d e L1 L2). (* Basic properties *********************************************************) + +lemma ldrop_thin: ∀L1,L2,d,e. ⇩[d, e] L1 ≡ L2 → L1 ▼*[d, e] ≡ L2. +/2 width=3/ qed. + +(* Basic inversion lemmas ***************************************************) + +lemma thin_inv_thin1: ∀I,K1,V1,L2,e. K1. ⓑ{I} V1 ▼*[0, e] ≡ L2 → 0 < e → + K1 ▼*[0, e - 1] ≡ L2. +#I #K1 #V1 #L2 #e * #X #HK1 #HL2 #e +elim (ltpss_inv_tpss21 … HK1 ?) -HK1 // #K #V #HK1 #_ #H destruct +lapply (ldrop_inv_ldrop1 … HL2 ?) -HL2 // /2 width=3/ +qed-.