]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/static_2/static/fdeq.ma
milestone in basic_2
[helm.git] / matita / matita / contribs / lambdadelta / static_2 / static / fdeq.ma
index 25427895c36e96517fba7bb5cbe95fc02a290e5d..be82b9302cbccaab1eb966e455b0b0fc9158ff76 100644 (file)
 (*                                                                        *)
 (**************************************************************************)
 
-include "static_2/notation/relations/stareqsn_8.ma".
+include "static_2/notation/relations/stareqsn_6.ma".
 include "static_2/syntax/genv.ma".
 include "static_2/static/rdeq.ma".
 
-(* DEGREE-BASED EQUIVALENCE FOR CLOSURES ON REFERRED ENTRIES ****************)
+(* SORT-IRRELEVANT EQUIVALENCE FOR CLOSURES ON REFERRED ENTRIES *************)
 
-inductive fdeq (h) (o) (G) (L1) (T1): relation3 genv lenv term ≝
-| fdeq_intro_sn: ∀L2,T2. L1 ≛[h, o, T1] L2 → T1 ≛[h, o] T2 →
-                 fdeq h o G L1 T1 G L2 T2
+inductive fdeq (G) (L1) (T1): relation3 genv lenv term ≝
+| fdeq_intro_sn: ∀L2,T2. L1 ≛[T1] L2 → T1 ≛ T2 →
+                 fdeq G L1 T1 G L2 T2
 .
 
 interpretation
-   "degree-based equivalence on referred entries (closure)"
-   'StarEqSn h o G1 L1 T1 G2 L2 T2 = (fdeq h o G1 L1 T1 G2 L2 T2).
+   "sort-irrelevant equivalence on referred entries (closure)"
+   'StarEqSn G1 L1 T1 G2 L2 T2 = (fdeq G1 L1 T1 G2 L2 T2).
 
 (* Basic_properties *********************************************************)
 
-lemma fdeq_intro_dx (h) (o) (G): ∀L1,L2,T2. L1 ≛[h, o, T2] L2 →
-                                 ∀T1. T1 ≛[h, o] T2 → ⦃G, L1, T1⦄ ≛[h, o] ⦃G, L2, T2⦄.
+lemma fdeq_intro_dx (G): ∀L1,L2,T2. L1 ≛[T2] L2 →
+                         ∀T1. T1 ≛ T2 → ⦃G, L1, T1⦄ ≛ ⦃G, L2, T2⦄.
 /3 width=3 by fdeq_intro_sn, tdeq_rdeq_div/ qed.
 
 (* Basic inversion lemmas ***************************************************)
 
-lemma fdeq_inv_gen_sn: ∀h,o,G1,G2,L1,L2,T1,T2. ⦃G1, L1, T1⦄ ≛[h, o] ⦃G2, L2, T2⦄ →
-                       ∧∧ G1 = G2 & L1 ≛[h, o, T1] L2 & T1 ≛[h, o] T2.
-#h #o #G1 #G2 #L1 #L2 #T1 #T2 * -G2 -L2 -T2 /2 width=1 by and3_intro/
+lemma fdeq_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 fdeq_inv_gen_dx: ∀h,o,G1,G2,L1,L2,T1,T2. ⦃G1, L1, T1⦄ ≛[h, o] ⦃G2, L2, T2⦄ →
-                       ∧∧ G1 = G2 & L1 ≛[h, o, T2] L2 & T1 ≛[h, o] T2.
-#h #o #G1 #G2 #L1 #L2 #T1 #T2 * -G2 -L2 -T2
+lemma fdeq_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 tdeq_rdeq_conf, and3_intro/
 qed-.