Metamath Proof Explorer


Theorem homco2

Description: Move a scalar product out of a composition of operators. The operator T must be linear, unlike homco1 that works for any operators. (Contributed by NM, 13-Aug-2006) (New usage is discouraged.)

Ref Expression
Assertion homco2 ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → T ∘ A · op U = A · op T ∘ U

Proof

Step Hyp Ref Expression
1 simpl1 ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → A ∈ ℂ
2 simpl3 ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → U : ℋ ⟶ ℋ
3 simpr ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → x ∈ ℋ
4 homval ⊢ A ∈ ℂ ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → A · op U ⁡ x = A ⋅ ℎ U ⁡ x
5 1 2 3 4 syl3anc ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → A · op U ⁡ x = A ⋅ ℎ U ⁡ x
6 5 fveq2d ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → T ⁡ A · op U ⁡ x = T ⁡ A ⋅ ℎ U ⁡ x
7 homulcl ⊢ A ∈ ℂ ∧ U : ℋ ⟶ ℋ → A · op U : ℋ ⟶ ℋ
8 7 3adant2 ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → A · op U : ℋ ⟶ ℋ
9 fvco3 ⊢ A · op U : ℋ ⟶ ℋ ∧ x ∈ ℋ → T ∘ A · op U ⁡ x = T ⁡ A · op U ⁡ x
10 8 9 sylan ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → T ∘ A · op U ⁡ x = T ⁡ A · op U ⁡ x
11 fvco3 ⊢ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → T ∘ U ⁡ x = T ⁡ U ⁡ x
12 2 3 11 syl2anc ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → T ∘ U ⁡ x = T ⁡ U ⁡ x
13 12 oveq2d ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → A ⋅ ℎ T ∘ U ⁡ x = A ⋅ ℎ T ⁡ U ⁡ x
14 lnopf ⊢ T ∈ LinOp → T : ℋ ⟶ ℋ
15 14 3ad2ant2 ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → T : ℋ ⟶ ℋ
16 simp3 ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → U : ℋ ⟶ ℋ
17 fco ⊢ T : ℋ ⟶ ℋ ∧ U : ℋ ⟶ ℋ → T ∘ U : ℋ ⟶ ℋ
18 15 16 17 syl2anc ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → T ∘ U : ℋ ⟶ ℋ
19 18 adantr ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → T ∘ U : ℋ ⟶ ℋ
20 homval ⊢ A ∈ ℂ ∧ T ∘ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → A · op T ∘ U ⁡ x = A ⋅ ℎ T ∘ U ⁡ x
21 1 19 3 20 syl3anc ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → A · op T ∘ U ⁡ x = A ⋅ ℎ T ∘ U ⁡ x
22 simpl2 ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → T ∈ LinOp
23 16 ffvelcdmda ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → U ⁡ x ∈ ℋ
24 lnopmul ⊢ T ∈ LinOp ∧ A ∈ ℂ ∧ U ⁡ x ∈ ℋ → T ⁡ A ⋅ ℎ U ⁡ x = A ⋅ ℎ T ⁡ U ⁡ x
25 22 1 23 24 syl3anc ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → T ⁡ A ⋅ ℎ U ⁡ x = A ⋅ ℎ T ⁡ U ⁡ x
26 13 21 25 3eqtr4d ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → A · op T ∘ U ⁡ x = T ⁡ A ⋅ ℎ U ⁡ x
27 6 10 26 3eqtr4d ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ ∧ x ∈ ℋ → T ∘ A · op U ⁡ x = A · op T ∘ U ⁡ x
28 27 ralrimiva ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → ∀ x ∈ ℋ T ∘ A · op U ⁡ x = A · op T ∘ U ⁡ x
29 fco ⊢ T : ℋ ⟶ ℋ ∧ A · op U : ℋ ⟶ ℋ → T ∘ A · op U : ℋ ⟶ ℋ
30 15 8 29 syl2anc ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → T ∘ A · op U : ℋ ⟶ ℋ
31 simp1 ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → A ∈ ℂ
32 homulcl ⊢ A ∈ ℂ ∧ T ∘ U : ℋ ⟶ ℋ → A · op T ∘ U : ℋ ⟶ ℋ
33 31 18 32 syl2anc ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → A · op T ∘ U : ℋ ⟶ ℋ
34 hoeq ⊢ T ∘ A · op U : ℋ ⟶ ℋ ∧ A · op T ∘ U : ℋ ⟶ ℋ → ∀ x ∈ ℋ T ∘ A · op U ⁡ x = A · op T ∘ U ⁡ x ↔ T ∘ A · op U = A · op T ∘ U
35 30 33 34 syl2anc ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → ∀ x ∈ ℋ T ∘ A · op U ⁡ x = A · op T ∘ U ⁡ x ↔ T ∘ A · op U = A · op T ∘ U
36 28 35 mpbid ⊢ A ∈ ℂ ∧ T ∈ LinOp ∧ U : ℋ ⟶ ℋ → T ∘ A · op U = A · op T ∘ U