Theorem: QuasispectrumRestricts.nonUnitalStarAlgHom_id
File: Mathlib/Analysis/CstarAlgebra/ContinuousFunctionalCalculus/Restrict.lean

Proof steps:
state_before: R : Type u_1
S : Type u_2
A : Type u_3
p q : A → Prop
inst✝²² : Semifield R
inst✝²¹ : StarRing R
inst✝²⁰ : MetricSpace R
inst✝¹⁹ : TopologicalSemiring R
inst✝¹⁸ : ContinuousStar R
inst✝¹⁷ : Field S
inst✝¹⁶ : StarRing S
inst✝¹⁵ : MetricSpace S
inst✝¹⁴ : TopologicalRing S
inst✝¹³ : ContinuousStar S
inst✝¹² : TopologicalSpace A
inst✝¹¹ : NonUnitalRing A
inst✝¹⁰ : StarRing A
inst✝⁹ : Module S A
inst✝⁸ : IsScalarTower S A A
inst✝⁷ : SMulCommClass S A A
inst✝⁶ : NonUnitalContinuousFunctionalCalculus S q
inst✝⁵ : Algebra R S
inst✝⁴ : Module R A
inst✝³ : IsScalarTower R S A
inst✝² : StarModule R S
inst✝¹ : ContinuousSMul R S
inst✝ : CompleteSpace R
a : A
φ : C(↑(σₙ S a), S)₀ →⋆ₙₐ[S] A
f : C(S, R)
h : QuasispectrumRestricts a ⇑f
h_id : φ (ContinuousMapZero.id ⋯) = a
⊢ (nonUnitalStarAlgHom φ h) (ContinuousMapZero.id ⋯) = a
state_after: R : Type u_1
S : Type u_2
A : Type u_3
p q : A → Prop
inst✝²² : Semifield R
inst✝²¹ : StarRing R
inst✝²⁰ : MetricSpace R
inst✝¹⁹ : TopologicalSemiring R
inst✝¹⁸ : ContinuousStar R
inst✝¹⁷ : Field S
inst✝¹⁶ : StarRing S
inst✝¹⁵ : MetricSpace S
inst✝¹⁴ : TopologicalRing S
inst✝¹³ : ContinuousStar S
inst✝¹² : TopologicalSpace A
inst✝¹¹ : NonUnitalRing A
inst✝¹⁰ : StarRing A
inst✝⁹ : Module S A
inst✝⁸ : IsScalarTower S A A
inst✝⁷ : SMulCommClass S A A
inst✝⁶ : NonUnitalContinuousFunctionalCalculus S q
inst✝⁵ : Algebra R S
inst✝⁴ : Module R A
inst✝³ : IsScalarTower R S A
inst✝² : StarModule R S
inst✝¹ : ContinuousSMul R S
inst✝ : CompleteSpace R
a : A
φ : C(↑(σₙ S a), S)₀ →⋆ₙₐ[S] A
f : C(S, R)
h : QuasispectrumRestricts a ⇑f
h_id : φ (ContinuousMapZero.id ⋯) = a
⊢ φ
      ({ toFun := ⇑(StarAlgHom.ofId R S), continuous_toFun := ⋯, map_zero' := ⋯ }.comp
        ((ContinuousMapZero.id ⋯).comp { toFun := Subtype.map ⇑f ⋯, continuous_toFun := ⋯, map_zero' := ⋯ })) =
    a
tactic: simp only [QuasispectrumRestricts.nonUnitalStarAlgHom_apply]
state_before: R : Type u_1
S : Type u_2
A : Type u_3
p q : A → Prop
inst✝²² : Semifield R
inst✝²¹ : StarRing R
inst✝²⁰ : MetricSpace R
inst✝¹⁹ : TopologicalSemiring R
inst✝¹⁸ : ContinuousStar R
inst✝¹⁷ : Field S
inst✝¹⁶ : StarRing S
inst✝¹⁵ : MetricSpace S
inst✝¹⁴ : TopologicalRing S
inst✝¹³ : ContinuousStar S
inst✝¹² : TopologicalSpace A
inst✝¹¹ : NonUnitalRing A
inst✝¹⁰ : StarRing A
inst✝⁹ : Module S A
inst✝⁸ : IsScalarTower S A A
inst✝⁷ : SMulCommClass S A A
inst✝⁶ : NonUnitalContinuousFunctionalCalculus S q
inst✝⁵ : Algebra R S
inst✝⁴ : Module R A
inst✝³ : IsScalarTower R S A
inst✝² : StarModule R S
inst✝¹ : ContinuousSMul R S
inst✝ : CompleteSpace R
a : A
φ : C(↑(σₙ S a), S)₀ →⋆ₙₐ[S] A
f : C(S, R)
h : QuasispectrumRestricts a ⇑f
h_id : φ (ContinuousMapZero.id ⋯) = a
⊢ φ
      ({ toFun := ⇑(StarAlgHom.ofId R S), continuous_toFun := ⋯, map_zero' := ⋯ }.comp
        ((ContinuousMapZero.id ⋯).comp { toFun := Subtype.map ⇑f ⋯, continuous_toFun := ⋯, map_zero' := ⋯ })) =
    a
state_after: case h.e'_2.h.e'_6
R : Type u_1
S : Type u_2
A : Type u_3
p q : A → Prop
inst✝²² : Semifield R
inst✝²¹ : StarRing R
inst✝²⁰ : MetricSpace R
inst✝¹⁹ : TopologicalSemiring R
inst✝¹⁸ : ContinuousStar R
inst✝¹⁷ : Field S
inst✝¹⁶ : StarRing S
inst✝¹⁵ : MetricSpace S
inst✝¹⁴ : TopologicalRing S
inst✝¹³ : ContinuousStar S
inst✝¹² : TopologicalSpace A
inst✝¹¹ : NonUnitalRing A
inst✝¹⁰ : StarRing A
inst✝⁹ : Module S A
inst✝⁸ : IsScalarTower S A A
inst✝⁷ : SMulCommClass S A A
inst✝⁶ : NonUnitalContinuousFunctionalCalculus S q
inst✝⁵ : Algebra R S
inst✝⁴ : Module R A
inst✝³ : IsScalarTower R S A
inst✝² : StarModule R S
inst✝¹ : ContinuousSMul R S
inst✝ : CompleteSpace R
a : A
φ : C(↑(σₙ S a), S)₀ →⋆ₙₐ[S] A
f : C(S, R)
h : QuasispectrumRestricts a ⇑f
h_id : φ (ContinuousMapZero.id ⋯) = a
⊢ { toFun := ⇑(StarAlgHom.ofId R S), continuous_toFun := ⋯, map_zero' := ⋯ }.comp
      ((ContinuousMapZero.id ⋯).comp { toFun := Subtype.map ⇑f ⋯, continuous_toFun := ⋯, map_zero' := ⋯ }) =
    ContinuousMapZero.id ⋯
tactic: convert h_id
state_before: case h.e'_2.h.e'_6
R : Type u_1
S : Type u_2
A : Type u_3
p q : A → Prop
inst✝²² : Semifield R
inst✝²¹ : StarRing R
inst✝²⁰ : MetricSpace R
inst✝¹⁹ : TopologicalSemiring R
inst✝¹⁸ : ContinuousStar R
inst✝¹⁷ : Field S
inst✝¹⁶ : StarRing S
inst✝¹⁵ : MetricSpace S
inst✝¹⁴ : TopologicalRing S
inst✝¹³ : ContinuousStar S
inst✝¹² : TopologicalSpace A
inst✝¹¹ : NonUnitalRing A
inst✝¹⁰ : StarRing A
inst✝⁹ : Module S A
inst✝⁸ : IsScalarTower S A A
inst✝⁷ : SMulCommClass S A A
inst✝⁶ : NonUnitalContinuousFunctionalCalculus S q
inst✝⁵ : Algebra R S
inst✝⁴ : Module R A
inst✝³ : IsScalarTower R S A
inst✝² : StarModule R S
inst✝¹ : ContinuousSMul R S
inst✝ : CompleteSpace R
a : A
φ : C(↑(σₙ S a), S)₀ →⋆ₙₐ[S] A
f : C(S, R)
h : QuasispectrumRestricts a ⇑f
h_id : φ (ContinuousMapZero.id ⋯) = a
⊢ { toFun := ⇑(StarAlgHom.ofId R S), continuous_toFun := ⋯, map_zero' := ⋯ }.comp
      ((ContinuousMapZero.id ⋯).comp { toFun := Subtype.map ⇑f ⋯, continuous_toFun := ⋯, map_zero' := ⋯ }) =
    ContinuousMapZero.id ⋯
state_after: case h.e'_2.h.e'_6.h
R : Type u_1
S : Type u_2
A : Type u_3
p q : A → Prop
inst✝²² : Semifield R
inst✝²¹ : StarRing R
inst✝²⁰ : MetricSpace R
inst✝¹⁹ : TopologicalSemiring R
inst✝¹⁸ : ContinuousStar R
inst✝¹⁷ : Field S
inst✝¹⁶ : StarRing S
inst✝¹⁵ : MetricSpace S
inst✝¹⁴ : TopologicalRing S
inst✝¹³ : ContinuousStar S
inst✝¹² : TopologicalSpace A
inst✝¹¹ : NonUnitalRing A
inst✝¹⁰ : StarRing A
inst✝⁹ : Module S A
inst✝⁸ : IsScalarTower S A A
inst✝⁷ : SMulCommClass S A A
inst✝⁶ : NonUnitalContinuousFunctionalCalculus S q
inst✝⁵ : Algebra R S
inst✝⁴ : Module R A
inst✝³ : IsScalarTower R S A
inst✝² : StarModule R S
inst✝¹ : ContinuousSMul R S
inst✝ : CompleteSpace R
a : A
φ : C(↑(σₙ S a), S)₀ →⋆ₙₐ[S] A
f : C(S, R)
h : QuasispectrumRestricts a ⇑f
h_id : φ (ContinuousMapZero.id ⋯) = a
x : ↑(σₙ S a)
⊢ ({ toFun := ⇑(StarAlgHom.ofId R S), continuous_toFun := ⋯, map_zero' := ⋯ }.comp
        ((ContinuousMapZero.id ⋯).comp { toFun := Subtype.map ⇑f ⋯, continuous_toFun := ⋯, map_zero' := ⋯ }))
      x =
    (ContinuousMapZero.id ⋯) x
tactic: ext x
state_before: case h.e'_2.h.e'_6.h
R : Type u_1
S : Type u_2
A : Type u_3
p q : A → Prop
inst✝²² : Semifield R
inst✝²¹ : StarRing R
inst✝²⁰ : MetricSpace R
inst✝¹⁹ : TopologicalSemiring R
inst✝¹⁸ : ContinuousStar R
inst✝¹⁷ : Field S
inst✝¹⁶ : StarRing S
inst✝¹⁵ : MetricSpace S
inst✝¹⁴ : TopologicalRing S
inst✝¹³ : ContinuousStar S
inst✝¹² : TopologicalSpace A
inst✝¹¹ : NonUnitalRing A
inst✝¹⁰ : StarRing A
inst✝⁹ : Module S A
inst✝⁸ : IsScalarTower S A A
inst✝⁷ : SMulCommClass S A A
inst✝⁶ : NonUnitalContinuousFunctionalCalculus S q
inst✝⁵ : Algebra R S
inst✝⁴ : Module R A
inst✝³ : IsScalarTower R S A
inst✝² : StarModule R S
inst✝¹ : ContinuousSMul R S
inst✝ : CompleteSpace R
a : A
φ : C(↑(σₙ S a), S)₀ →⋆ₙₐ[S] A
f : C(S, R)
h : QuasispectrumRestricts a ⇑f
h_id : φ (ContinuousMapZero.id ⋯) = a
x : ↑(σₙ S a)
⊢ ({ toFun := ⇑(StarAlgHom.ofId R S), continuous_toFun := ⋯, map_zero' := ⋯ }.comp
        ((ContinuousMapZero.id ⋯).comp { toFun := Subtype.map ⇑f ⋯, continuous_toFun := ⋯, map_zero' := ⋯ }))
      x =
    (ContinuousMapZero.id ⋯) x
state_after: no goals
tactic: exact h.rightInvOn x.2