Metamath Proof Explorer


Theorem homulass

Description: Scalar product associative law for Hilbert space operators. (Contributed by NM, 12-Aug-2006) (New usage is discouraged.)

Ref Expression
Assertion homulass ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) = ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) )

Proof

Step Hyp Ref Expression
1 mulcl ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ) → ( 𝐴 · 𝐵 ) ∈ ℂ )
2 homval ( ( ( 𝐴 · 𝐵 ) ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ∧ 𝑥 ∈ ℋ ) → ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) )
3 1 2 syl3an1 ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ) ∧ 𝑇 : ℋ ⟶ ℋ ∧ 𝑥 ∈ ℋ ) → ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) )
4 3 3expia ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ) ∧ 𝑇 : ℋ ⟶ ℋ ) → ( 𝑥 ∈ ℋ → ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) ) )
5 4 3impa ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ( 𝑥 ∈ ℋ → ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) ) )
6 5 imp ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ∧ 𝑥 ∈ ℋ ) → ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) )
7 homval ( ( 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ∧ 𝑥 ∈ ℋ ) → ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) = ( 𝐵 · ( 𝑇𝑥 ) ) )
8 7 oveq2d ( ( 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ∧ 𝑥 ∈ ℋ ) → ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) = ( 𝐴 · ( 𝐵 · ( 𝑇𝑥 ) ) ) )
9 8 3expa ( ( ( 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ∧ 𝑥 ∈ ℋ ) → ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) = ( 𝐴 · ( 𝐵 · ( 𝑇𝑥 ) ) ) )
10 9 3adantl1 ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ∧ 𝑥 ∈ ℋ ) → ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) = ( 𝐴 · ( 𝐵 · ( 𝑇𝑥 ) ) ) )
11 ffvelrn ( ( 𝑇 : ℋ ⟶ ℋ ∧ 𝑥 ∈ ℋ ) → ( 𝑇𝑥 ) ∈ ℋ )
12 ax-hvmulass ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ ( 𝑇𝑥 ) ∈ ℋ ) → ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) = ( 𝐴 · ( 𝐵 · ( 𝑇𝑥 ) ) ) )
13 11 12 syl3an3 ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ ( 𝑇 : ℋ ⟶ ℋ ∧ 𝑥 ∈ ℋ ) ) → ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) = ( 𝐴 · ( 𝐵 · ( 𝑇𝑥 ) ) ) )
14 13 3expa ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ) ∧ ( 𝑇 : ℋ ⟶ ℋ ∧ 𝑥 ∈ ℋ ) ) → ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) = ( 𝐴 · ( 𝐵 · ( 𝑇𝑥 ) ) ) )
15 14 exp43 ( 𝐴 ∈ ℂ → ( 𝐵 ∈ ℂ → ( 𝑇 : ℋ ⟶ ℋ → ( 𝑥 ∈ ℋ → ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) = ( 𝐴 · ( 𝐵 · ( 𝑇𝑥 ) ) ) ) ) ) )
16 15 3imp1 ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ∧ 𝑥 ∈ ℋ ) → ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) = ( 𝐴 · ( 𝐵 · ( 𝑇𝑥 ) ) ) )
17 10 16 eqtr4d ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ∧ 𝑥 ∈ ℋ ) → ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) = ( ( 𝐴 · 𝐵 ) · ( 𝑇𝑥 ) ) )
18 6 17 eqtr4d ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ∧ 𝑥 ∈ ℋ ) → ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) )
19 homulcl ( ( 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ( 𝐵 ·op 𝑇 ) : ℋ ⟶ ℋ )
20 homval ( ( 𝐴 ∈ ℂ ∧ ( 𝐵 ·op 𝑇 ) : ℋ ⟶ ℋ ∧ 𝑥 ∈ ℋ ) → ( ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ‘ 𝑥 ) = ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) )
21 19 20 syl3an2 ( ( 𝐴 ∈ ℂ ∧ ( 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ∧ 𝑥 ∈ ℋ ) → ( ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ‘ 𝑥 ) = ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) )
22 21 3expia ( ( 𝐴 ∈ ℂ ∧ ( 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ) → ( 𝑥 ∈ ℋ → ( ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ‘ 𝑥 ) = ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) ) )
23 22 3impb ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ( 𝑥 ∈ ℋ → ( ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ‘ 𝑥 ) = ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) ) )
24 23 imp ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ∧ 𝑥 ∈ ℋ ) → ( ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ‘ 𝑥 ) = ( 𝐴 · ( ( 𝐵 ·op 𝑇 ) ‘ 𝑥 ) ) )
25 18 24 eqtr4d ( ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ∧ 𝑥 ∈ ℋ ) → ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ‘ 𝑥 ) )
26 25 ralrimiva ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ∀ 𝑥 ∈ ℋ ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ‘ 𝑥 ) )
27 homulcl ( ( ( 𝐴 · 𝐵 ) ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) : ℋ ⟶ ℋ )
28 1 27 stoic3 ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) : ℋ ⟶ ℋ )
29 homulcl ( ( 𝐴 ∈ ℂ ∧ ( 𝐵 ·op 𝑇 ) : ℋ ⟶ ℋ ) → ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) : ℋ ⟶ ℋ )
30 19 29 sylan2 ( ( 𝐴 ∈ ℂ ∧ ( 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) ) → ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) : ℋ ⟶ ℋ )
31 30 3impb ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) : ℋ ⟶ ℋ )
32 hoeq ( ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) : ℋ ⟶ ℋ ∧ ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) : ℋ ⟶ ℋ ) → ( ∀ 𝑥 ∈ ℋ ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ‘ 𝑥 ) ↔ ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) = ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ) )
33 28 31 32 syl2anc ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ( ∀ 𝑥 ∈ ℋ ( ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) ‘ 𝑥 ) = ( ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ‘ 𝑥 ) ↔ ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) = ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) ) )
34 26 33 mpbid ( ( 𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝑇 : ℋ ⟶ ℋ ) → ( ( 𝐴 · 𝐵 ) ·op 𝑇 ) = ( 𝐴 ·op ( 𝐵 ·op 𝑇 ) ) )