@@ -6,6 +6,7 @@ Authors: Jean Lo, Yury Kudryashov
66module
77
88public import Mathlib.Analysis.Normed.Module.RCLike.Real
9+ public import Mathlib.Analysis.Normed.Module.RCLike.Basic
910public import Mathlib.Analysis.Seminorm
1011public import Mathlib.Topology.MetricSpace.HausdorffDistance
1112
@@ -19,6 +20,9 @@ is at least `r * ‖x‖` for any `r < 1`. This is `riesz_lemma`.
1920In a nontrivially normed field (with an element `c` of norm `> 1`) and any `R > ‖c‖`, one can
2021guarantee `‖x‖ ≤ R` and `‖x - y‖ ≥ 1` for any `y` in `F`. This is `riesz_lemma_of_norm_lt`.
2122
23+ For a normed space over an `RCLike` field, one can find an element of norm exactly `1` with the same
24+ property. This is `riesz_lemma_one`.
25+
2226A further lemma, `Metric.closedBall_infDist_compl_subset_closure`, finds a *closed* ball within
2327the closure of a set `s` of optimal distance from a point in `x` to the frontier of `s`.
2428-/
@@ -39,7 +43,9 @@ vector with norm 1 whose distance to a closed proper subspace is
3943arbitrarily close to 1. The statement here is in terms of multiples of
4044norms, since in general the existence of an element of norm exactly 1
4145is not guaranteed. For a variant giving an element with norm in `[1, R]`, see
42- `riesz_lemma_of_norm_lt`. -/
46+ `riesz_lemma_of_norm_lt`, and for a variant giving an element with norm
47+ exactly one assuming stronger assumptions on the underlying field, see
48+ `riesz_lemma_of_lt_one`. -/
4349theorem riesz_lemma {F : Subspace 𝕜 E} (hFc : IsClosed (F : Set E)) (hF : ∃ x : E, x ∉ F) {r : ℝ}
4450 (hr : r < 1 ) : ∃ x₀ : E, x₀ ∉ F ∧ ∀ y ∈ F, r * ‖x₀‖ ≤ ‖x₀ - y‖ := by
4551 classical
@@ -75,7 +81,9 @@ theorem riesz_lemma {F : Subspace 𝕜 E} (hFc : IsClosed (F : Set E)) (hF : ∃
7581A version of Riesz lemma: given a strict closed subspace `F`, one may find an element of norm `≤ R`
7682which is at distance at least `1` of every element of `F`. Here, `R` is any given constant
7783strictly larger than the norm of an element of norm `> 1`. For a version without an `R`, see
78- `riesz_lemma`.
84+ `riesz_lemma`, and for a variant giving an element with norm
85+ exactly one assuming stronger assumptions on the underlying field, see
86+ `riesz_lemma_of_lt_one`.
7987
8088Since we are considering a general nontrivially normed field, there may be a gap in possible norms
8189(for instance no element of norm in `(1,2)`). Hence, we cannot allow `R` arbitrarily close to `1`,
@@ -112,3 +120,25 @@ theorem Metric.closedBall_infDist_compl_subset_closure {x : F} {s : Set F} (hx :
112120 exact closure_mono (singleton_subset_iff.2 hx)
113121 · rw [← closure_ball x h₀]
114122 exact closure_mono ball_infDist_compl_subset
123+
124+ /--
125+ A version of Riesz lemma: given a proper closed subspace `F`, one may find an element of norm `1`
126+ which is at distance at least `r` of every element of `F`, for any `r < 1`.
127+ For a version with weaker assumptions on the underlying field, see `riesz_lemma` or
128+ `riesz_lemma_of_norm_lt`.
129+ -/
130+ theorem riesz_lemma_of_lt_one {𝕜 : Type *} [RCLike 𝕜]
131+ {E : Type *} [NormedAddCommGroup E] [NormedSpace 𝕜 E]
132+ {F : Subspace 𝕜 E} (hFc : IsClosed (F : Set E)) (hF : ∃ (x : E), x ∉ F) {r : ℝ} (hr : r < 1 ) :
133+ ∃ x₀ ∉ F, ‖x₀‖ = 1 ∧ ∀ y ∈ F, r ≤ ‖x₀ - y‖ := by
134+ obtain ⟨x₀, hx₀, h⟩ := riesz_lemma hFc hF hr
135+ have hx₀' : x₀ ≠ 0 := by rintro rfl; simp at hx₀
136+ refine ⟨(‖x₀‖⁻¹ : 𝕜) • x₀, ?_, norm_smul_inv_norm hx₀', ?_⟩
137+ · rwa [Submodule.smul_mem_iff]
138+ simpa
139+ intro y hy
140+ have h₂ : ‖(‖x₀‖ : 𝕜)⁻¹ • (x₀ - (‖x₀‖ : 𝕜) • y)‖ = ‖x₀‖⁻¹ * ‖x₀ - (‖x₀‖ : 𝕜) • y‖ := by
141+ rw [norm_smul, norm_inv, norm_algebraMap', norm_norm]
142+ have h₁ := h ((‖x₀‖ : 𝕜) • y) (F.smul_mem _ hy)
143+ rwa [← le_inv_mul_iff₀' (by simpa), ← h₂, smul_sub, inv_smul_smul₀] at h₁
144+ simpa using hx₀'
0 commit comments