Theorem: ContinuousLinearMap.is_weak_closed_closedBall
File: Mathlib/Analysis/NormedSpace/OperatorNorm.lean

tactic: have hr : 0 ≤ r := nonempty_closedBall.1 (nonempty_image_iff.1 (closure_nonempty_iff.1 ⟨_, hf⟩))
state_before: 𝕜 : Type u_1
𝕜₂ : Type u_2
𝕜₃ : Type ?u.3424525
E : Type ?u.3424528
Eₗ : Type ?u.3424531
F : Type u_4
Fₗ : Type ?u.3424537
G : Type ?u.3424540
Gₗ : Type ?u.3424543
𝓕 : Type ?u.3424546
inst✝¹³ : NormedAddCommGroup E
inst✝¹² : NormedAddCommGroup F
inst✝¹¹ : NormedAddCommGroup G
inst✝¹⁰ : NormedAddCommGroup Fₗ
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NontriviallyNormedField 𝕜₂
inst✝⁷ : NontriviallyNormedField 𝕜₃
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedSpace 𝕜₂ F
inst✝⁴ : NormedSpace 𝕜₃ G
inst✝³ : NormedSpace 𝕜 Fₗ
c : 𝕜
σ₁₂ : 𝕜 →+* 𝕜₂
σ₂₃ : 𝕜₂ →+* 𝕜₃
f✝ g : E →SL[σ₁₂] F
x y z : E
E' : Type u_3
inst✝² : SeminormedAddCommGroup E'
inst✝¹ : NormedSpace 𝕜 E'
inst✝ : RingHomIsometric σ₁₂
f₀ : E' →SL[σ₁₂] F
r : ℝ
f : E' →SL[σ₁₂] F
hf : ↑f ∈ closure (FunLike.coe '' closedBall f₀ r)
⊢ f ∈ closedBall f₀ r

tactic: refine' mem_closedBall_iff_norm.2 (op_norm_le_bound _ hr fun x => _)
state_before: 𝕜 : Type u_1
𝕜₂ : Type u_2
𝕜₃ : Type ?u.3424525
E : Type ?u.3424528
Eₗ : Type ?u.3424531
F : Type u_4
Fₗ : Type ?u.3424537
G : Type ?u.3424540
Gₗ : Type ?u.3424543
𝓕 : Type ?u.3424546
inst✝¹³ : NormedAddCommGroup E
inst✝¹² : NormedAddCommGroup F
inst✝¹¹ : NormedAddCommGroup G
inst✝¹⁰ : NormedAddCommGroup Fₗ
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NontriviallyNormedField 𝕜₂
inst✝⁷ : NontriviallyNormedField 𝕜₃
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedSpace 𝕜₂ F
inst✝⁴ : NormedSpace 𝕜₃ G
inst✝³ : NormedSpace 𝕜 Fₗ
c : 𝕜
σ₁₂ : 𝕜 →+* 𝕜₂
σ₂₃ : 𝕜₂ →+* 𝕜₃
f✝ g : E →SL[σ₁₂] F
x y z : E
E' : Type u_3
inst✝² : SeminormedAddCommGroup E'
inst✝¹ : NormedSpace 𝕜 E'
inst✝ : RingHomIsometric σ₁₂
f₀ : E' →SL[σ₁₂] F
r : ℝ
f : E' →SL[σ₁₂] F
hf : ↑f ∈ closure (FunLike.coe '' closedBall f₀ r)
hr : 0 ≤ r
⊢ f ∈ closedBall f₀ r

