X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fdelayed_updating%2Freduction%2Fdfr_ifr.ma;h=68cea487c474ddaf6d9a0bff4f740a3e97953946;hb=41a54a797af98d2867d4bf979d424283fb44a1fc;hp=fd5f76b54ba8ff80a7d68ca8f2f9f186112bdba4;hpb=4ac2becfaa45abb18acb2bdf3db5d2587cadb6d4;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/delayed_updating/reduction/dfr_ifr.ma b/matita/matita/contribs/lambdadelta/delayed_updating/reduction/dfr_ifr.ma index fd5f76b54..68cea487c 100644 --- a/matita/matita/contribs/lambdadelta/delayed_updating/reduction/dfr_ifr.ma +++ b/matita/matita/contribs/lambdadelta/delayed_updating/reduction/dfr_ifr.ma @@ -18,52 +18,51 @@ include "delayed_updating/reduction/ifr.ma". include "delayed_updating/unwind/unwind2_constructors.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_head.ma". include "delayed_updating/substitution/fsubst_eq.ma". +include "delayed_updating/substitution/lift_prototerm_eq.ma". include "delayed_updating/syntax/prototerm_proper_constructors.ma". include "delayed_updating/syntax/path_head_structure.ma". include "delayed_updating/syntax/path_structure_depth.ma". -include "delayed_updating/syntax/path_structure_reverse.ma". -include "delayed_updating/syntax/path_depth_reverse.ma". (* DELAYED FOCUSED REDUCTION ************************************************) (* Main destructions with ifr ***********************************************) -theorem dfr_des_ifr (f) (p) (q) (t1) (t2): t1 ϵ 𝐓 → - t1 ➡𝐝𝐟[p,q] t2 → ▼[f]t1 ➡𝐢𝐟[⊗p,⊗q] ▼[f]t2. -#f #p #q #t1 #t2 #H0t1 -* #n * #H1n #Ht1 #Ht2 -@(ex_intro … (↑♭q)) @and3_intro -[ -H0t1 -Ht1 -Ht2 - >structure_L_sn >structure_reverse - >H1n >path_head_structure_depth structure_L_sn + >H1k in ⊢ (??%?); >path_head_structure_depth list_append_rcons_sn in H1n; list_append_rcons_sn in H1n; nrplus_inj_dx in ⊢ (???%); unwind2_rmap_A_dx + /2 width=1 by tls_unwind2_rmap_closed/ + ] (* Note: crux of the proof ends *) | // | /2 width=2 by ex_intro/