@(subset_eq_trans ⦠(lift_unwind2_term_after ā¦))
@unwind2_term_eq_repl_sn
(* Note: crux of the proof begins *)
- @nstream_eq_inv_ext #m
- <tr_compose_pap <tr_compose_pap
- <tr_uni_pap <tr_uni_pap <tr_pap_plus
>list_append_rcons_sn in H1n; <reverse_append #H1n
- lapply (unwind2_rmap_append_pap_closed f ⦠H1n) #H2n
- >nrplus_inj_dx in ⢠(???%); <H2n -H2n
- lapply (tls_unwind2_rmap_append_closed f ⦠H1n) -H1n #H2n
- <(tr_pap_eq_repl ⦠H2n) -H2n //
+ @(stream_eq_trans ⦠(tr_compose_uni_dx ā¦))
+ @tr_compose_eq_repl
+ [ <unwind2_rmap_append_pap_closed //
+ | >unwind2_rmap_A_sn <reverse_rcons
+ /2 width=1 by tls_unwind2_rmap_append_closed/
+ ]
(* Note: crux of the proof ends *)
| //
| /2 width=2 by ex_intro/
@(subset_eq_canc_dx ⦠(unwind2_term_after_lift ā¦))
@unwind2_term_eq_repl_sn
(* Note: crux of the proof begins *)
- @nstream_eq_inv_ext #m
- <tr_compose_pap <tr_compose_pap
- <tr_uni_pap <tr_uni_pap <tr_pap_plus
>list_append_rcons_sn in H1n; <reverse_append #H1n
- lapply (unwind2_rmap_append_pap_closed f ⦠H1n) #H2n
- >nrplus_inj_dx in ⢠(???%); <H2n -H2n
- lapply (tls_unwind2_rmap_append_closed f ⦠H1n) -H1n #H2n
- <(tr_pap_eq_repl ⦠H2n) -H2n //
+ @(stream_eq_trans ⦠(tr_compose_uni_dx ā¦))
+ @tr_compose_eq_repl
+ [ <unwind2_rmap_append_pap_closed //
+ | >unwind2_rmap_A_sn <reverse_rcons
+ /2 width=1 by tls_unwind2_rmap_append_closed/
+ ]
(* Note: crux of the proof ends *)
| //
| /2 width=2 by ex_intro/
include "delayed_updating/substitution/lift_gen.ma".
include "ground/relocation/tr_id_tls.ma".
-(* LIFT FOR RELOCATION MAP *************************************************)
+(* LIFT FOR RELOCATION MAP **************************************************)
(* Constructions with proj_rmap and tr_id ***********************************)
--- /dev/null
+(**************************************************************************)
+(* ___ *)
+(* ||M|| *)
+(* ||A|| A project by Andrea Asperti *)
+(* ||T|| *)
+(* ||I|| Developers: *)
+(* ||T|| The HELM team. *)
+(* ||A|| http://helm.cs.unibo.it *)
+(* \ / *)
+(* \ / This file is distributed under the terms of the *)
+(* v GNU General Public License Version 2 *)
+(* *)
+(**************************************************************************)
+
+include "delayed_updating/substitution/lift_gen.ma".
+include "delayed_updating/substitution/prelift_rmap.ma".
+
+(* LIFT FOR RELOCATION MAP **************************************************)
+
+(* Constructions with prelift_rmap ******************************************)
+
+lemma lift_rmap_lcons_prelift (f) (p) (l):
+ ā[p]ā[l]f = ā[lāp]f.
+#f #p * [ #n ] //
+qed.
+
+lemma lift_rmap_rcons_prelift (f) (p) (l):
+ ā[l]ā[p]f = ā[pāl]f.
+#f #p * [ #n ] //
+qed.