Metamath Proof Explorer


Theorem clmmulg

Description: The group multiple function matches the scalar multiplication function. (Contributed by Mario Carneiro, 15-Oct-2015)

Ref Expression
Hypotheses clmmulg.1 𝑉 = ( Base ‘ 𝑊 )
clmmulg.2 = ( .g𝑊 )
clmmulg.3 · = ( ·𝑠𝑊 )
Assertion clmmulg ( ( 𝑊 ∈ ℂMod ∧ 𝐴 ∈ ℤ ∧ 𝐵𝑉 ) → ( 𝐴 𝐵 ) = ( 𝐴 · 𝐵 ) )

Proof

Step Hyp Ref Expression
1 clmmulg.1 𝑉 = ( Base ‘ 𝑊 )
2 clmmulg.2 = ( .g𝑊 )
3 clmmulg.3 · = ( ·𝑠𝑊 )
4 oveq1 ( 𝑥 = 0 → ( 𝑥 𝐵 ) = ( 0 𝐵 ) )
5 oveq1 ( 𝑥 = 0 → ( 𝑥 · 𝐵 ) = ( 0 · 𝐵 ) )
6 4 5 eqeq12d ( 𝑥 = 0 → ( ( 𝑥 𝐵 ) = ( 𝑥 · 𝐵 ) ↔ ( 0 𝐵 ) = ( 0 · 𝐵 ) ) )
7 oveq1 ( 𝑥 = 𝑦 → ( 𝑥 𝐵 ) = ( 𝑦 𝐵 ) )
8 oveq1 ( 𝑥 = 𝑦 → ( 𝑥 · 𝐵 ) = ( 𝑦 · 𝐵 ) )
9 7 8 eqeq12d ( 𝑥 = 𝑦 → ( ( 𝑥 𝐵 ) = ( 𝑥 · 𝐵 ) ↔ ( 𝑦 𝐵 ) = ( 𝑦 · 𝐵 ) ) )
10 oveq1 ( 𝑥 = ( 𝑦 + 1 ) → ( 𝑥 𝐵 ) = ( ( 𝑦 + 1 ) 𝐵 ) )
11 oveq1 ( 𝑥 = ( 𝑦 + 1 ) → ( 𝑥 · 𝐵 ) = ( ( 𝑦 + 1 ) · 𝐵 ) )
12 10 11 eqeq12d ( 𝑥 = ( 𝑦 + 1 ) → ( ( 𝑥 𝐵 ) = ( 𝑥 · 𝐵 ) ↔ ( ( 𝑦 + 1 ) 𝐵 ) = ( ( 𝑦 + 1 ) · 𝐵 ) ) )
13 oveq1 ( 𝑥 = - 𝑦 → ( 𝑥 𝐵 ) = ( - 𝑦 𝐵 ) )
14 oveq1 ( 𝑥 = - 𝑦 → ( 𝑥 · 𝐵 ) = ( - 𝑦 · 𝐵 ) )
15 13 14 eqeq12d ( 𝑥 = - 𝑦 → ( ( 𝑥 𝐵 ) = ( 𝑥 · 𝐵 ) ↔ ( - 𝑦 𝐵 ) = ( - 𝑦 · 𝐵 ) ) )
16 oveq1 ( 𝑥 = 𝐴 → ( 𝑥 𝐵 ) = ( 𝐴 𝐵 ) )
17 oveq1 ( 𝑥 = 𝐴 → ( 𝑥 · 𝐵 ) = ( 𝐴 · 𝐵 ) )
18 16 17 eqeq12d ( 𝑥 = 𝐴 → ( ( 𝑥 𝐵 ) = ( 𝑥 · 𝐵 ) ↔ ( 𝐴 𝐵 ) = ( 𝐴 · 𝐵 ) ) )
19 eqid ( 0g𝑊 ) = ( 0g𝑊 )
20 1 19 2 mulg0 ( 𝐵𝑉 → ( 0 𝐵 ) = ( 0g𝑊 ) )
21 20 adantl ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) → ( 0 𝐵 ) = ( 0g𝑊 ) )
22 eqid ( Scalar ‘ 𝑊 ) = ( Scalar ‘ 𝑊 )
23 1 22 3 19 clm0vs ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) → ( 0 · 𝐵 ) = ( 0g𝑊 ) )
24 21 23 eqtr4d ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) → ( 0 𝐵 ) = ( 0 · 𝐵 ) )
25 oveq1 ( ( 𝑦 𝐵 ) = ( 𝑦 · 𝐵 ) → ( ( 𝑦 𝐵 ) ( +g𝑊 ) 𝐵 ) = ( ( 𝑦 · 𝐵 ) ( +g𝑊 ) 𝐵 ) )
26 clmgrp ( 𝑊 ∈ ℂMod → 𝑊 ∈ Grp )
27 grpmnd ( 𝑊 ∈ Grp → 𝑊 ∈ Mnd )
28 26 27 syl ( 𝑊 ∈ ℂMod → 𝑊 ∈ Mnd )
29 28 ad2antrr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → 𝑊 ∈ Mnd )
30 simpr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → 𝑦 ∈ ℕ0 )
31 simplr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → 𝐵𝑉 )
32 eqid ( +g𝑊 ) = ( +g𝑊 )
33 1 2 32 mulgnn0p1 ( ( 𝑊 ∈ Mnd ∧ 𝑦 ∈ ℕ0𝐵𝑉 ) → ( ( 𝑦 + 1 ) 𝐵 ) = ( ( 𝑦 𝐵 ) ( +g𝑊 ) 𝐵 ) )
34 29 30 31 33 syl3anc ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → ( ( 𝑦 + 1 ) 𝐵 ) = ( ( 𝑦 𝐵 ) ( +g𝑊 ) 𝐵 ) )
35 simpll ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → 𝑊 ∈ ℂMod )
36 eqid ( Base ‘ ( Scalar ‘ 𝑊 ) ) = ( Base ‘ ( Scalar ‘ 𝑊 ) )
37 22 36 clmzss ( 𝑊 ∈ ℂMod → ℤ ⊆ ( Base ‘ ( Scalar ‘ 𝑊 ) ) )
38 37 ad2antrr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → ℤ ⊆ ( Base ‘ ( Scalar ‘ 𝑊 ) ) )
39 nn0z ( 𝑦 ∈ ℕ0𝑦 ∈ ℤ )
40 39 adantl ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → 𝑦 ∈ ℤ )
41 38 40 sseldd ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → 𝑦 ∈ ( Base ‘ ( Scalar ‘ 𝑊 ) ) )
42 1zzd ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → 1 ∈ ℤ )
43 38 42 sseldd ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → 1 ∈ ( Base ‘ ( Scalar ‘ 𝑊 ) ) )
44 1 22 3 36 32 clmvsdir ( ( 𝑊 ∈ ℂMod ∧ ( 𝑦 ∈ ( Base ‘ ( Scalar ‘ 𝑊 ) ) ∧ 1 ∈ ( Base ‘ ( Scalar ‘ 𝑊 ) ) ∧ 𝐵𝑉 ) ) → ( ( 𝑦 + 1 ) · 𝐵 ) = ( ( 𝑦 · 𝐵 ) ( +g𝑊 ) ( 1 · 𝐵 ) ) )
45 35 41 43 31 44 syl13anc ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → ( ( 𝑦 + 1 ) · 𝐵 ) = ( ( 𝑦 · 𝐵 ) ( +g𝑊 ) ( 1 · 𝐵 ) ) )
46 1 3 clmvs1 ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) → ( 1 · 𝐵 ) = 𝐵 )
47 46 adantr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → ( 1 · 𝐵 ) = 𝐵 )
48 47 oveq2d ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → ( ( 𝑦 · 𝐵 ) ( +g𝑊 ) ( 1 · 𝐵 ) ) = ( ( 𝑦 · 𝐵 ) ( +g𝑊 ) 𝐵 ) )
49 45 48 eqtrd ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → ( ( 𝑦 + 1 ) · 𝐵 ) = ( ( 𝑦 · 𝐵 ) ( +g𝑊 ) 𝐵 ) )
50 34 49 eqeq12d ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → ( ( ( 𝑦 + 1 ) 𝐵 ) = ( ( 𝑦 + 1 ) · 𝐵 ) ↔ ( ( 𝑦 𝐵 ) ( +g𝑊 ) 𝐵 ) = ( ( 𝑦 · 𝐵 ) ( +g𝑊 ) 𝐵 ) ) )
51 25 50 syl5ibr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ0 ) → ( ( 𝑦 𝐵 ) = ( 𝑦 · 𝐵 ) → ( ( 𝑦 + 1 ) 𝐵 ) = ( ( 𝑦 + 1 ) · 𝐵 ) ) )
52 51 ex ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) → ( 𝑦 ∈ ℕ0 → ( ( 𝑦 𝐵 ) = ( 𝑦 · 𝐵 ) → ( ( 𝑦 + 1 ) 𝐵 ) = ( ( 𝑦 + 1 ) · 𝐵 ) ) ) )
53 fveq2 ( ( 𝑦 𝐵 ) = ( 𝑦 · 𝐵 ) → ( ( invg𝑊 ) ‘ ( 𝑦 𝐵 ) ) = ( ( invg𝑊 ) ‘ ( 𝑦 · 𝐵 ) ) )
54 26 ad2antrr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → 𝑊 ∈ Grp )
55 nnz ( 𝑦 ∈ ℕ → 𝑦 ∈ ℤ )
56 55 adantl ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → 𝑦 ∈ ℤ )
57 simplr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → 𝐵𝑉 )
58 eqid ( invg𝑊 ) = ( invg𝑊 )
59 1 2 58 mulgneg ( ( 𝑊 ∈ Grp ∧ 𝑦 ∈ ℤ ∧ 𝐵𝑉 ) → ( - 𝑦 𝐵 ) = ( ( invg𝑊 ) ‘ ( 𝑦 𝐵 ) ) )
60 54 56 57 59 syl3anc ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → ( - 𝑦 𝐵 ) = ( ( invg𝑊 ) ‘ ( 𝑦 𝐵 ) ) )
61 simpll ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → 𝑊 ∈ ℂMod )
62 37 ad2antrr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → ℤ ⊆ ( Base ‘ ( Scalar ‘ 𝑊 ) ) )
63 62 56 sseldd ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → 𝑦 ∈ ( Base ‘ ( Scalar ‘ 𝑊 ) ) )
64 1 22 3 58 36 61 57 63 clmvsneg ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → ( ( invg𝑊 ) ‘ ( 𝑦 · 𝐵 ) ) = ( - 𝑦 · 𝐵 ) )
65 64 eqcomd ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → ( - 𝑦 · 𝐵 ) = ( ( invg𝑊 ) ‘ ( 𝑦 · 𝐵 ) ) )
66 60 65 eqeq12d ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → ( ( - 𝑦 𝐵 ) = ( - 𝑦 · 𝐵 ) ↔ ( ( invg𝑊 ) ‘ ( 𝑦 𝐵 ) ) = ( ( invg𝑊 ) ‘ ( 𝑦 · 𝐵 ) ) ) )
67 53 66 syl5ibr ( ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) ∧ 𝑦 ∈ ℕ ) → ( ( 𝑦 𝐵 ) = ( 𝑦 · 𝐵 ) → ( - 𝑦 𝐵 ) = ( - 𝑦 · 𝐵 ) ) )
68 67 ex ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) → ( 𝑦 ∈ ℕ → ( ( 𝑦 𝐵 ) = ( 𝑦 · 𝐵 ) → ( - 𝑦 𝐵 ) = ( - 𝑦 · 𝐵 ) ) ) )
69 6 9 12 15 18 24 52 68 zindd ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉 ) → ( 𝐴 ∈ ℤ → ( 𝐴 𝐵 ) = ( 𝐴 · 𝐵 ) ) )
70 69 3impia ( ( 𝑊 ∈ ℂMod ∧ 𝐵𝑉𝐴 ∈ ℤ ) → ( 𝐴 𝐵 ) = ( 𝐴 · 𝐵 ) )
71 70 3com23 ( ( 𝑊 ∈ ℂMod ∧ 𝐴 ∈ ℤ ∧ 𝐵𝑉 ) → ( 𝐴 𝐵 ) = ( 𝐴 · 𝐵 ) )