ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
File: Mathlib/Analysis/NormedSpace/PiTensorProduct/ProjectiveSeminorm.lean

full_name: PiTensorProduct.projectiveSeminormAux
code: /-- A lift of the projective seminorm to `FreeAddMonoid (𝕜 × Π i, Eᵢ)`, useful to prove the
properties of `projectiveSeminorm`.
-/
def projectiveSeminormAux : FreeAddMonoid (𝕜 × Π i, E i) → ℝ 
goal: FreeAddMonoid (𝕜 × ((i : ι) → E i)) → ℝ

full_name: PiTensorProduct.projectiveSeminormAux_nonneg
code: theorem projectiveSeminormAux_nonneg (p : FreeAddMonoid (𝕜 × Π i, E i)) :
    0 ≤ projectiveSeminormAux p 
goal: 0 ≤ PiTensorProduct.projectiveSeminormAux p

full_name: PiTensorProduct.projectiveSeminormAux_add_le
code: theorem projectiveSeminormAux_add_le (p q : FreeAddMonoid (𝕜 × Π i, E i)) :
    projectiveSeminormAux (p + q) ≤ projectiveSeminormAux p + projectiveSeminormAux q 
goal: PiTensorProduct.projectiveSeminormAux (p + q) ≤
  PiTensorProduct.projectiveSeminormAux p + PiTensorProduct.projectiveSeminormAux q

full_name: PiTensorProduct.projectiveSeminormAux_smul
code: theorem projectiveSeminormAux_smul (p : FreeAddMonoid (𝕜 × Π i, E i)) (a : 𝕜) :
    projectiveSeminormAux (List.map (fun (y : 𝕜 × Π i, E i) ↦ (a * y.1, y.2)) p) =
    ‖a‖ * projectiveSeminormAux p 
goal: PiTensorProduct.projectiveSeminormAux (List.map (fun y => (a * y.1, y.2)) p) =
  ‖a‖ * PiTensorProduct.projectiveSeminormAux p

full_name: PiTensorProduct.bddBelow_projectiveSemiNormAux
code: theorem bddBelow_projectiveSemiNormAux (x : ⨂[𝕜] i, E i) :
    BddBelow (Set.range (fun (p : lifts x) ↦ projectiveSeminormAux p.1)) 
goal: BddBelow (Set.range fun p => PiTensorProduct.projectiveSeminormAux ↑p)

full_name: PiTensorProduct.projectiveSeminorm
code: /-- The projective seminorm on `⨂[𝕜] i, Eᵢ`. It sends an element `x` of `⨂[𝕜] i, Eᵢ` to the
infimum over all expressions of `x` as `∑ j, ⨂ₜ[𝕜] mⱼ i` (with the `mⱼ` ∈ `Π i, Eᵢ`)
of `∑ j, Π i, ‖mⱼ i‖`.
-/
noncomputable def projectiveSeminorm : Seminorm 𝕜 (⨂[𝕜] i, E i) 
goal: Seminorm 𝕜 (⨂[𝕜] (i : ι), E i)

full_name: PiTensorProduct.projectiveSeminorm_apply
code: theorem projectiveSeminorm_apply (x : ⨂[𝕜] i, E i) :
    projectiveSeminorm x = iInf (fun (p : lifts x) ↦ projectiveSeminormAux p.1) 
goal: PiTensorProduct.projectiveSeminorm x = ⨅ p, PiTensorProduct.projectiveSeminormAux ↑p

full_name: PiTensorProduct.projectiveSeminorm_tprod_le
code: theorem projectiveSeminorm_tprod_le (m : Π i, E i) :
    projectiveSeminorm (⨂ₜ[𝕜] i, m i) ≤ ∏ i, ‖m i‖ 
goal: PiTensorProduct.projectiveSeminorm (⨂ₜ[𝕜] (i : ι), m i) ≤ ∏ i : ι, ‖m i‖

full_name: PiTensorProduct.norm_eval_le_projectiveSeminorm
code: theorem norm_eval_le_projectiveSeminorm (x : ⨂[𝕜] i, E i) (G : Type*) [SeminormedAddCommGroup G]
    [NormedSpace 𝕜 G] (f : ContinuousMultilinearMap 𝕜 E G) :
    ‖lift f.toMultilinearMap x‖ ≤ projectiveSeminorm x * ‖f‖ 
goal: ‖(PiTensorProduct.lift f.toMultilinearMap) x‖ ≤ PiTensorProduct.projectiveSeminorm x * ‖f‖
File: Mathlib/Analysis/NormedSpace/DualNumber.lean

