@@ -52,7 +52,7 @@ variable [TopologicalSpace X] [TopologicalSpace Y] [TopologicalSpace Z] {K : Set
52
52
53
53
/-- The compact-open topology on the space of continuous maps `C(X, Y)`. -/
54
54
instance compactOpen : TopologicalSpace C(X, Y) :=
55
- .generateFrom <| image2 (fun K U ↦ {f | MapsTo f K U}) {K | IsCompact K} {U | IsOpen U}
55
+ .generateFrom <| image2 (fun K U ↦ {f | MapsTo f K U}) {K | IsCompact K} {U | IsOpen U}
56
56
#align continuous_map.compact_open ContinuousMap.compactOpen
57
57
58
58
/-- Definition of `ContinuousMap.compactOpen`. -/
@@ -200,14 +200,44 @@ lemma isClopen_setOf_mapsTo (hK : IsCompact K) (hU : IsClopen U) :
200
200
IsClopen {f : C(X, Y) | MapsTo f K U} :=
201
201
⟨isClosed_setOf_mapsTo hU.isClosed K, isOpen_setOf_mapsTo hK hU.isOpen⟩
202
202
203
+ @[norm_cast]
204
+ lemma specializes_coe {f g : C(X, Y)} : ⇑f ⤳ ⇑g ↔ f ⤳ g := by
205
+ refine ⟨fun h ↦ ?_, fun h ↦ h.map continuous_coe⟩
206
+ suffices ∀ K, IsCompact K → ∀ U, IsOpen U → MapsTo g K U → MapsTo f K U by
207
+ simpa [specializes_iff_pure, nhds_compactOpen]
208
+ exact fun K _ U hU hg x hx ↦ (h.map (continuous_apply x)).mem_open hU (hg hx)
209
+
210
+ @[norm_cast]
211
+ lemma inseparable_coe {f g : C(X, Y)} : Inseparable (f : X → Y) g ↔ Inseparable f g := by
212
+ simp only [inseparable_iff_specializes_and, specializes_coe]
213
+
203
214
instance [T0Space Y] : T0Space C(X, Y) :=
204
215
t0Space_of_injective_of_continuous DFunLike.coe_injective continuous_coe
205
216
217
+ instance [R0Space Y] : R0Space C(X, Y) where
218
+ specializes_symmetric f g h := by
219
+ rw [← specializes_coe] at h ⊢
220
+ exact h.symm
221
+
206
222
instance [T1Space Y] : T1Space C(X, Y) :=
207
223
t1Space_of_injective_of_continuous DFunLike.coe_injective continuous_coe
208
224
209
- instance [T2Space Y] : T2Space C(X, Y) :=
210
- .of_injective_continuous DFunLike.coe_injective continuous_coe
225
+ instance [R1Space Y] : R1Space C(X, Y) :=
226
+ .of_continuous_specializes_imp continuous_coe fun _ _ ↦ specializes_coe.1
227
+
228
+ instance [T2Space Y] : T2Space C(X, Y) := inferInstance
229
+
230
+ instance [RegularSpace Y] : RegularSpace C(X, Y) :=
231
+ .of_lift'_closure_le fun f ↦ by
232
+ rw [← tendsto_id', tendsto_nhds_compactOpen]
233
+ intro K hK U hU hf
234
+ rcases (hK.image f.continuous).exists_isOpen_closure_subset (hU.mem_nhdsSet.2 hf.image_subset)
235
+ with ⟨V, hVo, hKV, hVU⟩
236
+ filter_upwards [mem_lift' (eventually_mapsTo hK hVo (mapsTo'.2 hKV))] with g hg
237
+ refine ((isClosed_setOf_mapsTo isClosed_closure K).closure_subset ?_).mono_right hVU
238
+ exact closure_mono (fun _ h ↦ h.mono_right subset_closure) hg
239
+
240
+ instance [T3Space Y] : T3Space C(X, Y) := inferInstance
211
241
212
242
end Ev
213
243
0 commit comments