X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fbasic_2%2Frt_transition%2Fcpr_drops.ma;h=973329139020066a4a6d34bccbc678151e9bf239;hb=25c634037771dff0138e5e8e3d4378183ff49b86;hp=48d281e4f27144c0a292c36af19b191ecbfa3570;hpb=6f06bee3eeb4f718b273f0cca5873e9dc5e758b2;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/basic_2/rt_transition/cpr_drops.ma b/matita/matita/contribs/lambdadelta/basic_2/rt_transition/cpr_drops.ma index 48d281e4f..973329139 100644 --- a/matita/matita/contribs/lambdadelta/basic_2/rt_transition/cpr_drops.ma +++ b/matita/matita/contribs/lambdadelta/basic_2/rt_transition/cpr_drops.ma @@ -19,10 +19,10 @@ include "basic_2/rt_transition/cpm_drops.ma". (* Advanced inversion lemmas ************************************************) (* Basic_2A1: includes: cpr_inv_atom1 *) -lemma cpr_inv_atom1_drops: ∀h,I,G,L,T2. ⦃G, L⦄ ⊢ ⓪{I} ➡[h] T2 → - T2 = ⓪{I} ∨ - ∃∃K,V,V2,i. ⬇*[i] L ≡ K.ⓓV & ⦃G, K⦄ ⊢ V ➡[h] V2 & - ⬆*[⫯i] V2 ≡ T2 & I = LRef i. +lemma cpr_inv_atom1_drops: ∀h,I,G,L,T2. ❪G,L❫ ⊢ ⓪[I] ➡[h] T2 → + ∨∨ T2 = ⓪[I] + | ∃∃K,V,V2,i. ⇩[i] L ≘ K.ⓓV & ❪G,K❫ ⊢ V ➡[h] V2 & + ⇧[↑i] V2 ≘ T2 & I = LRef i. #h #I #G #L #T2 #H elim (cpm_inv_atom1_drops … H) -H * [ /2 width=1 by or_introl/ | #s #_ #_ #H destruct @@ -33,10 +33,10 @@ qed-. (* Basic_1: includes: pr0_gen_lref pr2_gen_lref *) (* Basic_2A1: includes: cpr_inv_lref1 *) -lemma cpr_inv_lref1_drops: ∀h,G,L,T2,i. ⦃G, L⦄ ⊢ #i ➡[h] T2 → - T2 = #i ∨ - ∃∃K,V,V2. ⬇*[i] L ≡ K. ⓓV & ⦃G, K⦄ ⊢ V ➡[h] V2 & - ⬆*[⫯i] V2 ≡ T2. +lemma cpr_inv_lref1_drops: ∀h,G,L,T2,i. ❪G,L❫ ⊢ #i ➡[h] T2 → + ∨∨ T2 = #i + | ∃∃K,V,V2. ⇩[i] L ≘ K. ⓓV & ❪G,K❫ ⊢ V ➡[h] V2 & + ⇧[↑i] V2 ≘ T2. #h #G #L #T2 #i #H elim (cpm_inv_lref1_drops … H) -H * [ /2 width=1 by or_introl/ | /3 width=6 by ex3_3_intro, or_intror/