full_name: DualNumber.exp_eps
code: @[simp]
theorem exp_eps : exp 𝕜 (eps : DualNumber R) = 1 + eps 
goal: NormedSpace.exp 𝕜 DualNumber.eps = 1 + DualNumber.eps

full_name: DualNumber.exp_smul_eps
code: @[simp]
theorem exp_smul_eps (r : R) : exp 𝕜 (r • eps : DualNumber R) = 1 + r • eps 
goal: NormedSpace.exp 𝕜 (r • DualNumber.eps) = 1 + r • DualNumber.eps
File: Mathlib/Analysis/NormedSpace/MazurUlam.lean

full_name: IsometryEquiv.midpoint_fixed
code: /-- If an isometric self-homeomorphism of a normed vector space over `ℝ` fixes `x` and `y`,
then it fixes the midpoint of `[x, y]`. This is a lemma for a more general Mazur-Ulam theorem,
see below. -/
theorem midpoint_fixed {x y : PE} :
    ∀ e : PE ≃ᵢ PE, e x = x → e y = y → e (midpoint ℝ x y) = midpoint ℝ x y 
goal: e x = x → e y = y → e (midpoint ℝ x y) = midpoint ℝ x y

full_name: IsometryEquiv.map_midpoint
code: /-- A bijective isometry sends midpoints to midpoints. -/
theorem map_midpoint (f : PE ≃ᵢ PF) (x y : PE) : f (midpoint ℝ x y) = midpoint ℝ (f x) (f y) 
goal: f (midpoint ℝ x y) = midpoint ℝ (f x) (f y)

full_name: IsometryEquiv.toRealLinearIsometryEquivOfMapZero
code: /-- **Mazur-Ulam Theorem**: if `f` is an isometric bijection between two normed vector spaces
over `ℝ` and `f 0 = 0`, then `f` is a linear isometry equivalence. -/
def toRealLinearIsometryEquivOfMapZero (f : E ≃ᵢ F) (h0 : f 0 = 0) : E ≃ₗᵢ[ℝ] F 
goal: E ≃ₗᵢ[ℝ] F

full_name: IsometryEquiv.coe_toRealLinearIsometryEquivOfMapZero
code: @[simp]
theorem coe_toRealLinearIsometryEquivOfMapZero (f : E ≃ᵢ F) (h0 : f 0 = 0) :
    ⇑(f.toRealLinearIsometryEquivOfMapZero h0) = f 
goal: ⇑(f.toRealLinearIsometryEquivOfMapZero h0) = ⇑f

full_name: IsometryEquiv.coe_toRealLinearIsometryEquivOfMapZero_symm
code: @[simp]
theorem coe_toRealLinearIsometryEquivOfMapZero_symm (f : E ≃ᵢ F) (h0 : f 0 = 0) :
    ⇑(f.toRealLinearIsometryEquivOfMapZero h0).symm = f.symm 
goal: ⇑(f.toRealLinearIsometryEquivOfMapZero h0).symm = ⇑f.symm

full_name: IsometryEquiv.toRealLinearIsometryEquiv
code: /-- **Mazur-Ulam Theorem**: if `f` is an isometric bijection between two normed vector spaces
over `ℝ`, then `x ↦ f x - f 0` is a linear isometry equivalence. -/
def toRealLinearIsometryEquiv (f : E ≃ᵢ F) : E ≃ₗᵢ[ℝ] F 
goal: E ≃ₗᵢ[ℝ] F

full_name: IsometryEquiv.toRealLinearIsometryEquiv_apply
code: @[simp]
theorem toRealLinearIsometryEquiv_apply (f : E ≃ᵢ F) (x : E) :
    (f.toRealLinearIsometryEquiv : E → F) x = f x - f 0 
goal: f.toRealLinearIsometryEquiv x = f x - f 0

full_name: IsometryEquiv.toRealLinearIsometryEquiv_symm_apply
code: @[simp]
theorem toRealLinearIsometryEquiv_symm_apply (f : E ≃ᵢ F) (y : F) :
    (f.toRealLinearIsometryEquiv.symm : F → E) y = f.symm (y + f 0) 
goal: f.toRealLinearIsometryEquiv.symm y = f.symm (y + f 0)

full_name: IsometryEquiv.toRealAffineIsometryEquiv
code: /-- **Mazur-Ulam Theorem**: if `f` is an isometric bijection between two normed add-torsors over
normed vector spaces over `ℝ`, then `f` is an affine isometry equivalence. -/
def toRealAffineIsometryEquiv (f : PE ≃ᵢ PF) : PE ≃ᵃⁱ[ℝ] PF 
goal: PE ≃ᵃⁱ[ℝ] PF

