X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambda_delta%2Fbasic_2%2Freducibility%2Fltpr_aaa.ma;h=b45dbb99eb2fe5333ed2c773f9d911ad90d5a5e7;hb=5613a25cee29ef32a597cb4b44e8f2f4d71c4df0;hp=ef63ad095d6468eadd660da10e5ce28a493c37ce;hpb=cc21d0caa6229b7d1a905f9b62de2af4f40cc863;p=helm.git diff --git a/matita/matita/contribs/lambda_delta/basic_2/reducibility/ltpr_aaa.ma b/matita/matita/contribs/lambda_delta/basic_2/reducibility/ltpr_aaa.ma index ef63ad095..b45dbb99e 100644 --- a/matita/matita/contribs/lambda_delta/basic_2/reducibility/ltpr_aaa.ma +++ b/matita/matita/contribs/lambda_delta/basic_2/reducibility/ltpr_aaa.ma @@ -22,13 +22,13 @@ include "basic_2/reducibility/ltpr_ldrop.ma". fact aaa_ltpr_tpr_conf_aux: ∀L,T,L1,T1,A. L1 ⊢ T1 ⁝ A → L = L1 → T = T1 → ∀L2. L1 ➡ L2 → ∀T2. T1 ➡ T2 → L2 ⊢ T2 ⁝ A. -#L #T @(cw_wf_ind … L T) -L -T #L #T #IH +#L #T @(fw_ind … L T) -L -T #L #T #IH #L1 #T1 #A * -L1 -T1 -A [ -IH #L1 #k #H1 #H2 #L2 #_ #T2 #H destruct >(tpr_inv_atom1 … H) -H // | #I #L1 #K1 #V1 #B #i #HLK1 #HK1 #H1 #H2 #L2 #HL12 #T2 #H destruct >(tpr_inv_atom1 … H) -T2 - lapply (ldrop_pair2_fwd_cw … HLK1 (#i)) #HKV1 + lapply (ldrop_pair2_fwd_fw … HLK1 (#i)) #HKV1 elim (ltpr_ldrop_conf … HLK1 … HL12) -HLK1 -HL12 #X #H #HLK2 elim (ltpr_inv_pair1 … H) -H #K2 #V2 #HK12 #HV12 #H destruct lapply (IH … HKV1 … HK1 … HK12 … HV12) // -L1 -K1 -V1 /2 width=5/ @@ -55,12 +55,12 @@ fact aaa_ltpr_tpr_conf_aux: ∀L,T,L1,T1,A. L1 ⊢ T1 ⁝ A → L = L1 → T = T elim (aaa_inv_abst … HT1) -HT1 #B0 #A0 #HB0 #HA0 #H destruct lapply (IH … HV1 … HL12 … HV12) -HV1 -HV12 /width=5/ #HB lapply (IH … HB0 … HL12 W2 ?) -HB0 /width=5/ #HB0 - lapply (IH … HA0 … (L2.ⓛW2) … HT02) -IH -HA0 -HT02 /width=5/ -T0 /2 width=1/ -L1 -V1 /4 width=7/ + lapply (IH … HA0 … (L2.ⓛW2) … HT02) -IH -HA0 -HT02 [2,4: // |3,5: skip ] /2 width=1/ -T0 -L1 -V1 /4 width=7/ | #a #V0 #V2 #W0 #W2 #T0 #T2 #HV10 #HW02 #HT02 #HV02 #H1 #H2 destruct elim (aaa_inv_abbr … HT1) -HT1 #B0 #HW0 #HT0 lapply (IH … HW0 … HL12 … HW02) -HW0 /width=5/ #HW2 lapply (IH … HV1 … HL12 … HV10) -HV1 -HV10 /width=5/ #HV0 - lapply (IH … HT0 … (L2.ⓓW2) … HT02) -IH -HT0 -HT02 /width=5/ -V1 -T0 /2 width=1/ -L1 -W0 #HT2 + lapply (IH … HT0 … (L2.ⓓW2) … HT02) -IH -HT0 -HT02 [2,4: // |3,5: skip ] /2 width=1/ -V1 -T0 -L1 -W0 #HT2 @(aaa_abbr … HW2) -HW2 @(aaa_appl … HT2) -HT2 /3 width=7/ (**) (* explict constructors, /5 width=7/ is too slow *) ]