-lemma dedropable_sn_TC: ∀R. dedropable_sn R → dedropable_sn (LTC … R).
-#R #HR #L1 #K1 #c #f #HLK1 #K2 #f1 #H elim H -K2
-[ #K2 #HK12 #f2 #Hf elim (HR … HLK1 … HK12 … Hf) -HR -K1 -f1
- /3 width=4 by inj, ex3_intro/
-| #K #K2 #_ #HK2 #IH #f2 #Hf elim (IH … Hf) -IH -K1
- #L #H1L1 #HLK #H2L1 elim (HR … HLK … HK2 … Hf) -HR -K -f1
- /3 width=6 by lreq_trans, step, ex3_intro/
-]
-qed-.
-(*
-lemma lreq_drop_trans_be: ∀L1,L2,l,k. L1 ⩬[l, k] L2 →
- ∀I,K2,W,c,i. ⬇[c, 0, i] L2 ≡ K2.ⓑ{I}W →
- l ≤ i → ∀k0. i + ⫯k0 = l + k →
- ∃∃K1. K1 ⩬[0, k0] K2 & ⬇[c, 0, i] L1 ≡ K1.ⓑ{I}W.
-#L1 #L2 #l #k #H elim H -L1 -L2 -l -k
-[ #l #k #J #K2 #W #c #i #H
- elim (drop_inv_atom1 … H) -H #H destruct
-| #I1 #I2 #L1 #L2 #V1 #V2 #_ #_ #J #K2 #W #c #i #_ #_ #k0
- >yplus_succ2 #H elim (ysucc_inv_O_dx … H)
-| #I #L1 #L2 #V #k #HL12 #IHL12 #J #K2 #W #c #i #H #_ >yplus_O1 #k0 #H0
- elim (drop_inv_O1_pair1 … H) -H * #Hi #HLK1 [ -IHL12 | -HL12 ]
- [ destruct
- /2 width=3 by drop_pair, ex2_intro/
- | lapply (ylt_inv_O1 … Hi) #H <H in H0; -H
- >yplus_succ1 #H lapply (ysucc_inv_inj … H) -H <(yplus_O1 k)
- #H0 elim (IHL12 … HLK1 … H0) -IHL12 -HLK1 -H0 //
- /3 width=3 by drop_drop_lt, ex2_intro/
- ]
-| #I1 #I2 #L1 #L2 #V1 #V2 #l #k #_ #IHL12 #J #K2 #W #c #i #HLK2 #Hli #k0
- elim (yle_inv_succ1 … Hli) -Hli
- #Hli #Hi <Hi >yplus_succ1 >yplus_succ1 #H lapply (ysucc_inv_inj … H) -H
- #H0 lapply (drop_inv_drop1_lt … HLK2 ?) -HLK2 /2 width=1 by ylt_O1/
- #HLK1 elim (IHL12 … HLK1 … H0) -IHL12 -HLK1 -H0
- /4 width=3 by ylt_O1, drop_drop_lt, ex2_intro/
-]
-qed-.