full_name: IsometryEquiv.coeFn_toRealAffineIsometryEquiv
code: @[simp]
theorem coeFn_toRealAffineIsometryEquiv (f : PE ≃ᵢ PF) : ⇑f.toRealAffineIsometryEquiv = f 
goal: ⇑f.toRealAffineIsometryEquiv = ⇑f

full_name: IsometryEquiv.coe_toRealAffineIsometryEquiv
code: @[simp]
theorem coe_toRealAffineIsometryEquiv (f : PE ≃ᵢ PF) :
    f.toRealAffineIsometryEquiv.toIsometryEquiv = f 
goal: f.toRealAffineIsometryEquiv.toIsometryEquiv = f
File: Mathlib/Analysis/NormedSpace/SphereNormEquiv.lean

full_name: homeomorphUnitSphereProd
code: /-- The natural homeomorphism between nonzero elements of a normed space `E`
and `Metric.sphere (0 : E) 1 × Set.Ioi (0 : ℝ)`.

The forward map sends `⟨x, hx⟩` to `⟨‖x‖⁻¹ • x, ‖x‖⟩`,
the inverse map sends `(x, r)` to `r • x`.

One may think about it as generalization of polar coordinates to any normed space. -/
@[simps apply_fst_coe apply_snd_coe symm_apply_coe]
noncomputable def homeomorphUnitSphereProd :
    ({0}ᶜ : Set E) ≃ₜ (sphere (0 : E) 1 × Ioi (0 : ℝ)) 
goal: ↑{0}ᶜ ≃ₜ ↑(Metric.sphere 0 1) × ↑(Set.Ioi 0)

full_name: homeomorphUnitSphereProd_apply_snd_coe
code: /-- The natural homeomorphism between nonzero elements of a normed space `E`
and `Metric.sphere (0 : E) 1 × Set.Ioi (0 : ℝ)`.

The forward map sends `⟨x, hx⟩` to `⟨‖x‖⁻¹ • x, ‖x‖⟩`,
the inverse map sends `(x, r)` to `r • x`.

One may think about it as generalization of polar coordinates to any normed space. -/
@[simps apply_fst_coe apply_snd_coe symm_apply_coe]
noncomputable def homeomorphUnitSphereProd :
    ({0}ᶜ : Set E) ≃ₜ (sphere (0 : E) 1 × Ioi (0 : ℝ)) 
goal: ↑((homeomorphUnitSphereProd E) x).2 = ‖↑x‖

full_name: homeomorphUnitSphereProd_apply_fst_coe
code: /-- The natural homeomorphism between nonzero elements of a normed space `E`
and `Metric.sphere (0 : E) 1 × Set.Ioi (0 : ℝ)`.

The forward map sends `⟨x, hx⟩` to `⟨‖x‖⁻¹ • x, ‖x‖⟩`,
the inverse map sends `(x, r)` to `r • x`.

One may think about it as generalization of polar coordinates to any normed space. -/
@[simps apply_fst_coe apply_snd_coe symm_apply_coe]
noncomputable def homeomorphUnitSphereProd :
    ({0}ᶜ : Set E) ≃ₜ (sphere (0 : E) 1 × Ioi (0 : ℝ)) 
goal: ↑((homeomorphUnitSphereProd E) x).1 = ‖↑x‖⁻¹ • ↑x

full_name: homeomorphUnitSphereProd_symm_apply_coe
code: /-- The natural homeomorphism between nonzero elements of a normed space `E`
and `Metric.sphere (0 : E) 1 × Set.Ioi (0 : ℝ)`.

The forward map sends `⟨x, hx⟩` to `⟨‖x‖⁻¹ • x, ‖x‖⟩`,
the inverse map sends `(x, r)` to `r • x`.

One may think about it as generalization of polar coordinates to any normed space. -/
@[simps apply_fst_coe apply_snd_coe symm_apply_coe]
noncomputable def homeomorphUnitSphereProd :
    ({0}ᶜ : Set E) ≃ₜ (sphere (0 : E) 1 × Ioi (0 : ℝ)) 
goal: ↑((homeomorphUnitSphereProd E).symm x) = ↑x.2 • ↑x.1
File: Mathlib/Analysis/NormedSpace/Connected.lean

full_name: Set.Countable.isPathConnected_compl_of_one_lt_rank
code: /-- In a real vector space of dimension `> 1`, the complement of any countable set is path
connected. -/
theorem Set.Countable.isPathConnected_compl_of_one_lt_rank
    (h : 1 < Module.rank ℝ E) {s : Set E} (hs : s.Countable) :
    IsPathConnected sᶜ 
goal: IsPathConnected sᶜ

