Theorem: gelfandTransform_isometry
File: Mathlib/Analysis/CstarAlgebra/GelfandDuality.lean

Proof steps:
state_before: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
⊢ Isometry ⇑(gelfandTransform ℂ A)
state_after: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
⊢ Isometry ⇑(gelfandTransform ℂ A)
tactic: nontriviality A
state_before: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
⊢ Isometry ⇑(gelfandTransform ℂ A)
state_after: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
a : A
⊢ ‖(gelfandTransform ℂ A) a‖ = ‖a‖
tactic: refine AddMonoidHomClass.isometry_of_norm (gelfandTransform ℂ A) fun a => ?_
state_before: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
a : A
⊢ ‖(gelfandTransform ℂ A) a‖ = ‖a‖
state_after: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
a : A
this : spectralRadius ℂ ((gelfandTransform ℂ A) (star a * a)) = spectralRadius ℂ (star a * a)
⊢ ‖(gelfandTransform ℂ A) a‖ = ‖a‖
tactic: have : spectralRadius ℂ (gelfandTransform ℂ A (star a * a)) = spectralRadius ℂ (star a * a) := by
    unfold spectralRadius; rw [spectrum.gelfandTransform_eq]
state_before: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
a : A
this : spectralRadius ℂ ((gelfandTransform ℂ A) (star a * a)) = spectralRadius ℂ (star a * a)
⊢ ‖(gelfandTransform ℂ A) a‖ = ‖a‖
state_after: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
a : A
this : ↑‖star ((gelfandTransform ℂ A) a) * (gelfandTransform ℂ A) a‖₊ = ↑‖star a * a‖₊
⊢ ‖(gelfandTransform ℂ A) a‖ = ‖a‖
tactic: rw [map_mul, (IsSelfAdjoint.star_mul_self a).spectralRadius_eq_nnnorm, gelfandTransform_map_star,
    (IsSelfAdjoint.star_mul_self (gelfandTransform ℂ A a)).spectralRadius_eq_nnnorm] at this
state_before: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
a : A
this : ↑‖star ((gelfandTransform ℂ A) a) * (gelfandTransform ℂ A) a‖₊ = ↑‖star a * a‖₊
⊢ ‖(gelfandTransform ℂ A) a‖ = ‖a‖
state_after: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
a : A
this : ‖(gelfandTransform ℂ A) a‖₊ ^ 2 = ‖a‖₊ ^ 2
⊢ ‖(gelfandTransform ℂ A) a‖ = ‖a‖
tactic: simp only [ENNReal.coe_inj, CstarRing.nnnorm_star_mul_self, ← sq] at this
state_before: A : Type u_1
inst✝⁵ : NormedCommRing A
inst✝⁴ : NormedAlgebra ℂ A
inst✝³ : CompleteSpace A
inst✝² : StarRing A
inst✝¹ : CstarRing A
inst✝ : StarModule ℂ A
a✝ : Nontrivial A
a : A
this : ‖(gelfandTransform ℂ A) a‖₊ ^ 2 = ‖a‖₊ ^ 2
⊢ ‖(gelfandTransform ℂ A) a‖ = ‖a‖
state_after: no goals
tactic: simpa only [Function.comp_apply, NNReal.sqrt_sq] using
    congr_arg (((↑) : ℝ≥0 → ℝ) ∘ ⇑NNReal.sqrt) this