Theorem: CstarRing.norm_le_norm_of_nonneg_of_le
File: Mathlib/Analysis/CstarAlgebra/ContinuousFunctionalCalculus/Order.lean

Proof steps:
state_before: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a b : A
ha : autoParam (0 ≤ a) _auto✝
hab : a ≤ b
⊢ ‖a‖ ≤ ‖b‖
state_after: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a b : A
ha : autoParam (0 ≤ a) _auto✝
hab : a ≤ b
⊢ ∀ (a b : Unitization ℂ A), 0 ≤ a → a ≤ b → ‖a‖ ≤ ‖b‖
tactic: suffices ∀ a b : Unitization ℂ A, 0 ≤ a → a ≤ b → ‖a‖ ≤ ‖b‖ by
    have hb := ha.trans hab
    simpa only [ge_iff_le, Unitization.norm_inr] using
      this a b (by simpa) (by rwa [Unitization.inr_le_iff a b])
state_before: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a b : A
ha : autoParam (0 ≤ a) _auto✝
hab : a ≤ b
⊢ ∀ (a b : Unitization ℂ A), 0 ≤ a → a ≤ b → ‖a‖ ≤ ‖b‖
state_after: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
⊢ ‖a‖ ≤ ‖b‖
tactic: intro a b ha hab
state_before: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
⊢ ‖a‖ ≤ ‖b‖
state_after: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
hb_nonneg : 0 ≤ b
⊢ ‖a‖ ≤ ‖b‖
tactic: have hb_nonneg : 0 ≤ b := ha.trans hab
state_before: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
hb_nonneg : 0 ≤ b
⊢ ‖a‖ ≤ ‖b‖
state_after: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
hb_nonneg : 0 ≤ b
this : 0 ≤ a
⊢ ‖a‖ ≤ ‖b‖
tactic: have : 0 ≤ a := by cfc_tac
state_before: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
hb_nonneg : 0 ≤ b
this : 0 ≤ a
⊢ ‖a‖ ≤ ‖b‖
state_after: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
hb_nonneg : 0 ≤ b
this : 0 ≤ a
h₂ : cfc id a ≤ cfc (fun x => ‖b‖) a
⊢ ‖a‖ ≤ ‖b‖
tactic: have h₂ : cfc (id : ℝ → ℝ) a ≤ cfc (fun _ => ‖b‖) a := by
    calc _ = a := by rw [cfc_id ℝ a]
      _ ≤ cfc id b := (cfc_id ℝ b) ▸ hab
      _ ≤ cfc (fun _ => ‖b‖) b := by
          refine cfc_mono fun x hx => ?_
          calc x = ‖x‖ := (Real.norm_of_nonneg (spectrum_nonneg_of_nonneg hb_nonneg hx)).symm
            _ ≤ ‖b‖ := spectrum.norm_le_norm_of_mem hx
      _ = _ := by rw [cfc_const _ _, cfc_const _ _]
state_before: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
hb_nonneg : 0 ≤ b
this : 0 ≤ a
h₂ : cfc id a ≤ cfc (fun x => ‖b‖) a
⊢ ‖a‖ ≤ ‖b‖
state_after: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
hb_nonneg : 0 ≤ b
this : 0 ≤ a
h₂ : ∀ x ∈ spectrum ℝ a, id x ≤ ‖b‖
⊢ ‖a‖ ≤ ‖b‖
tactic: rw [cfc_le_iff id (fun _ => ‖b‖) a] at h₂
state_before: A : Type u_1
inst✝⁹ : NonUnitalNormedRing A
inst✝⁸ : CompleteSpace A
inst✝⁷ : PartialOrder A
inst✝⁶ : StarRing A
inst✝⁵ : StarOrderedRing A
inst✝⁴ : CstarRing A
inst✝³ : NormedSpace ℂ A
inst✝² : StarModule ℂ A
inst✝¹ : SMulCommClass ℂ A A
inst✝ : IsScalarTower ℂ A A
a✝ b✝ : A
ha✝ : autoParam (0 ≤ a✝) _auto✝
hab✝ : a✝ ≤ b✝
a b : Unitization ℂ A
ha : 0 ≤ a
hab : a ≤ b
hb_nonneg : 0 ≤ b
this : 0 ≤ a
h₂ : ∀ x ∈ spectrum ℝ a, id x ≤ ‖b‖
⊢ ‖a‖ ≤ ‖b‖
state_after: no goals
tactic: exact h₂ ‖a‖ <| norm_mem_spectrum_of_nonneg ha