full_name: Set.Countable.isConnected_compl_of_one_lt_rank
code: /-- In a real vector space of dimension `> 1`, the complement of any countable set is
connected. -/
theorem Set.Countable.isConnected_compl_of_one_lt_rank (h : 1 < Module.rank ℝ E) {s : Set E}
    (hs : s.Countable) : IsConnected sᶜ 
goal: IsConnected sᶜ

full_name: isPathConnected_compl_singleton_of_one_lt_rank
code: /-- In a real vector space of dimension `> 1`, the complement of any singleton is path-connected. -/
theorem isPathConnected_compl_singleton_of_one_lt_rank (h : 1 < Module.rank ℝ E) (x : E) :
    IsPathConnected {x}ᶜ 
goal: IsPathConnected {x}ᶜ

full_name: isConnected_compl_singleton_of_one_lt_rank
code: /-- In a real vector space of dimension `> 1`, the complement of a singleton is connected. -/
theorem isConnected_compl_singleton_of_one_lt_rank (h : 1 < Module.rank ℝ E) (x : E) :
    IsConnected {x}ᶜ 
goal: IsConnected {x}ᶜ

full_name: isPathConnected_sphere
code: /-- In a real vector space of dimension `> 1`, any sphere of nonnegative radius is
path connected. -/
theorem isPathConnected_sphere (h : 1 < Module.rank ℝ E) (x : E) {r : ℝ} (hr : 0 ≤ r) :
    IsPathConnected (sphere x r) 
goal: IsPathConnected (Metric.sphere x r)

full_name: isConnected_sphere
code: /-- In a real vector space of dimension `> 1`, any sphere of nonnegative radius is connected. -/
theorem isConnected_sphere (h : 1 < Module.rank ℝ E) (x : E) {r : ℝ} (hr : 0 ≤ r) :
    IsConnected (sphere x r) 
goal: IsConnected (Metric.sphere x r)

full_name: isPreconnected_sphere
code: /-- In a real vector space of dimension `> 1`, any sphere is preconnected. -/
theorem isPreconnected_sphere (h : 1 < Module.rank ℝ E) (x : E) (r : ℝ) :
    IsPreconnected (sphere x r) 
goal: IsPreconnected (Metric.sphere x r)

full_name: isPathConnected_compl_of_one_lt_codim
code: /-- Let `E` be a linear subspace in a real vector space.
If `E` has codimension at least two, its complement is path-connected. -/
theorem isPathConnected_compl_of_one_lt_codim {E : Submodule ℝ F}
    (hcodim : 1 < Module.rank ℝ (F ⧸ E)) : IsPathConnected (Eᶜ : Set F) 
goal: IsPathConnected (↑E)ᶜ

full_name: isConnected_compl_of_one_lt_codim
code: /-- Let `E` be a linear subspace in a real vector space.
If `E` has codimension at least two, its complement is connected. -/
theorem isConnected_compl_of_one_lt_codim {E : Submodule ℝ F} (hcodim : 1 < Module.rank ℝ (F ⧸ E)) :
    IsConnected (Eᶜ : Set F) 
goal: IsConnected (↑E)ᶜ

full_name: Submodule.connectedComponentIn_eq_self_of_one_lt_codim
code: theorem Submodule.connectedComponentIn_eq_self_of_one_lt_codim (E : Submodule ℝ F)
    (hcodim : 1 < Module.rank ℝ (F ⧸ E)) {x : F} (hx : x ∉ E) :
    connectedComponentIn ((E : Set F)ᶜ) x = (E : Set F)ᶜ 
goal: connectedComponentIn (↑E)ᶜ x = (↑E)ᶜ
File: Mathlib/Analysis/NormedSpace/RCLike.lean

full_name: RCLike.norm_coe_norm
code: theorem RCLike.norm_coe_norm {z : E} : ‖(‖z‖ : 𝕜)‖ = ‖z‖ 
goal: ‖↑‖z‖‖ = ‖z‖

full_name: norm_smul_inv_norm
code: /-- Lemma to normalize a vector in a normed space `E` over either `ℂ` or `ℝ` to unit length. -/
@[simp]
theorem norm_smul_inv_norm {x : E} (hx : x ≠ 0) : ‖(‖x‖⁻¹ : 𝕜) • x‖ = 1 
goal: ‖(↑‖x‖)⁻¹ • x‖ = 1

full_name: norm_smul_inv_norm'
code: /-- Lemma to normalize a vector in a normed space `E` over either `ℂ` or `ℝ` to length `r`. -/
theorem norm_smul_inv_norm' {r : ℝ} (r_nonneg : 0 ≤ r) {x : E} (hx : x ≠ 0) :
    ‖((r : 𝕜) * (‖x‖ : 𝕜)⁻¹) • x‖ = r 
