]> matita.cs.unibo.it Git - helm.git/blob - matita/matita/contribs/lambdadelta/basic_2/etc_new/cpx/cpx_drops.etc
- first results on cpx (dericed from those on cpg)
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / etc_new / cpx / cpx_drops.etc
1 lemma cpx_delift: ∀h,I,G,K,V,T1,L,l. ⬇[l] L ≡ (K.ⓑ{I}V) →
2                   ∃∃T2,T. ⦃G, L⦄ ⊢ T1 ➡[h] T2 & ⬆[l, 1] T ≡ T2.
3 #h #o #I #G #K #V #T1 elim T1 -T1
4 [ * #i #L #l /2 width=4 by cpx_atom, lift_sort, lift_gref, ex2_2_intro/
5   elim (lt_or_eq_or_gt i l) #Hil [1,3: /4 width=4 by cpx_atom,
6 lift_lref_ge_minus, lift_lref_lt, ylt_inj, yle_inj, ex2_2_intro/ ]
7   destruct
8   elim (lift_total V 0 (i+1)) #W #HVW
9   elim (lift_split … HVW i i) /3 width=7 by cpx_delta, ex2_2_intro/
10 | * [ #a ] #I #W1 #U1 #IHW1 #IHU1 #L #l #HLK
11   elim (IHW1 … HLK) -IHW1 #W2 #W #HW12 #HW2
12   [ elim (IHU1 (L. ⓑ{I} W1) (l+1)) -IHU1 /3 width=9 by cpx_bind,
13 drop_drop, lift_bind, ex2_2_intro/
14   | elim (IHU1 … HLK) -IHU1 -HLK /3 width=8 by cpx_flat, lift_flat,
15 ex2_2_intro/
16   ]
17 ]
18 qed-.