X-Git-Url: http://matita.cs.unibo.it/gitweb/?p=helm.git;a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fstatic_2%2Fstatic%2Ffeqx.ma;h=9804e73c2aa46eb7557c41b331ac42fb72f158c3;hp=e4c8a22d1cee836a0e71b6b7ccb0cc531030fc2d;hb=e23331eef5817eaa6c5e1c442d1d6bbb18650573;hpb=b118146b97959e6a6dde18fdd014b8e1e676a2d1 diff --git a/matita/matita/contribs/lambdadelta/static_2/static/feqx.ma b/matita/matita/contribs/lambdadelta/static_2/static/feqx.ma index e4c8a22d1..9804e73c2 100644 --- a/matita/matita/contribs/lambdadelta/static_2/static/feqx.ma +++ b/matita/matita/contribs/lambdadelta/static_2/static/feqx.ma @@ -13,41 +13,23 @@ (**************************************************************************) include "static_2/notation/relations/approxeqsn_6.ma". -include "static_2/syntax/teqx.ma". +include "static_2/static/reqx.ma". include "static_2/static/feqg.ma". (* SORT-IRRELEVANT EQUIVALENCE FOR CLOSURES ON REFERRED ENTRIES *************) - +(* definition feqx: relation6 genv lenv term genv lenv term ≝ feqg sfull. - +*) interpretation "sort-irrelevant equivalence on referred entries (closure)" - 'ApproxEqSn G1 L1 T1 G2 L2 T2 = (feqx G1 L1 T1 G2 L2 T2). + 'ApproxEqSn G1 L1 T1 G2 L2 T2 = (feqg sfull G1 L1 T1 G2 L2 T2). (* Basic_properties *********************************************************) -(* -lemma feqx_intro_dx (G): - ∀L1,L2,T2. L1 ≛[T2] L2 → - ∀T1. T1 ≛ T2 → ❪G,L1,T1❫ ≛ ❪G,L2,T2❫. -/3 width=3 by feqx_intro_sn, teqx_reqx_div/ qed. -(* Basic inversion lemmas ***************************************************) - -lemma feqx_inv_gen_sn: - ∀G1,G2,L1,L2,T1,T2. ❪G1,L1,T1❫ ≛ ❪G2,L2,T2❫ → - ∧∧ G1 = G2 & L1 ≛[T1] L2 & T1 ≛ T2. -#G1 #G2 #L1 #L2 #T1 #T2 * -G2 -L2 -T2 /2 width=1 by and3_intro/ -qed-. - -lemma feqx_inv_gen_dx: - ∀G1,G2,L1,L2,T1,T2. ❪G1,L1,T1❫ ≛ ❪G2,L2,T2❫ → - ∧∧ G1 = G2 & L1 ≛[T2] L2 & T1 ≛ T2. -#G1 #G2 #L1 #L2 #T1 #T2 * -G2 -L2 -T2 -/3 width=3 by teqx_reqx_conf_sn, and3_intro/ -qed-. -*) -(* Basic_2A1: removed theorems 6: - fleq_refl fleq_sym fleq_inv_gen - fleq_trans fleq_canc_sn fleq_canc_dx -*) +lemma feqg_feqx (S) (G1) (G2) (L1) (L2) (T1) (T2): + ❪G1,L1,T1❫ ≛[S] ❪G2,L2,T2❫ → ❪G1,L1,T1❫ ≅ ❪G2,L2,T2❫. +#S #G1 #G2 #L1 #L2 #T1 #T2 #H +elim (feqg_inv_gen_sn … H) -H +/3 width=2 by feqg_intro_sn, reqg_reqx, teqg_teqx/ +qed.