goal: ‖(↑r * (↑‖x‖)⁻¹) • x‖ = r

full_name: LinearMap.bound_of_sphere_bound
code: theorem LinearMap.bound_of_sphere_bound {r : ℝ} (r_pos : 0 < r) (c : ℝ) (f : E →ₗ[𝕜] 𝕜)
    (h : ∀ z ∈ sphere (0 : E) r, ‖f z‖ ≤ c) (z : E) : ‖f z‖ ≤ c / r * ‖z‖ 
goal: ‖f z‖ ≤ c / r * ‖z‖

full_name: LinearMap.bound_of_ball_bound'
code: /-- `LinearMap.bound_of_ball_bound` is a version of this over arbitrary nontrivially normed fields.
It produces a less precise bound so we keep both versions. -/
theorem LinearMap.bound_of_ball_bound' {r : ℝ} (r_pos : 0 < r) (c : ℝ) (f : E →ₗ[𝕜] 𝕜)
    (h : ∀ z ∈ closedBall (0 : E) r, ‖f z‖ ≤ c) (z : E) : ‖f z‖ ≤ c / r * ‖z‖ 
goal: ‖f z‖ ≤ c / r * ‖z‖

full_name: ContinuousLinearMap.opNorm_bound_of_ball_bound
code: theorem ContinuousLinearMap.opNorm_bound_of_ball_bound {r : ℝ} (r_pos : 0 < r) (c : ℝ)
    (f : E →L[𝕜] 𝕜) (h : ∀ z ∈ closedBall (0 : E) r, ‖f z‖ ≤ c) : ‖f‖ ≤ c / r 
goal: ‖f‖ ≤ c / r

full_name: NormedSpace.sphere_nonempty_rclike
code: theorem NormedSpace.sphere_nonempty_rclike [Nontrivial E] {r : ℝ} (hr : 0 ≤ r) :
    Nonempty (sphere (0 : E) r) 
goal: Nonempty ↑(Metric.sphere 0 r)
File: Mathlib/Analysis/NormedSpace/RieszLemma.lean

full_name: riesz_lemma
code: /-- Riesz's lemma, which usually states that it is possible to find a
vector with norm 1 whose distance to a closed proper subspace is
arbitrarily close to 1. The statement here is in terms of multiples of
norms, since in general the existence of an element of norm exactly 1
is not guaranteed. For a variant giving an element with norm in `[1, R]`, see
`riesz_lemma_of_norm_lt`. -/
theorem riesz_lemma {F : Subspace 𝕜 E} (hFc : IsClosed (F : Set E)) (hF : ∃ x : E, x ∉ F) {r : ℝ}
    (hr : r < 1) : ∃ x₀ : E, x₀ ∉ F ∧ ∀ y ∈ F, r * ‖x₀‖ ≤ ‖x₀ - y‖ 
goal: ∃ x₀ ∉ F, ∀ y ∈ F, r * ‖x₀‖ ≤ ‖x₀ - y‖

full_name: riesz_lemma_of_norm_lt
code: /--
A version of Riesz lemma: given a strict closed subspace `F`, one may find an element of norm `≤ R`
which is at distance at least `1` of every element of `F`. Here, `R` is any given constant
strictly larger than the norm of an element of norm `> 1`. For a version without an `R`, see
`riesz_lemma`.

Since we are considering a general nontrivially normed field, there may be a gap in possible norms
(for instance no element of norm in `(1,2)`). Hence, we can not allow `R` arbitrarily close to `1`,
and require `R > ‖c‖` for some `c : 𝕜` with norm `> 1`.
-/
theorem riesz_lemma_of_norm_lt {c : 𝕜} (hc : 1 < ‖c‖) {R : ℝ} (hR : ‖c‖ < R) {F : Subspace 𝕜 E}
    (hFc : IsClosed (F : Set E)) (hF : ∃ x : E, x ∉ F) :
    ∃ x₀ : E, ‖x₀‖ ≤ R ∧ ∀ y ∈ F, 1 ≤ ‖x₀ - y‖ 
goal: ∃ x₀, ‖x₀‖ ≤ R ∧ ∀ y ∈ F, 1 ≤ ‖x₀ - y‖

full_name: Metric.closedBall_infDist_compl_subset_closure
code: theorem Metric.closedBall_infDist_compl_subset_closure {x : F} {s : Set F} (hx : x ∈ s) :
    closedBall x (infDist x sᶜ) ⊆ closure s 
