]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/matita/contribs/lambdadelta/basic_2/relocation/drops_lreq.ma
renaming
[helm.git] / matita / matita / contribs / lambdadelta / basic_2 / relocation / drops_lreq.ma
index b96a2ddcc30eabc2df7a9924a11898af0d3aa64b..d07ea22109df3a83609ae5542309a35fc67aa164 100644 (file)
@@ -30,28 +30,32 @@ lemma lreq_co_dropable_dx: co_dropable_dx lreq.
 
 (* Basic_2A1: includes: lreq_drop_trans_be *)
 lemma lreq_drops_trans_next: ∀f2,L1,L2. L1 ≡[f2] L2 →
-                             ∀b,f,I,K2. ⬇*[b, f] L2 ≡ K2.ⓘ{I} → 𝐔⦃f⦄ →
-                             ∀f1. f ~⊚ ⫯f1 ≡ f2 →
-                             ∃∃K1. ⬇*[b, f] L1 ≡ K1.ⓘ{I} & K1 ≡[f1] K2.
-#f2 #L1 #L2 #HL12 #b #f #I #K1 #HLK1 #Hf #f1 #Hf2
-elim (lexs_drops_trans_next … HL12 … HLK1 Hf … Hf2) -f2 -L2 -Hf
+                             ∀b,f,I,K2. ⬇*[b, f] L2 ≘ K2.ⓘ{I} → 𝐔⦃f⦄ →
+                             ∀f1. f ~⊚ ↑f1 ≘ f2 →
+                             ∃∃K1. ⬇*[b, f] L1 ≘ K1.ⓘ{I} & K1 ≡[f1] K2.
+#f2 #L1 #L2 #HL12 #b #f #I2 #K2 #HLK2 #Hf #f1 #Hf2
+elim (lexs_drops_trans_next … HL12 … HLK2 Hf … Hf2) -f2 -L2 -Hf
+#I1 #K1 #HLK1 #HK12 #H <(ceq_ext_inv_eq … H) -I2
 /2 width=3 by ex2_intro/
 qed-.
 
 (* Basic_2A1: includes: lreq_drop_conf_be *)
 lemma lreq_drops_conf_next: ∀f2,L1,L2. L1 ≡[f2] L2 →
-                            â\88\80b,f,I,K1. â¬\87*[b, f] L1 â\89¡ K1.ⓘ{I} → 𝐔⦃f⦄ →
-                            â\88\80f1. f ~â\8a\9a â«¯f1 â\89¡ f2 →
-                            â\88\83â\88\83K2. â¬\87*[b, f] L2 â\89¡ K2.ⓘ{I} & K1 ≡[f1] K2.
-#f2 #L1 #L2 #HL12 #b #f #I #K1 #HLK1 #Hf #f1 #Hf2
+                            â\88\80b,f,I,K1. â¬\87*[b, f] L1 â\89\98 K1.ⓘ{I} → 𝐔⦃f⦄ →
+                            â\88\80f1. f ~â\8a\9a â\86\91f1 â\89\98 f2 →
+                            â\88\83â\88\83K2. â¬\87*[b, f] L2 â\89\98 K2.ⓘ{I} & K1 ≡[f1] K2.
+#f2 #L1 #L2 #HL12 #b #f #I1 #K1 #HLK1 #Hf #f1 #Hf2
 elim (lreq_drops_trans_next … (lreq_sym … HL12) … HLK1 … Hf2) // -f2 -L1 -Hf
 /3 width=3 by lreq_sym, ex2_intro/
 qed-.
 
 lemma drops_lreq_trans_next: ∀f1,K1,K2. K1 ≡[f1] K2 →
-                             â\88\80b,f,I,L1. â¬\87*[b, f] L1.â\93\98{I} â\89¡ K1 →
-                             â\88\80f2. f ~â\8a\9a f1 â\89¡ â«¯f2 →
-                             â\88\83â\88\83L2. â¬\87*[b, f] L2.â\93\98{I} â\89¡ K2 & L1 ≡[f2] L2 & L1.ⓘ{I} ≡[f] L2.ⓘ{I}.
-#f1 #K1 #K2 #HK12 #b #f #I #L1 #HLK1 #f2 #Hf2
+                             â\88\80b,f,I,L1. â¬\87*[b, f] L1.â\93\98{I} â\89\98 K1 →
+                             â\88\80f2. f ~â\8a\9a f1 â\89\98 â\86\91f2 →
+                             â\88\83â\88\83L2. â¬\87*[b, f] L2.â\93\98{I} â\89\98 K2 & L1 ≡[f2] L2 & L1.ⓘ{I} ≡[f] L2.ⓘ{I}.
+#f1 #K1 #K2 #HK12 #b #f #I1 #L1 #HLK1 #f2 #Hf2
 elim (drops_lexs_trans_next … HK12 … HLK1 … Hf2) -f1 -K1
-/2 width=6 by cfull_lift_sn, ceq_lift_sn, ex3_intro/ qed-.
+/2 width=6 by cfull_lift_sn, ceq_lift_sn/
+#I2 #L2 #HLK2 #HL12 #H >(ceq_ext_inv_eq … H) -I1
+/2 width=4 by ex3_intro/
+qed-.