tactic: have : IsClosed { g : E' → F | ‖g x - f₀ x‖ ≤ r * ‖x‖ } :=
  isClosed_Iic.preimage ((@continuous_apply E' (fun _ => F) _ x).sub continuous_const).norm
state_before: 𝕜 : Type u_1
𝕜₂ : Type u_2
𝕜₃ : Type ?u.3424525
E : Type ?u.3424528
Eₗ : Type ?u.3424531
F : Type u_4
Fₗ : Type ?u.3424537
G : Type ?u.3424540
Gₗ : Type ?u.3424543
𝓕 : Type ?u.3424546
inst✝¹³ : NormedAddCommGroup E
inst✝¹² : NormedAddCommGroup F
inst✝¹¹ : NormedAddCommGroup G
inst✝¹⁰ : NormedAddCommGroup Fₗ
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NontriviallyNormedField 𝕜₂
inst✝⁷ : NontriviallyNormedField 𝕜₃
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedSpace 𝕜₂ F
inst✝⁴ : NormedSpace 𝕜₃ G
inst✝³ : NormedSpace 𝕜 Fₗ
c : 𝕜
σ₁₂ : 𝕜 →+* 𝕜₂
σ₂₃ : 𝕜₂ →+* 𝕜₃
f✝ g : E →SL[σ₁₂] F
x✝ y z : E
E' : Type u_3
inst✝² : SeminormedAddCommGroup E'
inst✝¹ : NormedSpace 𝕜 E'
inst✝ : RingHomIsometric σ₁₂
f₀ : E' →SL[σ₁₂] F
r : ℝ
f : E' →SL[σ₁₂] F
hf : ↑f ∈ closure (FunLike.coe '' closedBall f₀ r)
hr : 0 ≤ r
x : E'
⊢ ‖↑(f - f₀) x‖ ≤ r * ‖x‖

tactic: refine' this.closure_subset_iff.2 (image_subset_iff.2 fun g hg => _) hf
state_before: 𝕜 : Type u_1
𝕜₂ : Type u_2
𝕜₃ : Type ?u.3424525
E : Type ?u.3424528
Eₗ : Type ?u.3424531
F : Type u_4
Fₗ : Type ?u.3424537
G : Type ?u.3424540
Gₗ : Type ?u.3424543
𝓕 : Type ?u.3424546
inst✝¹³ : NormedAddCommGroup E
inst✝¹² : NormedAddCommGroup F
inst✝¹¹ : NormedAddCommGroup G
inst✝¹⁰ : NormedAddCommGroup Fₗ
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NontriviallyNormedField 𝕜₂
inst✝⁷ : NontriviallyNormedField 𝕜₃
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedSpace 𝕜₂ F
inst✝⁴ : NormedSpace 𝕜₃ G
inst✝³ : NormedSpace 𝕜 Fₗ
c : 𝕜
σ₁₂ : 𝕜 →+* 𝕜₂
σ₂₃ : 𝕜₂ →+* 𝕜₃
f✝ g : E →SL[σ₁₂] F
x✝ y z : E
E' : Type u_3
inst✝² : SeminormedAddCommGroup E'
inst✝¹ : NormedSpace 𝕜 E'
inst✝ : RingHomIsometric σ₁₂
f₀ : E' →SL[σ₁₂] F
r : ℝ
f : E' →SL[σ₁₂] F
hf : ↑f ∈ closure (FunLike.coe '' closedBall f₀ r)
hr : 0 ≤ r
x : E'
this : IsClosed {g | ‖g x - ↑f₀ x‖ ≤ r * ‖x‖}
⊢ ‖↑(f - f₀) x‖ ≤ r * ‖x‖

tactic: exact (g - f₀).le_of_op_norm_le (mem_closedBall_iff_norm.1 hg) _
state_before: 𝕜 : Type u_1
𝕜₂ : Type u_2
𝕜₃ : Type ?u.3424525
E : Type ?u.3424528
Eₗ : Type ?u.3424531
F : Type u_4
Fₗ : Type ?u.3424537
G : Type ?u.3424540
Gₗ : Type ?u.3424543
𝓕 : Type ?u.3424546
inst✝¹³ : NormedAddCommGroup E
inst✝¹² : NormedAddCommGroup F
inst✝¹¹ : NormedAddCommGroup G
inst✝¹⁰ : NormedAddCommGroup Fₗ
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NontriviallyNormedField 𝕜₂
inst✝⁷ : NontriviallyNormedField 𝕜₃
inst✝⁶ : NormedSpace 𝕜 E
inst✝⁵ : NormedSpace 𝕜₂ F
inst✝⁴ : NormedSpace 𝕜₃ G
inst✝³ : NormedSpace 𝕜 Fₗ
c : 𝕜
σ₁₂ : 𝕜 →+* 𝕜₂
σ₂₃ : 𝕜₂ →+* 𝕜₃
f✝ g✝ : E →SL[σ₁₂] F
x✝ y z : E
E' : Type u_3
inst✝² : SeminormedAddCommGroup E'
inst✝¹ : NormedSpace 𝕜 E'
inst✝ : RingHomIsometric σ₁₂
f₀ : E' →SL[σ₁₂] F
r : ℝ
f : E' →SL[σ₁₂] F
hf : ↑f ∈ closure (FunLike.coe '' closedBall f₀ r)
hr : 0 ≤ r
x : E'
this : IsClosed {g | ‖g x - ↑f₀ x‖ ≤ r * ‖x‖}
g : E' →SL[σ₁₂] F
hg : g ∈ closedBall f₀ r
⊢ g ∈ FunLike.coe ⁻¹' {g | ‖g x - ↑f₀ x‖ ≤ r * ‖x‖}