]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/delayed_updating/substitution/lift_structure.ma
update in delayed_updating
[helm.git] / matita / matita / contribs / lambdadelta / delayed_updating / substitution / lift_structure.ma
index 50b35e6547b781421dbc8a40f0c4a59d740fcd7e..903026e4dfd7167948257aa023b5274cf44a8ec3 100644 (file)
@@ -21,78 +21,39 @@ include "delayed_updating/substitution/lift_eq.ma".
 
 lemma lift_d_empty_dx (n) (p) (f):
       (āŠ—p)ā—–š—±āØ(ā†‘[pā—–š—±āØnā©]f)@āØnā©ā© = ā†‘[f](pā—–š—±āØnā©).
-#n #p elim p -p
-[| * [ #m * [| #l ]] [|*: #p ] #IH ] #f
-[ //
-| <list_cons_shift <list_cons_comm <list_cons_comm //
-| <lift_d_lcons_sn <lift_d_lcons_sn //
-| <lift_L_sn <lift_L_sn <lift_lcons <IH //
-| <lift_A_sn <lift_A_sn <lift_lcons <IH //
-| <lift_S_sn <lift_S_sn <lift_lcons <IH //
+#n #p @(path_ind_lift ā€¦ p) -p // [ #m #l #p |*: #p ] #IH #f
+[ <lift_rmap_d_lcons_sn <lift_path_d_lcons_sn //
+| <lift_rmap_L_sn <lift_path_L_sn <IH //
+| <lift_rmap_A_sn <lift_path_A_sn <IH //
+| <lift_rmap_S_sn <lift_path_S_sn <IH //
 ]
 qed.
 
 lemma lift_L_dx (p) (f):
       (āŠ—p)ā—–š—Ÿ = ā†‘[f](pā—–š—Ÿ).
-#p elim p -p
-[| * [ #m * [| #l ]] [|*: #p ] #IH ] #f
-[ //
-| //
-| <lift_d_lcons_sn //
-| <lift_L_sn <lift_lcons //
-| <lift_A_sn <lift_lcons //
-| <lift_S_sn <lift_lcons //
-]
+#p @(path_ind_lift ā€¦ p) -p // #m #l #p #IH #f
+<lift_path_d_lcons_sn //
 qed.
 
 lemma lift_A_dx (p) (f):
       (āŠ—p)ā—–š—” = ā†‘[f](pā—–š—”).
-#p elim p -p
-[| * [ #m * [| #l ]] [|*: #p ] #IH ] #f
-[ //
-| //
-| <lift_d_lcons_sn //
-| <lift_L_sn <lift_lcons //
-| <lift_A_sn <lift_lcons //
-| <lift_S_sn <lift_lcons //
-]
+#p @(path_ind_lift ā€¦ p) -p // #m #l #p #IH #f
+<lift_path_d_lcons_sn //
 qed.
 
 lemma lift_S_dx (p) (f):
       (āŠ—p)ā—–š—¦ = ā†‘[f](pā—–š—¦).
-#p elim p -p
-[| * [ #m * [| #l ]] [|*: #p ] #IH ] #f
-[ //
-| //
-| <lift_d_lcons_sn //
-| <lift_L_sn <lift_lcons //
-| <lift_A_sn <lift_lcons //
-| <lift_S_sn <lift_lcons //
-]
+#p @(path_ind_lift ā€¦ p) -p // #m #l #p #IH #f
+<lift_path_d_lcons_sn //
 qed.
 
 lemma structure_lift (p) (f):
       āŠ—p = āŠ—ā†‘[f]p.
-#p elim p -p
-[| * [ #m * [| #l ]] [|*: #p ] #IH ] #f
-[ //
-| //
-| //
-| <lift_L_sn <lift_lcons //
-| <lift_A_sn <lift_lcons //
-| <lift_S_sn <lift_lcons //
-]
+#p @(path_ind_lift ā€¦ p) -p // #p #IH #f
+<lift_path_L_sn //
 qed.
 
 lemma lift_structure (p) (f):
       āŠ—p = ā†‘[f]āŠ—p.
-#p elim p -p
-[| * [ #m * [| #l ]] [|*: #p ] #IH ] #f
-[ //
-| //
-| //
-| <structure_L_sn <lift_L_sn <lift_lcons //
-| <structure_A_sn <lift_A_sn <lift_lcons //
-| <structure_S_sn <lift_S_sn <lift_lcons //
-]
+#p @(path_ind_lift ā€¦ p) -p //
 qed.