goal: Metric.closedBall x (Metric.infDist x sᶜ) ⊆ closure s
File: Mathlib/Analysis/SumOverResidueClass.lean

full_name: Finset.sum_indicator_mod
code: lemma Finset.sum_indicator_mod {R : Type*} [AddCommMonoid R] (m : ℕ) [NeZero m] (f : ℕ → R) :
    f = ∑ a : ZMod m, {n : ℕ | (n : ZMod m) = a}.indicator f 
goal: f = ∑ a : ZMod m, {n | ↑n = a}.indicator f

full_name: summable_indicator_mod_iff_summable
code: /-- A sequence `f` with values in an additive topological group `R` is summable on the
residue class of `k` mod `m` if and only if `f (m*n + k)` is summable. -/
lemma summable_indicator_mod_iff_summable {R : Type*} [AddCommGroup R] [TopologicalSpace R]
    [TopologicalAddGroup R] (m : ℕ) [hm : NeZero m] (k : ℕ) (f : ℕ → R) :
    Summable ({n : ℕ | (n : ZMod m) = k}.indicator f) ↔ Summable fun n ↦ f (m * n + k) 
goal: Summable ({n | ↑n = ↑k}.indicator f) ↔ Summable fun n => f (m * n + k)

full_name: not_summable_of_antitone_of_neg
code: /-- If `f : ℕ → ℝ` is decreasing and has a negative term, then `f` is not summable. -/
lemma not_summable_of_antitone_of_neg {f : ℕ → ℝ} (hf : Antitone f) {n : ℕ} (hn : f n < 0) :
    ¬ Summable f 
goal: ¬Summable f

full_name: not_summable_indicator_mod_of_antitone_of_neg
code: /-- If `f : ℕ → ℝ` is decreasing and has a negative term, then `f` restricted to a residue
class is not summable. -/
lemma not_summable_indicator_mod_of_antitone_of_neg {m : ℕ} [hm : NeZero m] {f : ℕ → ℝ}
    (hf : Antitone f) {n : ℕ} (hn : f n < 0) (k : ZMod m) :
    ¬ Summable ({n : ℕ | (n : ZMod m) = k}.indicator f) 
goal: ¬Summable ({n | ↑n = k}.indicator f)

full_name: summable_indicator_mod_iff_summable_indicator_mod
code: /-- If a decreasing sequence of real numbers is summable on one residue class
modulo `m`, then it is also summable on every other residue class mod `m`. -/
lemma summable_indicator_mod_iff_summable_indicator_mod {m : ℕ} [NeZero m] {f : ℕ → ℝ}
    (hf : Antitone f) {k : ZMod m} (l : ZMod m)
    (hs : Summable ({n : ℕ | (n : ZMod m) = k}.indicator f)) :
    Summable ({n : ℕ | (n : ZMod m) = l}.indicator f) 
goal: Summable ({n | ↑n = l}.indicator f)

full_name: summable_indicator_mod_iff
code: /-- A decreasing sequence of real numbers is summable on a residue class
if and only if it is summable. -/
lemma summable_indicator_mod_iff {m : ℕ} [NeZero m] {f : ℕ → ℝ} (hf : Antitone f) (k : ZMod m) :
    Summable ({n : ℕ | (n : ZMod m) = k}.indicator f) ↔ Summable f 
goal: Summable ({n | ↑n = k}.indicator f) ↔ Summable f
File: Mathlib/Analysis/NormedSpace/HahnBanach/Extension.lean

full_name: Real.exists_extension_norm_eq
code: /-- **Hahn-Banach theorem** for continuous linear functions over `ℝ`.
See also `exists_extension_norm_eq` in the root namespace for a more general version
that works both for `ℝ` and `ℂ`. -/
theorem exists_extension_norm_eq (p : Subspace ℝ E) (f : p →L[ℝ] ℝ) :
    ∃ g : E →L[ℝ] ℝ, (∀ x : p, g x = f x) ∧ ‖g‖ = ‖f‖ 
goal: ∃ g, (∀ (x : ↥p), g ↑x = f x) ∧ ‖g‖ = ‖f‖

full_name: exists_extension_norm_eq
code: /-- **Hahn-Banach theorem** for continuous linear functions over `𝕜` satisfying `RCLike 𝕜`. -/
theorem exists_extension_norm_eq (p : Subspace 𝕜 E) (f : p →L[𝕜] 𝕜) :
    ∃ g : E →L[𝕜] 𝕜, (∀ x : p, g x = f x) ∧ ‖g‖ = ‖f‖ 
goal: ∃ g, (∀ (x : ↥p), g ↑x = f x) ∧ ‖g‖ = ‖f‖

