]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/delayed_updating/substitution/lift_eq.ma
update in delayed_updating
[helm.git] / matita / matita / contribs / lambdadelta / delayed_updating / substitution / lift_eq.ma
index 9e23b2cb9a5620d08bab1658735ea0cc32344dd6..41e6b59f0e6a0752ee449ab235bcaee875e170e1 100644 (file)
@@ -13,6 +13,8 @@
 (**************************************************************************)
 
 include "delayed_updating/substitution/lift.ma".
+include "ground/relocation/tr_uni_compose.ma".
+include "ground/relocation/tr_compose_compose.ma".
 include "ground/relocation/tr_compose_eq.ma".
 include "ground/relocation/tr_pn_eq.ma".
 
@@ -99,3 +101,22 @@ lemma lift_path_A_sn (f) (p):
 lemma lift_path_S_sn (f) (p):
       (š—¦ā——ā†‘[f]p) = ā†‘[f](š—¦ā——p).
 // qed.
+
+lemma lift_path_after (p) (f1) (f2):
+      ā†‘[f2]ā†‘[f1]p = ā†‘[f2āˆ˜f1]p.
+#p @(path_ind_lift ā€¦ p) -p // [ #n #l #p | #p ] #IH #f1 #f2
+[ <lift_path_d_lcons_sn <lift_path_d_lcons_sn
+  >(lift_path_eq_repl ā€¦ (tr_compose_assoc ā€¦)) //
+| <lift_path_L_sn <lift_path_L_sn <lift_path_L_sn
+  >tr_compose_push_bi //
+]
+qed.
+
+(* Advanced constructions with proj_rmap and stream_tls *********************)
+
+lemma lift_rmap_tls_d_dx (f) (p) (m) (n):
+      ā‡‚*[m+n]ā†‘[p]f ā‰— ā‡‚*[m]ā†‘[pā—–š—±n]f.
+#f #p #m #n
+<lift_rmap_d_dx >nrplus_inj_dx
+/2 width=1 by tr_tls_compose_uni_dx/
+qed.