(* Imagen_inversa_de_la_interseccion_general.thy -- Imagen inversa de la intersección general -- José A. Alonso Jiménez -- Sevilla, 1-mayo-2024 -- ------------------------------------------------------------------ *) (* --------------------------------------------------------------------- -- Demostrar que -- f⁻¹[\ᵢ B i] = \ᵢ f⁻¹[Bᵢ] -- ------------------------------------------------------------------ *) theory Imagen_inversa_de_la_interseccion_general imports Main begin (* 1\ demostración *) lemma "f -` (\ i \ I. B i) = (\ i \ I. f -` B i)" proof (rule equalityI) show "f -` (\ i \ I. B i) \ (\ i \ I. f -` B i)" proof (rule subsetI) fix x assume "x \ f -` (\ i \ I. B i)" show "x \ (\ i \ I. f -` B i)" proof (rule INT_I) fix i assume "i \ I" have "f x \ (\ i \ I. B i)" using \x \ f -` (\ i \ I. B i)\ by (rule vimageD) then have "f x \ B i" using \i \ I\ by (rule INT_D) then show "x \ f -` B i" by (rule vimageI2) qed qed next show "(\ i \ I. f -` B i) \ f -` (\ i \ I. B i)" proof (rule subsetI) fix x assume "x \ (\ i \ I. f -` B i)" have "f x \ (\ i \ I. B i)" proof (rule INT_I) fix i assume "i \ I" with \x \ (\ i \ I. f -` B i)\ have "x \ f -` B i" by (rule INT_D) then show "f x \ B i" by (rule vimageD) qed then show "x \ f -` (\ i \ I. B i)" by (rule vimageI2) qed qed (* 2\ demostración *) lemma "f -` (\ i \ I. B i) = (\ i \ I. f -` B i)" proof show "f -` (\ i \ I. B i) \ (\ i \ I. f -` B i)" proof (rule subsetI) fix x assume hx : "x \ f -` (\ i \ I. B i)" show "x \ (\ i \ I. f -` B i)" proof fix i assume "i \ I" have "f x \ (\ i \ I. B i)" using hx by simp then have "f x \ B i" using \i \ I\ by simp then show "x \ f -` B i" by simp qed qed next show "(\ i \ I. f -` B i) \ f -` (\ i \ I. B i)" proof fix x assume "x \ (\ i \ I. f -` B i)" have "f x \ (\ i \ I. B i)" proof fix i assume "i \ I" with \x \ (\ i \ I. f -` B i)\ have "x \ f -` B i" by simp then show "f x \ B i" by simp qed then show "x \ f -` (\ i \ I. B i)" by simp qed qed (* 3 demostración *) lemma "f -` (\ i \ I. B i) = (\ i \ I. f -` B i)" by (simp only: vimage_INT) (* 4\ demostración *) lemma "f -` (\ i \ I. B i) = (\ i \ I. f -` B i)" by auto end