Proof of Theorem dchrabs
Step | Hyp | Ref
| Expression |
1 | | dchrabs.g |
. . . . . . 7
⊢ 𝐺 = (DChr‘𝑁) |
2 | | dchrabs.z |
. . . . . . 7
⊢ 𝑍 =
(ℤ/nℤ‘𝑁) |
3 | | dchrabs.d |
. . . . . . 7
⊢ 𝐷 = (Base‘𝐺) |
4 | | eqid 2738 |
. . . . . . 7
⊢
(Base‘𝑍) =
(Base‘𝑍) |
5 | | dchrabs.x |
. . . . . . 7
⊢ (𝜑 → 𝑋 ∈ 𝐷) |
6 | 1, 2, 3, 4, 5 | dchrf 26378 |
. . . . . 6
⊢ (𝜑 → 𝑋:(Base‘𝑍)⟶ℂ) |
7 | | dchrabs.u |
. . . . . . . 8
⊢ 𝑈 = (Unit‘𝑍) |
8 | 4, 7 | unitss 19890 |
. . . . . . 7
⊢ 𝑈 ⊆ (Base‘𝑍) |
9 | | dchrabs.a |
. . . . . . 7
⊢ (𝜑 → 𝐴 ∈ 𝑈) |
10 | 8, 9 | sselid 3919 |
. . . . . 6
⊢ (𝜑 → 𝐴 ∈ (Base‘𝑍)) |
11 | 6, 10 | ffvelrnd 6955 |
. . . . 5
⊢ (𝜑 → (𝑋‘𝐴) ∈ ℂ) |
12 | 1, 2, 3, 4, 7, 5, 10 | dchrn0 26386 |
. . . . . 6
⊢ (𝜑 → ((𝑋‘𝐴) ≠ 0 ↔ 𝐴 ∈ 𝑈)) |
13 | 9, 12 | mpbird 256 |
. . . . 5
⊢ (𝜑 → (𝑋‘𝐴) ≠ 0) |
14 | 11, 13 | absrpcld 15148 |
. . . 4
⊢ (𝜑 → (abs‘(𝑋‘𝐴)) ∈
ℝ+) |
15 | 1, 3 | dchrrcl 26376 |
. . . . . . . 8
⊢ (𝑋 ∈ 𝐷 → 𝑁 ∈ ℕ) |
16 | 2, 4 | znfi 20755 |
. . . . . . . 8
⊢ (𝑁 ∈ ℕ →
(Base‘𝑍) ∈
Fin) |
17 | 5, 15, 16 | 3syl 18 |
. . . . . . 7
⊢ (𝜑 → (Base‘𝑍) ∈ Fin) |
18 | | ssfi 8944 |
. . . . . . 7
⊢
(((Base‘𝑍)
∈ Fin ∧ 𝑈 ⊆
(Base‘𝑍)) →
𝑈 ∈
Fin) |
19 | 17, 8, 18 | sylancl 586 |
. . . . . 6
⊢ (𝜑 → 𝑈 ∈ Fin) |
20 | | hashcl 14059 |
. . . . . 6
⊢ (𝑈 ∈ Fin →
(♯‘𝑈) ∈
ℕ0) |
21 | 19, 20 | syl 17 |
. . . . 5
⊢ (𝜑 → (♯‘𝑈) ∈
ℕ0) |
22 | 21 | nn0red 12282 |
. . . 4
⊢ (𝜑 → (♯‘𝑈) ∈
ℝ) |
23 | 22 | recnd 10991 |
. . . . 5
⊢ (𝜑 → (♯‘𝑈) ∈
ℂ) |
24 | 9 | ne0d 4270 |
. . . . . . 7
⊢ (𝜑 → 𝑈 ≠ ∅) |
25 | | hashnncl 14069 |
. . . . . . . 8
⊢ (𝑈 ∈ Fin →
((♯‘𝑈) ∈
ℕ ↔ 𝑈 ≠
∅)) |
26 | 19, 25 | syl 17 |
. . . . . . 7
⊢ (𝜑 → ((♯‘𝑈) ∈ ℕ ↔ 𝑈 ≠ ∅)) |
27 | 24, 26 | mpbird 256 |
. . . . . 6
⊢ (𝜑 → (♯‘𝑈) ∈
ℕ) |
28 | 27 | nnne0d 12011 |
. . . . 5
⊢ (𝜑 → (♯‘𝑈) ≠ 0) |
29 | 23, 28 | reccld 11732 |
. . . 4
⊢ (𝜑 → (1 / (♯‘𝑈)) ∈
ℂ) |
30 | 14, 22, 29 | cxpmuld 25879 |
. . 3
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐((♯‘𝑈) · (1 / (♯‘𝑈)))) = (((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈))↑𝑐(1 /
(♯‘𝑈)))) |
31 | 23, 28 | recidd 11734 |
. . . 4
⊢ (𝜑 → ((♯‘𝑈) · (1 /
(♯‘𝑈))) =
1) |
32 | 31 | oveq2d 7284 |
. . 3
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐((♯‘𝑈) · (1 / (♯‘𝑈)))) = ((abs‘(𝑋‘𝐴))↑𝑐1)) |
33 | 11 | abscld 15136 |
. . . . . . 7
⊢ (𝜑 → (abs‘(𝑋‘𝐴)) ∈ ℝ) |
34 | 33 | recnd 10991 |
. . . . . 6
⊢ (𝜑 → (abs‘(𝑋‘𝐴)) ∈ ℂ) |
35 | | cxpexp 25811 |
. . . . . 6
⊢
(((abs‘(𝑋‘𝐴)) ∈ ℂ ∧ (♯‘𝑈) ∈ ℕ0)
→ ((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈)) = ((abs‘(𝑋‘𝐴))↑(♯‘𝑈))) |
36 | 34, 21, 35 | syl2anc 584 |
. . . . 5
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈)) = ((abs‘(𝑋‘𝐴))↑(♯‘𝑈))) |
37 | 11, 21 | absexpd 15152 |
. . . . 5
⊢ (𝜑 → (abs‘((𝑋‘𝐴)↑(♯‘𝑈))) = ((abs‘(𝑋‘𝐴))↑(♯‘𝑈))) |
38 | | cnring 20608 |
. . . . . . . . . . 11
⊢
ℂfld ∈ Ring |
39 | | cnfldbas 20589 |
. . . . . . . . . . . . 13
⊢ ℂ =
(Base‘ℂfld) |
40 | | cnfld0 20610 |
. . . . . . . . . . . . 13
⊢ 0 =
(0g‘ℂfld) |
41 | | cndrng 20615 |
. . . . . . . . . . . . 13
⊢
ℂfld ∈ DivRing |
42 | 39, 40, 41 | drngui 19985 |
. . . . . . . . . . . 12
⊢ (ℂ
∖ {0}) = (Unit‘ℂfld) |
43 | | eqid 2738 |
. . . . . . . . . . . 12
⊢
(mulGrp‘ℂfld) =
(mulGrp‘ℂfld) |
44 | 42, 43 | unitsubm 19900 |
. . . . . . . . . . 11
⊢
(ℂfld ∈ Ring → (ℂ ∖ {0}) ∈
(SubMnd‘(mulGrp‘ℂfld))) |
45 | 38, 44 | mp1i 13 |
. . . . . . . . . 10
⊢ (𝜑 → (ℂ ∖ {0})
∈ (SubMnd‘(mulGrp‘ℂfld))) |
46 | | eldifsn 4721 |
. . . . . . . . . . 11
⊢ ((𝑋‘𝐴) ∈ (ℂ ∖ {0}) ↔
((𝑋‘𝐴) ∈ ℂ ∧ (𝑋‘𝐴) ≠ 0)) |
47 | 11, 13, 46 | sylanbrc 583 |
. . . . . . . . . 10
⊢ (𝜑 → (𝑋‘𝐴) ∈ (ℂ ∖
{0})) |
48 | | eqid 2738 |
. . . . . . . . . . 11
⊢
(.g‘(mulGrp‘ℂfld)) =
(.g‘(mulGrp‘ℂfld)) |
49 | | eqid 2738 |
. . . . . . . . . . 11
⊢
((mulGrp‘ℂfld) ↾s (ℂ
∖ {0})) = ((mulGrp‘ℂfld) ↾s
(ℂ ∖ {0})) |
50 | | eqid 2738 |
. . . . . . . . . . 11
⊢
(.g‘((mulGrp‘ℂfld)
↾s (ℂ ∖ {0}))) =
(.g‘((mulGrp‘ℂfld) ↾s
(ℂ ∖ {0}))) |
51 | 48, 49, 50 | submmulg 18735 |
. . . . . . . . . 10
⊢
(((ℂ ∖ {0}) ∈
(SubMnd‘(mulGrp‘ℂfld)) ∧ (♯‘𝑈) ∈ ℕ0
∧ (𝑋‘𝐴) ∈ (ℂ ∖ {0}))
→ ((♯‘𝑈)(.g‘(mulGrp‘ℂfld))(𝑋‘𝐴)) = ((♯‘𝑈)(.g‘((mulGrp‘ℂfld)
↾s (ℂ ∖ {0})))(𝑋‘𝐴))) |
52 | 45, 21, 47, 51 | syl3anc 1370 |
. . . . . . . . 9
⊢ (𝜑 → ((♯‘𝑈)(.g‘(mulGrp‘ℂfld))(𝑋‘𝐴)) = ((♯‘𝑈)(.g‘((mulGrp‘ℂfld)
↾s (ℂ ∖ {0})))(𝑋‘𝐴))) |
53 | | eqid 2738 |
. . . . . . . . . . . 12
⊢
((mulGrp‘𝑍)
↾s 𝑈) =
((mulGrp‘𝑍)
↾s 𝑈) |
54 | 1, 2, 3, 7, 53, 49, 5 | dchrghm 26392 |
. . . . . . . . . . 11
⊢ (𝜑 → (𝑋 ↾ 𝑈) ∈ (((mulGrp‘𝑍) ↾s 𝑈) GrpHom
((mulGrp‘ℂfld) ↾s (ℂ ∖
{0})))) |
55 | 21 | nn0zd 12412 |
. . . . . . . . . . 11
⊢ (𝜑 → (♯‘𝑈) ∈
ℤ) |
56 | 7, 53 | unitgrpbas 19896 |
. . . . . . . . . . . 12
⊢ 𝑈 =
(Base‘((mulGrp‘𝑍) ↾s 𝑈)) |
57 | | eqid 2738 |
. . . . . . . . . . . 12
⊢
(.g‘((mulGrp‘𝑍) ↾s 𝑈)) =
(.g‘((mulGrp‘𝑍) ↾s 𝑈)) |
58 | 56, 57, 50 | ghmmulg 18834 |
. . . . . . . . . . 11
⊢ (((𝑋 ↾ 𝑈) ∈ (((mulGrp‘𝑍) ↾s 𝑈) GrpHom
((mulGrp‘ℂfld) ↾s (ℂ ∖
{0}))) ∧ (♯‘𝑈) ∈ ℤ ∧ 𝐴 ∈ 𝑈) → ((𝑋 ↾ 𝑈)‘((♯‘𝑈)(.g‘((mulGrp‘𝑍) ↾s 𝑈))𝐴)) = ((♯‘𝑈)(.g‘((mulGrp‘ℂfld)
↾s (ℂ ∖ {0})))((𝑋 ↾ 𝑈)‘𝐴))) |
59 | 54, 55, 9, 58 | syl3anc 1370 |
. . . . . . . . . 10
⊢ (𝜑 → ((𝑋 ↾ 𝑈)‘((♯‘𝑈)(.g‘((mulGrp‘𝑍) ↾s 𝑈))𝐴)) = ((♯‘𝑈)(.g‘((mulGrp‘ℂfld)
↾s (ℂ ∖ {0})))((𝑋 ↾ 𝑈)‘𝐴))) |
60 | 5, 15 | syl 17 |
. . . . . . . . . . . . . . . . 17
⊢ (𝜑 → 𝑁 ∈ ℕ) |
61 | 60 | nnnn0d 12281 |
. . . . . . . . . . . . . . . 16
⊢ (𝜑 → 𝑁 ∈
ℕ0) |
62 | 2 | zncrng 20740 |
. . . . . . . . . . . . . . . 16
⊢ (𝑁 ∈ ℕ0
→ 𝑍 ∈
CRing) |
63 | | crngring 19783 |
. . . . . . . . . . . . . . . 16
⊢ (𝑍 ∈ CRing → 𝑍 ∈ Ring) |
64 | 61, 62, 63 | 3syl 18 |
. . . . . . . . . . . . . . 15
⊢ (𝜑 → 𝑍 ∈ Ring) |
65 | 7, 53 | unitgrp 19897 |
. . . . . . . . . . . . . . 15
⊢ (𝑍 ∈ Ring →
((mulGrp‘𝑍)
↾s 𝑈)
∈ Grp) |
66 | 64, 65 | syl 17 |
. . . . . . . . . . . . . 14
⊢ (𝜑 → ((mulGrp‘𝑍) ↾s 𝑈) ∈ Grp) |
67 | | eqid 2738 |
. . . . . . . . . . . . . . 15
⊢
(od‘((mulGrp‘𝑍) ↾s 𝑈)) = (od‘((mulGrp‘𝑍) ↾s 𝑈)) |
68 | 56, 67 | oddvds2 19161 |
. . . . . . . . . . . . . 14
⊢
((((mulGrp‘𝑍)
↾s 𝑈)
∈ Grp ∧ 𝑈 ∈
Fin ∧ 𝐴 ∈ 𝑈) →
((od‘((mulGrp‘𝑍) ↾s 𝑈))‘𝐴) ∥ (♯‘𝑈)) |
69 | 66, 19, 9, 68 | syl3anc 1370 |
. . . . . . . . . . . . 13
⊢ (𝜑 →
((od‘((mulGrp‘𝑍) ↾s 𝑈))‘𝐴) ∥ (♯‘𝑈)) |
70 | | eqid 2738 |
. . . . . . . . . . . . . . 15
⊢
(0g‘((mulGrp‘𝑍) ↾s 𝑈)) =
(0g‘((mulGrp‘𝑍) ↾s 𝑈)) |
71 | 56, 67, 57, 70 | oddvds 19143 |
. . . . . . . . . . . . . 14
⊢
((((mulGrp‘𝑍)
↾s 𝑈)
∈ Grp ∧ 𝐴 ∈
𝑈 ∧
(♯‘𝑈) ∈
ℤ) → (((od‘((mulGrp‘𝑍) ↾s 𝑈))‘𝐴) ∥ (♯‘𝑈) ↔ ((♯‘𝑈)(.g‘((mulGrp‘𝑍) ↾s 𝑈))𝐴) =
(0g‘((mulGrp‘𝑍) ↾s 𝑈)))) |
72 | 66, 9, 55, 71 | syl3anc 1370 |
. . . . . . . . . . . . 13
⊢ (𝜑 →
(((od‘((mulGrp‘𝑍) ↾s 𝑈))‘𝐴) ∥ (♯‘𝑈) ↔ ((♯‘𝑈)(.g‘((mulGrp‘𝑍) ↾s 𝑈))𝐴) =
(0g‘((mulGrp‘𝑍) ↾s 𝑈)))) |
73 | 69, 72 | mpbid 231 |
. . . . . . . . . . . 12
⊢ (𝜑 → ((♯‘𝑈)(.g‘((mulGrp‘𝑍) ↾s 𝑈))𝐴) =
(0g‘((mulGrp‘𝑍) ↾s 𝑈))) |
74 | | eqid 2738 |
. . . . . . . . . . . . . 14
⊢
(1r‘𝑍) = (1r‘𝑍) |
75 | 7, 53, 74 | unitgrpid 19899 |
. . . . . . . . . . . . 13
⊢ (𝑍 ∈ Ring →
(1r‘𝑍) =
(0g‘((mulGrp‘𝑍) ↾s 𝑈))) |
76 | 64, 75 | syl 17 |
. . . . . . . . . . . 12
⊢ (𝜑 → (1r‘𝑍) =
(0g‘((mulGrp‘𝑍) ↾s 𝑈))) |
77 | 73, 76 | eqtr4d 2781 |
. . . . . . . . . . 11
⊢ (𝜑 → ((♯‘𝑈)(.g‘((mulGrp‘𝑍) ↾s 𝑈))𝐴) = (1r‘𝑍)) |
78 | 77 | fveq2d 6771 |
. . . . . . . . . 10
⊢ (𝜑 → ((𝑋 ↾ 𝑈)‘((♯‘𝑈)(.g‘((mulGrp‘𝑍) ↾s 𝑈))𝐴)) = ((𝑋 ↾ 𝑈)‘(1r‘𝑍))) |
79 | 9 | fvresd 6787 |
. . . . . . . . . . 11
⊢ (𝜑 → ((𝑋 ↾ 𝑈)‘𝐴) = (𝑋‘𝐴)) |
80 | 79 | oveq2d 7284 |
. . . . . . . . . 10
⊢ (𝜑 → ((♯‘𝑈)(.g‘((mulGrp‘ℂfld)
↾s (ℂ ∖ {0})))((𝑋 ↾ 𝑈)‘𝐴)) = ((♯‘𝑈)(.g‘((mulGrp‘ℂfld)
↾s (ℂ ∖ {0})))(𝑋‘𝐴))) |
81 | 59, 78, 80 | 3eqtr3d 2786 |
. . . . . . . . 9
⊢ (𝜑 → ((𝑋 ↾ 𝑈)‘(1r‘𝑍)) = ((♯‘𝑈)(.g‘((mulGrp‘ℂfld)
↾s (ℂ ∖ {0})))(𝑋‘𝐴))) |
82 | 7, 74 | 1unit 19888 |
. . . . . . . . . 10
⊢ (𝑍 ∈ Ring →
(1r‘𝑍)
∈ 𝑈) |
83 | | fvres 6786 |
. . . . . . . . . 10
⊢
((1r‘𝑍) ∈ 𝑈 → ((𝑋 ↾ 𝑈)‘(1r‘𝑍)) = (𝑋‘(1r‘𝑍))) |
84 | 64, 82, 83 | 3syl 18 |
. . . . . . . . 9
⊢ (𝜑 → ((𝑋 ↾ 𝑈)‘(1r‘𝑍)) = (𝑋‘(1r‘𝑍))) |
85 | 52, 81, 84 | 3eqtr2d 2784 |
. . . . . . . 8
⊢ (𝜑 → ((♯‘𝑈)(.g‘(mulGrp‘ℂfld))(𝑋‘𝐴)) = (𝑋‘(1r‘𝑍))) |
86 | | cnfldexp 20619 |
. . . . . . . . 9
⊢ (((𝑋‘𝐴) ∈ ℂ ∧ (♯‘𝑈) ∈ ℕ0)
→ ((♯‘𝑈)(.g‘(mulGrp‘ℂfld))(𝑋‘𝐴)) = ((𝑋‘𝐴)↑(♯‘𝑈))) |
87 | 11, 21, 86 | syl2anc 584 |
. . . . . . . 8
⊢ (𝜑 → ((♯‘𝑈)(.g‘(mulGrp‘ℂfld))(𝑋‘𝐴)) = ((𝑋‘𝐴)↑(♯‘𝑈))) |
88 | 1, 2, 3 | dchrmhm 26377 |
. . . . . . . . . 10
⊢ 𝐷 ⊆ ((mulGrp‘𝑍) MndHom
(mulGrp‘ℂfld)) |
89 | 88, 5 | sselid 3919 |
. . . . . . . . 9
⊢ (𝜑 → 𝑋 ∈ ((mulGrp‘𝑍) MndHom
(mulGrp‘ℂfld))) |
90 | | eqid 2738 |
. . . . . . . . . . 11
⊢
(mulGrp‘𝑍) =
(mulGrp‘𝑍) |
91 | 90, 74 | ringidval 19727 |
. . . . . . . . . 10
⊢
(1r‘𝑍) = (0g‘(mulGrp‘𝑍)) |
92 | | cnfld1 20611 |
. . . . . . . . . . 11
⊢ 1 =
(1r‘ℂfld) |
93 | 43, 92 | ringidval 19727 |
. . . . . . . . . 10
⊢ 1 =
(0g‘(mulGrp‘ℂfld)) |
94 | 91, 93 | mhm0 18426 |
. . . . . . . . 9
⊢ (𝑋 ∈ ((mulGrp‘𝑍) MndHom
(mulGrp‘ℂfld)) → (𝑋‘(1r‘𝑍)) = 1) |
95 | 89, 94 | syl 17 |
. . . . . . . 8
⊢ (𝜑 → (𝑋‘(1r‘𝑍)) = 1) |
96 | 85, 87, 95 | 3eqtr3d 2786 |
. . . . . . 7
⊢ (𝜑 → ((𝑋‘𝐴)↑(♯‘𝑈)) = 1) |
97 | 96 | fveq2d 6771 |
. . . . . 6
⊢ (𝜑 → (abs‘((𝑋‘𝐴)↑(♯‘𝑈))) = (abs‘1)) |
98 | | abs1 14997 |
. . . . . 6
⊢
(abs‘1) = 1 |
99 | 97, 98 | eqtrdi 2794 |
. . . . 5
⊢ (𝜑 → (abs‘((𝑋‘𝐴)↑(♯‘𝑈))) = 1) |
100 | 36, 37, 99 | 3eqtr2d 2784 |
. . . 4
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈)) = 1) |
101 | 100 | oveq1d 7283 |
. . 3
⊢ (𝜑 → (((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈))↑𝑐(1 /
(♯‘𝑈))) =
(1↑𝑐(1 / (♯‘𝑈)))) |
102 | 30, 32, 101 | 3eqtr3d 2786 |
. 2
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐1) =
(1↑𝑐(1 / (♯‘𝑈)))) |
103 | 34 | cxp1d 25849 |
. 2
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐1) =
(abs‘(𝑋‘𝐴))) |
104 | 29 | 1cxpd 25850 |
. 2
⊢ (𝜑 →
(1↑𝑐(1 / (♯‘𝑈))) = 1) |
105 | 102, 103,
104 | 3eqtr3d 2786 |
1
⊢ (𝜑 → (abs‘(𝑋‘𝐴)) = 1) |