]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/lib/lambda-delta/substitution/lift_defs.ma
- transitivity of parallel telescopic substitution closed!
[helm.git] / matita / matita / lib / lambda-delta / substitution / lift_defs.ma
index ff25453395ec6821bc489362ddcdcdc42b7f433f..71d438d6899debfa4b5e26f68c416b24ca1ac293 100644 (file)
@@ -41,6 +41,18 @@ lemma lift_refl: ∀T,d. ↑[d, 0] T ≡ T.
 ]
 qed.
 
+lemma lift_total: ∀T1,d,e. ∃T2. ↑[d,e] T1 ≡ T2.
+#T1 elim T1 -T1
+[ /2/
+| #i #d #e elim (lt_or_ge i d) /3/
+| * #I #V1 #T1 #IHV1 #IHT1 #d #e
+  elim (IHV1 d e) -IHV1 #V2 #HV12
+  [ elim (IHT1 (d+1) e) -IHT1 /3/
+  | elim (IHT1 d e) -IHT1 /3/
+  ]
+]
+qed.
+
 (* Basic inversion lemmas ***************************************************)
 
 lemma lift_inv_refl_aux: ∀d,e,T1,T2. ↑[d, e] T1 ≡ T2 → e = 0 → T1 = T2.