]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/static_2/static/feqg.ma
made executable again
[helm.git] / matita / matita / contribs / lambdadelta / static_2 / static / feqg.ma
index 39cba31e932f8b7d90d1a14e7a79ce6cbf80c167..c9705e72a41bda0b678ef55e71af094cc6ee78ba 100644 (file)
@@ -32,25 +32,46 @@ interpretation
 lemma feqg_intro_dx (S) (G):
       reflexive … S → symmetric … S →
       ∀L1,L2,T2. L1 ≛[S,T2] L2 →
-      â\88\80T1. T1 â\89\9b[S] T2 â\86\92 â\9dªG,L1,T1â\9d« â\89\9b[S] â\9dªG,L2,T2â\9d«.
+      â\88\80T1. T1 â\89\9b[S] T2 â\86\92 â\9d¨G,L1,T1â\9d© â\89\9b[S] â\9d¨G,L2,T2â\9d©.
 /3 width=6 by feqg_intro_sn, teqg_reqg_div/ qed.
 
 (* Basic inversion lemmas ***************************************************)
 
 lemma feqg_inv_gen_sn (S):
-      â\88\80G1,G2,L1,L2,T1,T2. â\9dªG1,L1,T1â\9d« â\89\9b[S] â\9dªG2,L2,T2â\9d« →
+      â\88\80G1,G2,L1,L2,T1,T2. â\9d¨G1,L1,T1â\9d© â\89\9b[S] â\9d¨G2,L2,T2â\9d© →
       ∧∧ G1 = G2 & L1 ≛[S,T1] L2 & T1 ≛[S] T2.
 #S #G1 #G2 #L1 #L2 #T1 #T2 * -G2 -L2 -T2 /2 width=1 by and3_intro/
 qed-.
 
 lemma feqg_inv_gen_dx (S):
       reflexive … S →
-      â\88\80G1,G2,L1,L2,T1,T2. â\9dªG1,L1,T1â\9d« â\89\9b[S] â\9dªG2,L2,T2â\9d« →
+      â\88\80G1,G2,L1,L2,T1,T2. â\9d¨G1,L1,T1â\9d© â\89\9b[S] â\9d¨G2,L2,T2â\9d© →
       ∧∧ G1 = G2 & L1 ≛[S,T2] L2 & T1 ≛[S] T2.
 #S #HS #G1 #G2 #L1 #L2 #T1 #T2 * -G2 -L2 -T2
 /3 width=6 by teqg_reqg_conf_sn, and3_intro/
 qed-.
 
+(* Basic forward lemmas *****************************************************)
+
+lemma feqg_fwd_teqg (S):
+      ∀G1,G2,L1,L2,T1,T2. ❨G1,L1,T1❩ ≛[S] ❨G2,L2,T2❩ → T1 ≛[S] T2.
+#S #G1 #G2 #L1 #L2 #T1 #T2 #H
+elim (feqg_inv_gen_sn … H) -H //
+qed-.
+
+lemma feqg_fwd_reqg_sn (S):
+      ∀G1,G2,L1,L2,T1,T2. ❨G1,L1,T1❩ ≛[S] ❨G2,L2,T2❩ → L1 ≛[S,T1] L2.
+#S #G1 #G2 #L1 #L2 #T1 #T2 #H
+elim (feqg_inv_gen_sn … H) -H //
+qed-.
+
+lemma feqg_fwd_reqg_dx (S):
+      reflexive … S →
+      ∀G1,G2,L1,L2,T1,T2. ❨G1,L1,T1❩ ≛[S] ❨G2,L2,T2❩ → L1 ≛[S,T2] L2.
+#S #HS #G1 #G2 #L1 #L2 #T1 #T2 #H
+elim (feqg_inv_gen_dx … H) -H //
+qed-.
+
 (* Basic_2A1: removed theorems 6:
               fleq_refl fleq_sym fleq_inv_gen
               fleq_trans fleq_canc_sn fleq_canc_dx