X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fbasic_2%2Fsubstitution%2Fcpy_nlift.ma;h=3a645072473619d7ca7cf66389a381c5e7f13009;hb=658c000ee2ea2da04cf29efc0acdaf16364fbf5e;hp=bcf52015d7d921bdc2a930df6c1cce0eea84e915;hpb=1994fe8e6355243652770f53a02db5fdf26915f0;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/basic_2/substitution/cpy_nlift.ma b/matita/matita/contribs/lambdadelta/basic_2/substitution/cpy_nlift.ma index bcf52015d..3a6450724 100644 --- a/matita/matita/contribs/lambdadelta/basic_2/substitution/cpy_nlift.ma +++ b/matita/matita/contribs/lambdadelta/basic_2/substitution/cpy_nlift.ma @@ -21,18 +21,18 @@ include "basic_2/substitution/cpy.ma". (* Inversion lemmas on negated relocation ***********************************) lemma cpy_fwd_nlift2_ge: ∀G,L,U1,U2,l,m. ⦃G, L⦄ ⊢ U1 ▶[l, m] U2 → - ∀i. l ≤ yinj i → (∀T2. ⬆[i, 1] T2 ≡ U2 → ⊥) → + ∀i. l ≤ i → (∀T2. ⬆[i, 1] T2 ≡ U2 → ⊥) → (∀T1. ⬆[i, 1] T1 ≡ U1 → ⊥) ∨ ∃∃I,K,W,j. l ≤ yinj j & j < i & ⬇[j]L ≡ K.ⓑ{I}W & - (∀V. ⬆[i-j-1, 1] V ≡ W → ⊥) & (∀T1. ⬆[j, 1] T1 ≡ U1 → ⊥). + (∀V. ⬆[⫰(i-j), 1] V ≡ W → ⊥) & (∀T1. ⬆[j, 1] T1 ≡ U1 → ⊥). #G #L #U1 #U2 #l #m #H elim H -G -L -U1 -U2 -l -m [ /3 width=2 by or_introl/ | #I #G #L #K #V #W #j #l #m #Hlj #Hjlm #HLK #HVW #i #Hli #HnW - elim (lt_or_ge j i) #Hij + elim (ylt_split j i) #Hij [ @or_intror @(ex5_4_intro … HLK) // -HLK - [ #X #HXV elim (lift_trans_le … HXV … HVW ?) -V // - #Y #HXY >minus_plus yplus_SO2 >ymax_pre_sn /2 width=2 by ylt_fwd_le_succ1/ + | -HnW /3 width=7 by lift_inv_lref2_be, ylt_inj/ ] | elim (lift_split … HVW i j) -HVW // #X #_ #H elim HnW -HnW // @@ -44,13 +44,12 @@ lemma cpy_fwd_nlift2_ge: ∀G,L,U1,U2,l,m. ⦃G, L⦄ ⊢ U1 ▶[l, m] U2 → ] | #HnU2 elim (IHU12 … HnU2) -IHU12 -HnU2 -IHW12 /2 width=1 by yle_succ/ [ /4 width=9 by nlift_bind_dx, or_introl/ - | * #J #K #W #j #Hlj #Hji #HLK #HnW - elim (yle_inv_succ1 … Hlj) -Hlj #Hlj #Hj - lapply (ylt_O … Hj) -Hj #Hj - lapply (drop_inv_drop1_lt … HLK ?) // -HLK #HLK - >(plus_minus_m_m j 1) in ⊢ (%→?); [2: /3 width=3 by yle_trans, yle_inv_inj/ ] - #HnU1 yminus_succ #Hji #HLK #HnW + lapply (drop_inv_drop1_lt … HLK ?) /2 width=1 by ylt_O/ -HLK #HLK +