X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Fcontribs%2Flambdadelta%2Fstatic_2%2Fstatic%2Ffeqx.ma;h=e4c8a22d1cee836a0e71b6b7ccb0cc531030fc2d;hb=b118146b97959e6a6dde18fdd014b8e1e676a2d1;hp=a341e76880549692fe03d10c70943d3c83882c96;hpb=adb9ba187619cea977d1d22971eba27eb437cd6a;p=helm.git diff --git a/matita/matita/contribs/lambdadelta/static_2/static/feqx.ma b/matita/matita/contribs/lambdadelta/static_2/static/feqx.ma index a341e7688..e4c8a22d1 100644 --- a/matita/matita/contribs/lambdadelta/static_2/static/feqx.ma +++ b/matita/matita/contribs/lambdadelta/static_2/static/feqx.ma @@ -12,40 +12,41 @@ (* *) (**************************************************************************) -include "static_2/notation/relations/stareqsn_6.ma". -include "static_2/syntax/genv.ma". -include "static_2/static/reqx.ma". +include "static_2/notation/relations/approxeqsn_6.ma". +include "static_2/syntax/teqx.ma". +include "static_2/static/feqg.ma". (* SORT-IRRELEVANT EQUIVALENCE FOR CLOSURES ON REFERRED ENTRIES *************) -inductive feqx (G) (L1) (T1): relation3 genv lenv term ≝ -| feqx_intro_sn: ∀L2,T2. L1 ≛[T1] L2 → T1 ≛ T2 → - feqx G L1 T1 G L2 T2 -. +definition feqx: relation6 genv lenv term genv lenv term ≝ + feqg sfull. interpretation - "sort-irrelevant equivalence on referred entries (closure)" - 'StarEqSn G1 L1 T1 G2 L2 T2 = (feqx G1 L1 T1 G2 L2 T2). + "sort-irrelevant equivalence on referred entries (closure)" + 'ApproxEqSn G1 L1 T1 G2 L2 T2 = (feqx 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⦄. +(* +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. +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. +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, and3_intro/ +/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