X-Git-Url: http://matita.cs.unibo.it/gitweb/?p=helm.git;a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fbasic_2%2Fstatic%2Flsuba_drops.ma;h=e55602e4f25b6ac2bdd6dd07499744748c85fe84;hp=abe54f1fb1118fe02e24a9b89a0bafb00fdbb872;hb=222044da28742b24584549ba86b1805a87def070;hpb=e9da8e091898b6e67a2f270581bdc5cdbe80e9b0 diff --git a/matita/matita/contribs/lambdadelta/basic_2/static/lsuba_drops.ma b/matita/matita/contribs/lambdadelta/basic_2/static/lsuba_drops.ma index abe54f1fb..e55602e4f 100644 --- a/matita/matita/contribs/lambdadelta/basic_2/static/lsuba_drops.ma +++ b/matita/matita/contribs/lambdadelta/basic_2/static/lsuba_drops.ma @@ -22,19 +22,19 @@ include "basic_2/static/lsuba.ma". (* Note: the premise 𝐔⦃f⦄ cannot be removed *) (* Basic_2A1: includes: lsuba_drop_O1_conf *) lemma lsuba_drops_conf_isuni: ∀G,L1,L2. G ⊢ L1 ⫃⁝ L2 → - ∀b,f,K1. 𝐔⦃f⦄ → ⬇*[b, f] L1 ≡ K1 → - ∃∃K2. G ⊢ K1 ⫃⁝ K2 & ⬇*[b, f] L2 ≡ K2. + ∀b,f,K1. 𝐔⦃f⦄ → ⬇*[b, f] L1 ≘ K1 → + ∃∃K2. G ⊢ K1 ⫃⁝ K2 & ⬇*[b, f] L2 ≘ K2. #G #L1 #L2 #H elim H -L1 -L2 [ /2 width=3 by ex2_intro/ -| #I #L1 #L2 #V #HL12 #IH #b #f #K1 #Hf #H - elim (drops_inv_pair1_isuni … Hf H) -Hf -H * +| #I #L1 #L2 #HL12 #IH #b #f #K1 #Hf #H + elim (drops_inv_bind1_isuni … Hf H) -Hf -H * [ #Hf #H destruct -IH - /3 width=3 by lsuba_pair, drops_refl, ex2_intro/ + /3 width=3 by lsuba_bind, drops_refl, ex2_intro/ | #g #Hg #HLK1 #H destruct -HL12 elim (IH … Hg HLK1) -L1 -Hg /3 width=3 by drops_drop, ex2_intro/ ] | #L1 #L2 #W #V #A #HV #HW #HL12 #IH #b #f #K1 #Hf #H - elim (drops_inv_pair1_isuni … Hf H) -Hf -H * + elim (drops_inv_bind1_isuni … Hf H) -Hf -H * [ #Hf #H destruct -IH /3 width=3 by drops_refl, lsuba_beta, ex2_intro/ | #g #Hg #HLK1 #H destruct -HL12 @@ -45,20 +45,20 @@ qed-. (* Note: the premise 𝐔⦃f⦄ cannot be removed *) (* Basic_2A1: includes: lsuba_drop_O1_trans *) -lemma lsuba_drop_O1_trans: ∀G,L1,L2. G ⊢ L1 ⫃⁝ L2 → - ∀b,f,K2. 𝐔⦃f⦄ → ⬇*[b, f] L2 ≡ K2 → - ∃∃K1. G ⊢ K1 ⫃⁝ K2 & ⬇*[b, f] L1 ≡ K1. +lemma lsuba_drops_trans_isuni: ∀G,L1,L2. G ⊢ L1 ⫃⁝ L2 → + ∀b,f,K2. 𝐔⦃f⦄ → ⬇*[b, f] L2 ≘ K2 → + ∃∃K1. G ⊢ K1 ⫃⁝ K2 & ⬇*[b, f] L1 ≘ K1. #G #L1 #L2 #H elim H -L1 -L2 [ /2 width=3 by ex2_intro/ -| #I #L1 #L2 #V #HL12 #IH #b #f #K2 #Hf #H - elim (drops_inv_pair1_isuni … Hf H) -Hf -H * +| #I #L1 #L2 #HL12 #IH #b #f #K2 #Hf #H + elim (drops_inv_bind1_isuni … Hf H) -Hf -H * [ #Hf #H destruct -IH - /3 width=3 by lsuba_pair, drops_refl, ex2_intro/ + /3 width=3 by lsuba_bind, drops_refl, ex2_intro/ | #g #Hg #HLK2 #H destruct -HL12 elim (IH … Hg HLK2) -L2 -Hg /3 width=3 by drops_drop, ex2_intro/ ] | #L1 #L2 #W #V #A #HV #HW #HL12 #IH #b #f #K2 #Hf #H - elim (drops_inv_pair1_isuni … Hf H) -Hf -H * + elim (drops_inv_bind1_isuni … Hf H) -Hf -H * [ #Hf #H destruct -IH /3 width=3 by drops_refl, lsuba_beta, ex2_intro/ | #g #Hg #HLK2 #H destruct -HL12