X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fdelayed_updating%2Freduction%2Fibfr_unwind.ma;h=952ef252b7710982fe0d4d903b2e5679cc4f4bbd;hb=d108bcea8ebae11b03e8d8a155dfd3f2eb445127;hp=f3d7d16faca3c3137a6098e8577560adfe1d5993;hpb=4939d8280cb3467cd8fa648b1cea04f74d71e8b7;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/reduction/ibfr_unwind.ma b/matita/matita/contribs/lambdadelta/delayed_updating/reduction/ibfr_unwind.ma index f3d7d16fa..952ef252b 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/reduction/ibfr_unwind.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/reduction/ibfr_unwind.ma @@ -12,39 +12,50 @@ (* *) (**************************************************************************) -include "delayed_updating/reduction/ibfr.ma". +include "delayed_updating/reduction/ibfr_lift.ma". +include "delayed_updating/reduction/ibfr_eq.ma". include "delayed_updating/unwind/unwind2_preterm_fsubst.ma". include "delayed_updating/unwind/unwind2_preterm_eq.ma". include "delayed_updating/unwind/unwind2_prototerm_lift.ma". -include "delayed_updating/unwind/unwind2_rmap_closed.ma". - -include "delayed_updating/substitution/fsubst_eq.ma". -include "delayed_updating/substitution/lift_prototerm_eq.ma". +include "delayed_updating/unwind/unwind2_rmap_crux.ma". include "delayed_updating/syntax/path_closed_structure.ma". +include "delayed_updating/syntax/path_guard_structure.ma". include "delayed_updating/syntax/path_structure_depth.ma". (* IMMEDIATE BALANCED FOCUSED REDUCTION *************************************) (* Constructions with unwind2 ***********************************************) -lemma ibfr_unwind_bi (f) (t1) (t2) (r): +lemma ibfr_structure_unwind_bi (f) (t1) (t2) (r): + ▼[⫯𝐢]t1 ➡𝐢𝐛𝐟[⊗r] ▼[⫯𝐢]t2 → ▼[f]t1 ➡𝐢𝐛𝐟[⊗r] ▼[f]t2. +#f #t1 #t2 #r #Ht12 +lapply (ibfr_lift_bi (f) … Ht12) -Ht12 +list_append_assoc - unwind2_rmap_A_dx - /2 width=2 by tls_succ_plus_unwind2_rmap_append_closed_bLq_dx/ - ] + /2 width=1 by unwind2_rmap_uni_crux/ (* Note: crux of the proof ends *) | // | /2 width=2 by ex_intro/ | // ] ] +qed-. + +lemma ibfr_unwind_bi (f) (t1) (t2) (r): + t1 ϵ 𝐓 → r ϵ 𝐈 → + t1 ➡𝐢𝐛𝐟[r] t2 → ▼[f]t1 ➡𝐢𝐛𝐟[⊗r] ▼[f]t2. +#f #t1 #t2 #r #Ht1 #Hr #Ht12 +lapply (ibfr_unwind_bi_push (𝐢) … Ht1 Hr Ht12) -Ht1 -Hr -Ht12 #Ht12 +/2 width=1 by ibfr_structure_unwind_bi/ qed.