full_name: ContinuousLinearMap.exist_extension_of_finiteDimensional_range
code: /-- Corollary of the **Hahn-Banach theorem**: if `f : p → F` is a continuous linear map
from a submodule of a normed space `E` over `𝕜`, `𝕜 = ℝ` or `𝕜 = ℂ`,
with a finite dimensional range,
then `f` admits an extension to a continuous linear map `E → F`.

Note that contrary to the case `F = 𝕜`, see `exists_extension_norm_eq`,
we provide no estimates on the norm of the extension.
-/
lemma ContinuousLinearMap.exist_extension_of_finiteDimensional_range {p : Submodule 𝕜 E}
    (f : p →L[𝕜] F) [FiniteDimensional 𝕜 (LinearMap.range f)] :
    ∃ g : E →L[𝕜] F, f = g.comp p.subtypeL 
goal: ∃ g, f = g.comp p.subtypeL

full_name: Submodule.ClosedComplemented.of_finiteDimensional
code: /-- A finite dimensional submodule over `ℝ` or `ℂ` is `Submodule.ClosedComplemented`. -/
lemma Submodule.ClosedComplemented.of_finiteDimensional (p : Submodule 𝕜 F)
    [FiniteDimensional 𝕜 p] : p.ClosedComplemented 
goal: p.ClosedComplemented

full_name: coord_norm'
code: theorem coord_norm' {x : E} (h : x ≠ 0) : ‖(‖x‖ : 𝕜) • coord 𝕜 x h‖ = 1 
goal: ‖↑‖x‖ • ContinuousLinearEquiv.coord 𝕜 x h‖ = 1

full_name: exists_dual_vector
code: /-- Corollary of Hahn-Banach. Given a nonzero element `x` of a normed space, there exists an
    element of the dual space, of norm `1`, whose value on `x` is `‖x‖`. -/
theorem exists_dual_vector (x : E) (h : x ≠ 0) : ∃ g : E →L[𝕜] 𝕜, ‖g‖ = 1 ∧ g x = ‖x‖ 
goal: ∃ g, ‖g‖ = 1 ∧ g x = ↑‖x‖

full_name: exists_dual_vector'
code: /-- Variant of Hahn-Banach, eliminating the hypothesis that `x` be nonzero, and choosing
    the dual element arbitrarily when `x = 0`. -/
theorem exists_dual_vector' [Nontrivial E] (x : E) : ∃ g : E →L[𝕜] 𝕜, ‖g‖ = 1 ∧ g x = ‖x‖ 
goal: ∃ g, ‖g‖ = 1 ∧ g x = ↑‖x‖

full_name: exists_dual_vector''
code: /-- Variant of Hahn-Banach, eliminating the hypothesis that `x` be nonzero, but only ensuring that
    the dual element has norm at most `1` (this can not be improved for the trivial
    vector space). -/
theorem exists_dual_vector'' (x : E) : ∃ g : E →L[𝕜] 𝕜, ‖g‖ ≤ 1 ∧ g x = ‖x‖ 
goal: ∃ g, ‖g‖ ≤ 1 ∧ g x = ↑‖x‖
File: Mathlib/Analysis/NormedSpace/Extend.lean

full_name: LinearMap.extendTo𝕜'
code: /-- Extend `fr : F →ₗ[ℝ] ℝ` to `F →ₗ[𝕜] 𝕜` in a way that will also be continuous and have its norm
bounded by `‖fr‖` if `fr` is continuous. -/
noncomputable def extendTo𝕜' (fr : F →ₗ[ℝ] ℝ) : F →ₗ[𝕜] 𝕜 
goal: F →ₗ[𝕜] 𝕜

full_name: LinearMap.extendTo𝕜'_apply
code: theorem extendTo𝕜'_apply (fr : F →ₗ[ℝ] ℝ) (x : F) :
    fr.extendTo𝕜' x = (fr x : 𝕜) - (I : 𝕜) * (fr ((I : 𝕜) • x) : 𝕜) 
goal: fr.extendTo𝕜' x = ↑(fr x) - RCLike.I * ↑(fr (RCLike.I • x))

full_name: LinearMap.extendTo𝕜'_apply_re
code: @[simp]
theorem extendTo𝕜'_apply_re (fr : F →ₗ[ℝ] ℝ) (x : F) : re (fr.extendTo𝕜' x : 𝕜) = fr x 
goal: RCLike.re (fr.extendTo𝕜' x) = fr x

full_name: LinearMap.norm_extendTo𝕜'_apply_sq
code: theorem norm_extendTo𝕜'_apply_sq (fr : F →ₗ[ℝ] ℝ) (x : F) :
    ‖(fr.extendTo𝕜' x : 𝕜)‖ ^ 2 = fr (conj (fr.extendTo𝕜' x : 𝕜) • x) 
