Skip to content

Commit be9f009

Browse files
teorthclaude
andcommitted
feat(Topology/MetricSpace): metric ε-δ form of Heine–Cantor for ContinuousOn on a compact set
Add `ContinuousOn.exists_forall_dist_lt_of_isCompact` and its non-strict variant `ContinuousOn.exists_forall_dist_le_of_isCompact`, unpacking `IsCompact.uniformContinuousOn_of_continuous` through the metric ε-δ characterizations `Metric.uniformContinuousOn_iff(_le)`. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 69b866d commit be9f009

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

Mathlib/Topology/MetricSpace/Pseudo/Lemmas.lean

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ module
88
public import Mathlib.Topology.MetricSpace.Pseudo.Constructions
99
public import Mathlib.Topology.Order.DenselyOrdered
1010
public import Mathlib.Topology.UniformSpace.Compact
11+
public import Mathlib.Topology.UniformSpace.HeineCantor
1112

1213
/-!
1314
# Extra lemmas about pseudo-metric spaces
@@ -125,3 +126,17 @@ theorem lebesgue_number_lemma_of_metric {s : Set α} {ι : Sort*} {c : ι → Se
125126
theorem lebesgue_number_lemma_of_metric_sUnion {s : Set α} {c : Set (Set α)} (hs : IsCompact s)
126127
(hc₁ : ∀ t ∈ c, IsOpen t) (hc₂ : s ⊆ ⋃₀ c) : ∃ δ > 0, ∀ x ∈ s, ∃ t ∈ c, ball x δ ⊆ t := by
127128
rw [sUnion_eq_iUnion] at hc₂; simpa using lebesgue_number_lemma_of_metric hs (by simpa) hc₂
129+
130+
/-- **Heine–Cantor** in metric ε-δ form: a function `f` continuous on a compact set `S` is
131+
uniformly continuous there, so for every `ε > 0` there is a `δ > 0` such that points of `S`
132+
within `δ` are mapped within `ε`. -/
133+
theorem ContinuousOn.exists_forall_dist_lt_of_isCompact {β : Type*} [PseudoMetricSpace β]
134+
{S : Set α} (hS : IsCompact S) {f : α → β} (hf : ContinuousOn f S) {ε : ℝ} (hε : 0 < ε) :
135+
∃ δ > 0, ∀ x ∈ S, ∀ y ∈ S, dist x y < δ → dist (f x) (f y) < ε :=
136+
Metric.uniformContinuousOn_iff.mp (hS.uniformContinuousOn_of_continuous hf) ε hε
137+
138+
/-- Version of `ContinuousOn.exists_forall_dist_lt_of_isCompact` with non-strict inequalities. -/
139+
theorem ContinuousOn.exists_forall_dist_le_of_isCompact {β : Type*} [PseudoMetricSpace β]
140+
{S : Set α} (hS : IsCompact S) {f : α → β} (hf : ContinuousOn f S) {ε : ℝ} (hε : 0 < ε) :
141+
∃ δ > 0, ∀ x ∈ S, ∀ y ∈ S, dist x y ≤ δ → dist (f x) (f y) ≤ ε :=
142+
Metric.uniformContinuousOn_iff_le.mp (hS.uniformContinuousOn_of_continuous hf) ε hε

0 commit comments

Comments
 (0)