@@ -53,19 +53,12 @@ theorem IsGδ.baireSpace_of_dense {s : Set X} (hG : IsGδ s) (hd : Dense s) : Ba
5353 constructor
5454 intro f hof hdf
5555 obtain ⟨V, hV⟩ : ∃ V : ℕ → Set X, (∀ n, IsOpen (V n)) ∧ s = ⋂ n, V n := eq_iInter_nat hG
56- obtain ⟨g, hg1, hg2, hg3⟩ : ∃ g : ℕ → Set X, (∀ n, IsOpen (g n)) ∧ (∀ n, Dense (g n)) ∧
57- ∀ n, f n = Subtype.val ⁻¹' g n := by
58- choose g hg1 hg2 hg3 using fun n => exists_open_dense_of_open_dense_subtype hd (hof n) (hdf n)
59- exact ⟨g, hg1, hg2, fun n => (hg3 n).symm⟩
60- have h_inter_dense : Dense (⋂ n, g n ∩ V n) :=
61- BaireSpace.baire_property (fun n ↦ g n ∩ V n) (fun n => (hg1 n).inter (hV.1 n))
62- (fun n => (hg2 n).inter_of_isOpen_left (hd.mono (by simp [hV.2 , iInter_subset]))
63- (hg1 n))
64- have h_inter_eq : ⋂ n, g n ∩ V n = ⋂ n, f n := by
65- ext
66- simpa [hg3, hV] using ⟨fun h => ⟨fun i => (h i).1 , fun i => (h i).2 ⟩, fun h n => ⟨h.1 n, h.2 n⟩⟩
67- rw [h_inter_eq] at h_inter_dense
68- exact Subtype.dense_iff.mpr fun a _ ↦ h_inter_dense a
56+ choose g hg1 hg2 hg3 using fun n => exists_open_dense_of_open_dense_subtype hd (hof n) (hdf n)
57+ have h_inter_dense : Dense (⋂ n, g n ∩ V n) := BaireSpace.baire_property (fun n ↦ g n ∩ V n)
58+ (fun n => (hg1 n).inter (hV.1 n)) (fun n => (hg2 n).inter_of_isOpen_left
59+ (hd.mono (by simp [hV.2 , iInter_subset])) (hg1 n))
60+ have h_inter_eq : ⋂ n, g n ∩ V n = ⋂ n, f n := by ext; simp_all; grind
61+ exact Subtype.dense_iff.mpr fun a _ ↦ h_inter_eq ▸ h_inter_dense a
6962
7063/-- If `p : Y → X` is an open embedding and `X` is a Baire space, then `Y` is a Baire space. -/
7164theorem Topology.IsOpenEmbedding.baireSpace {Y : Type *} [TopologicalSpace Y] {p : Y → X}
0 commit comments