goal: ‖fr.extendTo𝕜' x‖ ^ 2 = fr ((starRingEnd 𝕜) (fr.extendTo𝕜' x) • x)

full_name: ContinuousLinearMap.norm_extendTo𝕜'_bound
code: /-- The norm of the extension is bounded by `‖fr‖`. -/
theorem norm_extendTo𝕜'_bound (fr : F →L[ℝ] ℝ) (x : F) :
    ‖(fr.toLinearMap.extendTo𝕜' x : 𝕜)‖ ≤ ‖fr‖ * ‖x‖ 
goal: ‖(↑fr).extendTo𝕜' x‖ ≤ ‖fr‖ * ‖x‖

full_name: ContinuousLinearMap.extendTo𝕜'
code: /-- Extend `fr : F →L[ℝ] ℝ` to `F →L[𝕜] 𝕜`. -/
noncomputable def extendTo𝕜' (fr : F →L[ℝ] ℝ) : F →L[𝕜] 𝕜 
goal: F →L[𝕜] 𝕜

full_name: ContinuousLinearMap.extendTo𝕜'_apply
code: theorem extendTo𝕜'_apply (fr : F →L[ℝ] ℝ) (x : F) :
    fr.extendTo𝕜' x = (fr x : 𝕜) - (I : 𝕜) * (fr ((I : 𝕜) • x) : 𝕜) 
goal: fr.extendTo𝕜' x = ↑(fr x) - RCLike.I * ↑(fr (RCLike.I • x))

full_name: ContinuousLinearMap.norm_extendTo𝕜'
code: @[simp]
theorem norm_extendTo𝕜' (fr : F →L[ℝ] ℝ) : ‖(fr.extendTo𝕜' : F →L[𝕜] 𝕜)‖ = ‖fr‖ 
goal: ‖fr.extendTo𝕜'‖ = ‖fr‖

full_name: instNormedSpaceRestrictScalarsReal
code: instance : NormedSpace 𝕜 (RestrictScalars ℝ 𝕜 F) 
goal: NormedSpace 𝕜 (RestrictScalars ℝ 𝕜 F)

full_name: LinearMap.extendTo𝕜
code: /-- Extend `fr : RestrictScalars ℝ 𝕜 F →ₗ[ℝ] ℝ` to `F →ₗ[𝕜] 𝕜`. -/
noncomputable def LinearMap.extendTo𝕜 (fr : RestrictScalars ℝ 𝕜 F →ₗ[ℝ] ℝ) : F →ₗ[𝕜] 𝕜 
goal: F →ₗ[𝕜] 𝕜

full_name: LinearMap.extendTo𝕜_apply
code: theorem LinearMap.extendTo𝕜_apply (fr : RestrictScalars ℝ 𝕜 F →ₗ[ℝ] ℝ) (x : F) :
    fr.extendTo𝕜 x = (fr x : 𝕜) - (I : 𝕜) * (fr ((I : 𝕜) • x) : 𝕜) 
goal: fr.extendTo𝕜 x = ↑(fr x) - RCLike.I * ↑(fr (RCLike.I • x))

full_name: ContinuousLinearMap.extendTo𝕜
code: /-- Extend `fr : RestrictScalars ℝ 𝕜 F →L[ℝ] ℝ` to `F →L[𝕜] 𝕜`. -/
noncomputable def ContinuousLinearMap.extendTo𝕜 (fr : RestrictScalars ℝ 𝕜 F →L[ℝ] ℝ) : F →L[𝕜] 𝕜 
goal: F →L[𝕜] 𝕜

full_name: ContinuousLinearMap.extendTo𝕜_apply
code: theorem ContinuousLinearMap.extendTo𝕜_apply (fr : RestrictScalars ℝ 𝕜 F →L[ℝ] ℝ) (x : F) :
    fr.extendTo𝕜 x = (fr x : 𝕜) - (I : 𝕜) * (fr ((I : 𝕜) • x) : 𝕜) 
goal: fr.extendTo𝕜 x = ↑(fr x) - RCLike.I * ↑(fr (RCLike.I • x))

full_name: ContinuousLinearMap.norm_extendTo𝕜
code: @[simp]
theorem ContinuousLinearMap.norm_extendTo𝕜 (fr : RestrictScalars ℝ 𝕜 F →L[ℝ] ℝ) :
    ‖fr.extendTo𝕜‖ = ‖fr‖ 
goal: ‖fr.extendTo𝕜‖ = ‖fr‖