Zulip Chat Archive
Stream: maths
Topic: metrizability
Yury G. Kudryashov (May 09 2022 at 14:06):
I have a proof of the following theorem:
import topology.metric_space.basic
open set function metric list filter
open_locale nnreal filter uniformity
protected lemma uniform_space.metrizable_uniformity (X : Type*) [uniform_space X]
[is_countably_generated (𝓤 X)] :
∃ I : pseudo_metric_space X, I.to_uniform_space = ‹_› :=
It says that any uniform_space
structure with countably generated uniformity filter is (pseudo)metrizable. I want to add an instance saying that a uniform space with countably generated uniformity filter is metrizable, then replace [uniform_space X] [is_countably_generated (𝓤 X)]
with [metrizable_space X]
here and there (namely, in all lemmas that don't use uniformity structure in their statements). However, docs#topological_space.metrizable_space deals with docs#metric_space, not docs#pseudo_metric_space.
@Sebastien Gouezel What do you think about replacing metrizable_space
with pseudo_metrizable_space
and adding [t?_space]
assumption (I guess, t0_space
is enough) to lemmas that don't work in pseudo metric spaces?
Sebastien Gouezel (May 09 2022 at 15:46):
I'd rather keep the metrizable_space
typeclass as it shows up a lot in many statements on integration. But we can definitely add another pseudo_metrizable_space
typeclass (and add an instance from the former to the latter).
Yury G. Kudryashov (May 09 2022 at 18:48):
BTW, what is the verb for metrizable
? I want to add a tactic similar to tactic#borelize that adds a (pseudo_)metric_space
instance that agrees with an existing uniform_space
or topological_space
structure.
Sebastien Gouezel (May 09 2022 at 18:59):
I'm not sure borelize
is a real word either. The opinion of a native speaker would be much more useful, but I'd probably go for metrize
.
Eric Wieser (May 09 2022 at 18:59):
metrize
or metrify
or metricify
would be my choices (I'm a native speaker)
Yury G. Kudryashov (May 09 2022 at 19:13):
I add a definition in #14053
Jireh Loreaux (May 09 2022 at 22:16):
metrize
and metrify
(but not metricify
) sounded almost equally good to me (also a native speaker), so I did some reading. Turns out this is one of the rare cases where both suffixes are acceptable: "you can do it either way with words stressed on the next-to-last syllable that end in unstressed /i/. But they're the only ones."
I think I have a slight preference for metrize
for the parallelism with metrizable
.
Yury G. Kudryashov (May 30 2022 at 03:58):
@Sebastien Gouezel I'm running into the following problem with metrizable
. I have a lemma in #14052 saying that a uniform_space
structure with a countably generated uniformity filter is pseudo-metrizable. It is natural to use this lemma to add instances uniform_space X → is_countably_generated (𝓤 X) → pseudo_metrizable_space X
and uniform_space X → is_countably_generated (𝓤 X) → t0_space X → metrizable_space X
but the latter instance leads to a cycle.
Yury G. Kudryashov (May 30 2022 at 04:00):
OTOH, if I drop class metrizable_space
, then Lean can't deduce t2_space X
from [pseudo_metrizable_space X] [t0_space X]
.
Yury G. Kudryashov (May 30 2022 at 04:01):
So, we need to use lemma
, not instance
for one of the implications (at least till Lean 4). Which one?
Sebastien Gouezel (May 30 2022 at 06:00):
I'd drop the latter one.
Yury G. Kudryashov (May 30 2022 at 11:27):
uniform_space X → is_countably_generated (𝓤 X) → t0_space X → metrizable_space X
?
Sebastien Gouezel (May 30 2022 at 14:05):
Yes.
Last updated: Dec 20 2023 at 11:08 UTC