Theorem: ContinuousLinearMap.opNorm_lsmul
File: Mathlib/Analysis/NormedSpace/OperatorNorm/Mul.lean

Proof steps:
state_before: 𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
⊢ ‖lsmul 𝕜 𝕜'‖ = 1
state_after: case refine_1
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
x : 𝕜'
⊢ ‖(lsmul 𝕜 𝕜') x‖ ≤ 1 * ‖x‖

case refine_2
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
⊢ 1 ≤ N
tactic: refine ContinuousLinearMap.opNorm_eq_of_bounds zero_le_one (fun x => ?_) fun N _ h => ?_
state_before: case refine_2
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
⊢ 1 ≤ N
state_after: case refine_2.intro
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
y : E
hy : y ≠ 0
⊢ 1 ≤ N
tactic: obtain ⟨y, hy⟩ := exists_ne (0 : E)
state_before: case refine_2.intro
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
y : E
hy : y ≠ 0
⊢ 1 ≤ N
state_after: case refine_2.intro
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
y : E
hy : y ≠ 0
this : ‖((lsmul 𝕜 𝕜') 1) y‖ ≤ N * ‖1‖ * ‖y‖
⊢ 1 ≤ N
tactic: have := le_of_opNorm_le _ (h 1) y
state_before: case refine_2.intro
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
y : E
hy : y ≠ 0
this : ‖((lsmul 𝕜 𝕜') 1) y‖ ≤ N * ‖1‖ * ‖y‖
⊢ 1 ≤ N
state_after: case refine_2.intro
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
y : E
hy : y ≠ 0
this : ‖y‖ ≤ N * ‖y‖
⊢ 1 ≤ N
tactic: simp_rw [lsmul_apply, one_smul, norm_one, mul_one] at this
state_before: case refine_2.intro
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
y : E
hy : y ≠ 0
this : ‖y‖ ≤ N * ‖y‖
⊢ 1 ≤ N
state_after: case refine_2.intro
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
y : E
hy : y ≠ 0
this : ‖y‖ ≤ N * ‖y‖
⊢ 1 * ‖y‖ ≤ N * ‖y‖
tactic: refine le_of_mul_le_mul_right ?_ (norm_pos_iff.mpr hy)
state_before: case refine_2.intro
𝕜 : Type u_1
E : Type u_2
inst✝⁷ : NontriviallyNormedField 𝕜
inst✝⁶ : NormedAddCommGroup E
inst✝⁵ : NormedSpace 𝕜 E
c : 𝕜
𝕜' : Type u_3
inst✝⁴ : NormedField 𝕜'
inst✝³ : NormedAlgebra 𝕜 𝕜'
inst✝² : NormedSpace 𝕜' E
inst✝¹ : IsScalarTower 𝕜 𝕜' E
inst✝ : Nontrivial E
N : ℝ
x✝ : N ≥ 0
h : ∀ (x : 𝕜'), ‖(lsmul 𝕜 𝕜') x‖ ≤ N * ‖x‖
y : E
hy : y ≠ 0
this : ‖y‖ ≤ N * ‖y‖
⊢ 1 * ‖y‖ ≤ N * ‖y‖
state_after: no goals
tactic: simp_rw [one_mul, this]