X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fbasic_2%2Freducibility%2Flfpr_cpr.ma;h=8a01f263a55a1f8a5842949af182c2325f98c4b9;hb=eb4b3b1b307fc392c36f0be253e6a111553259bc;hp=04686f960a484e091967a6459f2a40cdc4d5463a;hpb=420a46d71dc2c9b7e88514a717ea9637b842ce6a;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/basic_2/reducibility/lfpr_cpr.ma b/matita/matita/contribs/lambdadelta/basic_2/reducibility/lfpr_cpr.ma index 04686f960..8a01f263a 100644 --- a/matita/matita/contribs/lambdadelta/basic_2/reducibility/lfpr_cpr.ma +++ b/matita/matita/contribs/lambdadelta/basic_2/reducibility/lfpr_cpr.ma @@ -13,6 +13,7 @@ (**************************************************************************) include "basic_2/unfold/ltpss_sn_ltpss_sn.ma". +include "basic_2/reducibility/ltpr_ldrop.ma". include "basic_2/reducibility/cpr.ma". include "basic_2/reducibility/lfpr.ma". @@ -27,3 +28,25 @@ lemma lfpr_pair_cpr: ∀L1,L2. ⦃L1⦄ ➡ ⦃L2⦄ → ∀V1,V2. L2 ⊢ V1 ➡ lapply (ltpss_sn_tpss_trans_eq … HV2 … HL2) -HV2 #V2 @(ex2_intro … (L.ⓑ{I}V)) /2 width=1/ (**) (* explicit constructor *) qed. + +(* Properties on supclosure *************************************************) +(* +lamma fsub_cpr_trans: ∀L1,L2,T1,T2. ⦃L1, T1⦄ ⊃ ⦃L2, T2⦄ → ∀U2. L2 ⊢ T2 ➡ U2 → + ∃∃L,U1. ⦃L1⦄ ➡ ⦃L⦄ & L ⊢ T1 ➡ U1 & ⦃L, U1⦄ ⊃ ⦃L2, U2⦄. +#L1 #L2 #T1 #T2 #HT12 #U2 * #T #H1 #H2 +elim (fsub_tpr_trans … HT12 … H1) -T2 #L #U #HL1 #HT1U #HUT +elim (fsup_tpss_trans_full … HUT … H2) -T -HUT -H2 #L #U #HL1 #HT1U #HUT + + + + + + + #H elim H -L1 -L2 -T1 -T2 [1,2,3,4,5: /3 width=5/ ] +#L1 #K1 #K2 #T1 #T2 #U1 #d #e #HLK1 #HTU1 #_ #IHT12 #U2 #HTU2 +elim (IHT12 … HTU2) -IHT12 -HTU2 #K #T #HK1 #HT1 #HK2 +elim (lift_total T d e) #U #HTU +elim (ldrop_ltpr_trans … HLK1 … HK1) -HLK1 -HK1 #L #HL1 #HLK +lapply (tpr_lift … HT1 … HTU1 … HTU) -HT1 -HTU1 /3 width=11/ +qed-. +*) \ No newline at end of file