X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fbasic_2%2Fetc_new%2Flstas%2Flstas_lstas.etc;h=aefaedd94605aa7a4526118f56fd7c89337b4939;hb=09b4420070d6a71990e16211e499b51dbb0742cb;hp=0f1c9cb31f217756312502fce3c2a4ba98fd7932;hpb=e9f96fa56226dfd74de214c89d827de0c5018ac7;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/basic_2/etc_new/lstas/lstas_lstas.etc b/matita/matita/contribs/lambdadelta/basic_2/etc_new/lstas/lstas_lstas.etc index 0f1c9cb31..aefaedd94 100644 --- a/matita/matita/contribs/lambdadelta/basic_2/etc_new/lstas/lstas_lstas.etc +++ b/matita/matita/contribs/lambdadelta/basic_2/etc_new/lstas/lstas_lstas.etc @@ -21,7 +21,7 @@ include "basic_2/unfold/lstas_lift.ma". theorem lstas_trans: ∀h,G,L,T1,T,d1. ⦃G, L⦄ ⊢ T1 •*[h, d1] T → ∀T2,d2. ⦃G, L⦄ ⊢ T •*[h, d2] T2 → ⦃G, L⦄ ⊢ T1 •*[h, d1+d2] T2. #h #G #L #T1 #T #d1 #H elim H -G -L -T1 -T -d1 -[ #G #L #d1 #k #X #d2 #H >(lstas_inv_sort1 … H) -X +[ #G #L #d1 #s #X #d2 #H >(lstas_inv_sort1 … H) -X (lstas_inv_sort1 … H) -X // +[ #G #L #d #s #X #H >(lstas_inv_sort1 … H) -X // | #G #L #K #V #V1 #U1 #i #d #HLK #_ #HVU1 #IHV1 #X #H elim (lstas_inv_lref1 … H) -H * #K0 #V0 #W0 [3: #d0 ] #HLK0 @@ -108,7 +108,7 @@ theorem lstas_conf_le: ∀h,G,L,T,U1,d1. ⦃G, L⦄ ⊢ T •*[h, d1] U1 → ∀U2,d2. d1 ≤ d2 → ⦃G, L⦄ ⊢ T •*[h, d2] U2 → ⦃G, L⦄ ⊢ U1 •*[h, d2-d1] U2. #h #G #L #T #U1 #d1 #HTU1 #U2 #d2 #Hd12 ->(plus_minus_m_m … Hd12) in ⊢ (%→?); -Hd12 >commutative_plus #H +>(plus_minus_k_k … Hd12) in ⊢ (%→?); -Hd12 >commutative_plus #H elim (lstas_split … H) -H #U #HTU >(lstas_mono … HTU … HTU1) -T // qed-. @@ -118,7 +118,7 @@ theorem lstas_conf: ∀h,G,L,T0,T1,d1. ⦃G, L⦄ ⊢ T0 •*[h, d1] T1 → ∃∃T. ⦃G, L⦄ ⊢ T1 •*[h, d2] T & ⦃G, L⦄ ⊢ T2 •*[h, d1] T. #h #G #L #T0 #T1 #d1 #HT01 #T2 #d2 #HT02 elim (lstas_lstas … HT01 (d1+d2)) #T #HT0 -lapply (lstas_conf_le … HT01 … HT0) // -HT01