(* Properties concerning basic term relocation ******************************)
(* Basic_1: was: lift1_xhg (right to left) *)
-lemma lifts_lift_trans_le: â\88\80T1,T,des. â\87§*[des] T1 â\89¡ T â\86\92 â\88\80T2. â\87§[0, 1] T ≡ T2 →
- â\88\83â\88\83T0. â\87§[0, 1] T1 â\89¡ T0 & â\87§*[des + 1] T0 ≡ T2.
+lemma lifts_lift_trans_le: â\88\80T1,T,des. â¬\86*[des] T1 â\89¡ T â\86\92 â\88\80T2. â¬\86[0, 1] T ≡ T2 →
+ â\88\83â\88\83T0. â¬\86[0, 1] T1 â\89¡ T0 & â¬\86*[des + 1] T0 ≡ T2.
#T1 #T #des #H elim H -T1 -T -des
[ /2 width=3/
| #T1 #T3 #T #des #d #e #HT13 #_ #IHT13 #T2 #HT2
(* Basic_1: was: lift1_free (right to left) *)
lemma lifts_lift_trans: ∀des,i,i0. @⦃i, des⦄ ≡ i0 →
∀des0. des + 1 ▭ i + 1 ≡ des0 + 1 →
- â\88\80T1,T0. â\87§*[des0] T1 ≡ T0 →
- â\88\80T2. â\87§[O, i0 + 1] T0 ≡ T2 →
- â\88\83â\88\83T. â\87§[0, i + 1] T1 â\89¡ T & â\87§*[des] T ≡ T2.
+ â\88\80T1,T0. â¬\86*[des0] T1 ≡ T0 →
+ â\88\80T2. â¬\86[O, i0 + 1] T0 ≡ T2 →
+ â\88\83â\88\83T. â¬\86[0, i + 1] T1 â\89¡ T & â¬\86*[des] T ≡ T2.
#des elim des -des normalize
[ #i #x #H1 #des0 #H2 #T1 #T0 #HT10 #T2
<(at_inv_nil … H1) -x #HT02