X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fbasic_2%2Fequivalence%2Fcpes.ma;h=98a0609d43a4ecea676d461a952c05fc59ddcb38;hb=ff7754f834f937bfe2384c7703cf63f552885395;hp=7aeb07cb07bb1c25afe1c637faaf250652004107;hpb=4720368dcf18593959c6d21484f62fb5b61f3d26;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/basic_2/equivalence/cpes.ma b/matita/matita/contribs/lambdadelta/basic_2/equivalence/cpes.ma index 7aeb07cb0..98a0609d4 100644 --- a/matita/matita/contribs/lambdadelta/basic_2/equivalence/cpes.ma +++ b/matita/matita/contribs/lambdadelta/basic_2/equivalence/cpes.ma @@ -13,34 +13,35 @@ (**************************************************************************) include "basic_2/notation/relations/dpconvstar_6.ma". -include "basic_2/unfold/lsstas.ma". +include "basic_2/static/da.ma". +include "basic_2/unfold/lstas.ma". include "basic_2/equivalence/cpcs.ma". (* DECOMPOSED EXTENDED PARALLEL EQUIVALENCE FOR TERMS ***********************) definition cpes: ∀h. sd h → relation4 genv lenv term term ≝ λh,g,G,L,T1,T2. - ∃∃T,l1,l2. l2 ≤ l1 & ⦃G, L⦄ ⊢ T1 ▪[h, g] l1 & ⦃G, L⦄ ⊢ T1 •*[h, g, l2] T & ⦃G, L⦄ ⊢ T ⬌* T2. + ∃∃T,l1,l2. l2 ≤ l1 & ⦃G, L⦄ ⊢ T1 ▪[h, g] l1 & ⦃G, L⦄ ⊢ T1 •*[h, l2] T & ⦃G, L⦄ ⊢ T ⬌* T2. interpretation "decomposed extended parallel equivalence (term)" 'DPConvStar h g G L T1 T2 = (cpes h g G L T1 T2). (* Basic properties *********************************************************) -lemma ssta_cpcs_cpes: ∀h,g,G,L,T1,T,T2,l. ⦃G, L⦄ ⊢ T1 ▪[h, g] l+1 → ⦃G, L⦄ ⊢ T1 •[h, g] T → - ⦃G, L⦄ ⊢ T ⬌* T2 → ⦃G, L⦄ ⊢ T1 •*⬌*[h, g] T2. -/3 width=7/ qed. +lemma sta_cpcs_cpes: ∀h,g,G,L,T1,T,T2,l. ⦃G, L⦄ ⊢ T1 ▪[h, g] l+1 → ⦃G, L⦄ ⊢ T1 •[h] T → + ⦃G, L⦄ ⊢ T ⬌* T2 → ⦃G, L⦄ ⊢ T1 •*⬌*[h, g] T2. +/3 width=7 by sta_lstas, ex4_3_intro/ qed. -lemma lsstas_cpes: ∀h,g,G,L,T1,T2,l. ⦃G, L⦄ ⊢ T1 ▪[h, g] l → ⦃G, L⦄ ⊢ T1 •*[h, g, l] T2 → ⦃G, L⦄ ⊢ T1 •*⬌*[h, g] T2. -/2 width=7/ qed. +lemma lstas_cpes: ∀h,g,G,L,T1,T2,l. ⦃G, L⦄ ⊢ T1 ▪[h, g] l → ⦃G, L⦄ ⊢ T1 •*[h, l] T2 → ⦃G, L⦄ ⊢ T1 •*⬌*[h, g] T2. +/2 width=7 by ex4_3_intro/ qed. lemma cpcs_cpes: ∀h,g,G,L,T1,T2,l. ⦃G, L⦄ ⊢ T1 ▪[h, g] l → ⦃G, L⦄ ⊢ T1 ⬌* T2 → ⦃G, L⦄ ⊢ T1 •*⬌*[h, g] T2. -/2 width=7/ qed. +/2 width=7 by lstar_O, ex4_3_intro/ qed. lemma cpes_refl: ∀h,g,G,L,T,l. ⦃G, L⦄ ⊢ T ▪[h, g] l → ⦃G, L⦄ ⊢ T •*⬌*[h, g] T. -/2 width=2/ qed. +/2 width=2 by cpcs_cpes/ qed. lemma cpes_strap1: ∀h,g,G,L,T1,T,T2. ⦃G, L⦄ ⊢ T1 •*⬌*[h, g] T → ⦃G, L⦄ ⊢ T ⬌ T2 → ⦃G, L⦄ ⊢ T1 •*⬌*[h, g] T2. -#h #g #G #L #T1 #T #T2 * /3 width=9/ +#h #g #G #L #T1 #T #T2 * /3 width=9 by cpcs_strap1, ex4_3_intro/ qed.