Metric spaces #
This file defines metric spaces and shows some of their basic properties.
Many definitions and theorems expected on metric spaces are already introduced on uniform spaces and topological spaces. This includes open and closed sets, compactness, completeness, continuity and uniform continuity.
TODO (anyone): Add "Main results" section.
Implementation notes #
A lot of elementary properties don't require eq_of_dist_eq_zero
, hence are stated and proven
for PseudoMetricSpace
s in PseudoMetric.lean
.
Tags #
metric, pseudo_metric, dist
We now define MetricSpace
, extending PseudoMetricSpace
.
- dist : α → α → ℝ
- edist : α → α → ENNReal
- edist_dist : ∀ (x y : α), PseudoMetricSpace.edist x y = ENNReal.ofReal (dist x y)
- toUniformSpace : UniformSpace α
- uniformity_dist : uniformity α = ⨅ (ε : ℝ), ⨅ (_ : ε > 0), Filter.principal {p : α × α | dist p.1 p.2 < ε}
- toBornology : Bornology α
Instances
Two metric space structures with the same distance coincide.
Construct a metric space structure whose underlying topological space structure (definitionally) agrees which a pre-existing topology which is compatible with a given distance function.
Equations
- MetricSpace.ofDistTopology dist dist_self dist_comm dist_triangle H eq_of_dist_eq_zero = MetricSpace.mk ⋯
Instances For
Deduce the equality of points from the vanishing of the nonnegative distance
Characterize the equality of points as the vanishing of the nonnegative distance
Build a new metric space from an old one where the bundled uniform structure is provably (but typically non-definitionaly) equal to some given uniform structure. See Note [forgetful inheritance]. See Note [reducible non-instances].
Equations
- m.replaceUniformity H = MetricSpace.mk ⋯
Instances For
Build a new metric space from an old one where the bundled topological structure is provably (but typically non-definitionaly) equal to some given topological structure. See Note [forgetful inheritance]. See Note [reducible non-instances].
Equations
- m.replaceTopology H = m.replaceUniformity ⋯
Instances For
Build a new metric space from an old one where the bundled bornology structure is provably (but typically non-definitionaly) equal to some given bornology structure. See Note [forgetful inheritance]. See Note [reducible non-instances].
Equations
- m.replaceBornology H = MetricSpace.mk ⋯
Instances For
Equations
Equations
Additive
, Multiplicative
#
The distance on those type synonyms is inherited without change.
Equations
- instDistMultiplicative = inst
Equations
- instMetricSpaceAdditive = inst
Equations
- instMetricSpaceMultiplicative = inst
Order dual #
The distance on this type synonym is inherited without change.
Equations
- instPseudoMetricSpaceOrderDual_1 = inst
Equations
- instMetricSpaceOrderDual = inst