Zulip Chat Archive
Stream: Is there code for X?
Topic: separatesPoints_continuous
Kalle Kytölä (Mar 31 2024 at 21:56):
Do we have that in reasonable spaces continuous real-valued functions separate points?
This is a direct consequence of Urysohn's lemma docs#exists_continuous_zero_one_of_isClosed, but I expected to find this special case conclusion spelled with docs#Set.SeparatesPoints, since that notion exists. I ended up not needing this, but I was wondering if it exists and if it should exist.
import Mathlib.Topology.UrysohnsLemma
import Mathlib.Data.Complex.Abs
open Set
variable {X : Type*} [TopologicalSpace X]
lemma separatesPoints_continuous_of_normalSpace_of_T1Space [NormalSpace X] [T1Space X] :
SeparatesPoints (Continuous : Set (X → ℝ)) := by
intro x y x_ne_y
obtain ⟨f, f_eq_zero, f_eq_one, _⟩ :=
exists_continuous_zero_one_of_isClosed (isClosed_singleton (x := x)) (isClosed_singleton (x := y))
(disjoint_singleton.mpr x_ne_y)
refine ⟨f, f.continuous, by aesop⟩
Kalle Kytölä (Mar 31 2024 at 22:01):
Interestingly, #minimize_imports
told me that importing Mathlib.Topology.UrysohnsLemma
was not good enough, and I certainly wanted Mathlib.Data.Complex.Abs
, too. :upside_down: I probably did (although removing that second import doesn't break anything...).
Jireh Loreaux (Apr 01 2024 at 01:34):
I don't think we have any spelling phrased in terms of docs#Set.SeparatesPoints, but I just want to point out that docs#T35Space is enough.
Kalle Kytölä (Apr 01 2024 at 22:20):
Ok, so:
import Mathlib.Topology.CompletelyRegular
open Set
variable {X : Type*} [TopologicalSpace X]
lemma separatesPoints_continuous_of_T35Space [T35Space X] :
SeparatesPoints (Continuous : Set (X → ℝ)) := by
intro x y x_ne_y
obtain ⟨f, f_cont, f_zero, f_one⟩ :=
CompletelyRegularSpace.completely_regular x {y} isClosed_singleton x_ne_y
refine ⟨fun x ↦ f x, continuous_subtype_val.comp f_cont, by aesop⟩
Kalle Kytölä (Apr 01 2024 at 22:29):
And although I don't need it now, I decided to open PR #11831, since I'd still expect this spelling to be found in the library.
Matias Heikkilä (Apr 30 2024 at 04:53):
Thank for working on my file @Kalle Kytölä :smile: This actually nudged me to polish some code I hadn't shared.
I would like to prove that docs#stoneCechUnit is a dense embedding for a T35Space X. I have sketched a proof that it's injective (#12536). Feedback welcome :pray:
Matias Heikkilä (May 05 2024 at 12:57):
Let me know if I can in some way help getting some feedback on #12536 :+1:
Johan Commelin (May 06 2024 at 09:30):
Thanks! I left a comment.
Last updated: May 02 2025 at 03:31 UTC