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 26390 |
. . . . . 6
⊢ (𝜑 → 𝑋:(Base‘𝑍)⟶ℂ) |
7 | | dchrabs.u |
. . . . . . . 8
⊢ 𝑈 = (Unit‘𝑍) |
8 | 4, 7 | unitss 19902 |
. . . . . . 7
⊢ 𝑈 ⊆ (Base‘𝑍) |
9 | | dchrabs.a |
. . . . . . 7
⊢ (𝜑 → 𝐴 ∈ 𝑈) |
10 | 8, 9 | sselid 3919 |
. . . . . 6
⊢ (𝜑 → 𝐴 ∈ (Base‘𝑍)) |
11 | 6, 10 | ffvelrnd 6962 |
. . . . 5
⊢ (𝜑 → (𝑋‘𝐴) ∈ ℂ) |
12 | 1, 2, 3, 4, 7, 5, 10 | dchrn0 26398 |
. . . . . 6
⊢ (𝜑 → ((𝑋‘𝐴) ≠ 0 ↔ 𝐴 ∈ 𝑈)) |
13 | 9, 12 | mpbird 256 |
. . . . 5
⊢ (𝜑 → (𝑋‘𝐴) ≠ 0) |
14 | 11, 13 | absrpcld 15160 |
. . . 4
⊢ (𝜑 → (abs‘(𝑋‘𝐴)) ∈
ℝ+) |
15 | 1, 3 | dchrrcl 26388 |
. . . . . . . 8
⊢ (𝑋 ∈ 𝐷 → 𝑁 ∈ ℕ) |
16 | 2, 4 | znfi 20767 |
. . . . . . . 8
⊢ (𝑁 ∈ ℕ →
(Base‘𝑍) ∈
Fin) |
17 | 5, 15, 16 | 3syl 18 |
. . . . . . 7
⊢ (𝜑 → (Base‘𝑍) ∈ Fin) |
18 | | ssfi 8956 |
. . . . . . 7
⊢
(((Base‘𝑍)
∈ Fin ∧ 𝑈 ⊆
(Base‘𝑍)) →
𝑈 ∈
Fin) |
19 | 17, 8, 18 | sylancl 586 |
. . . . . 6
⊢ (𝜑 → 𝑈 ∈ Fin) |
20 | | hashcl 14071 |
. . . . . 6
⊢ (𝑈 ∈ Fin →
(♯‘𝑈) ∈
ℕ0) |
21 | 19, 20 | syl 17 |
. . . . 5
⊢ (𝜑 → (♯‘𝑈) ∈
ℕ0) |
22 | 21 | nn0red 12294 |
. . . 4
⊢ (𝜑 → (♯‘𝑈) ∈
ℝ) |
23 | 22 | recnd 11003 |
. . . . 5
⊢ (𝜑 → (♯‘𝑈) ∈
ℂ) |
24 | 9 | ne0d 4269 |
. . . . . . 7
⊢ (𝜑 → 𝑈 ≠ ∅) |
25 | | hashnncl 14081 |
. . . . . . . 8
⊢ (𝑈 ∈ Fin →
((♯‘𝑈) ∈
ℕ ↔ 𝑈 ≠
∅)) |
26 | 19, 25 | syl 17 |
. . . . . . 7
⊢ (𝜑 → ((♯‘𝑈) ∈ ℕ ↔ 𝑈 ≠ ∅)) |
27 | 24, 26 | mpbird 256 |
. . . . . 6
⊢ (𝜑 → (♯‘𝑈) ∈
ℕ) |
28 | 27 | nnne0d 12023 |
. . . . 5
⊢ (𝜑 → (♯‘𝑈) ≠ 0) |
29 | 23, 28 | reccld 11744 |
. . . 4
⊢ (𝜑 → (1 / (♯‘𝑈)) ∈
ℂ) |
30 | 14, 22, 29 | cxpmuld 25891 |
. . 3
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐((♯‘𝑈) · (1 / (♯‘𝑈)))) = (((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈))↑𝑐(1 /
(♯‘𝑈)))) |
31 | 23, 28 | recidd 11746 |
. . . 4
⊢ (𝜑 → ((♯‘𝑈) · (1 /
(♯‘𝑈))) =
1) |
32 | 31 | oveq2d 7291 |
. . 3
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐((♯‘𝑈) · (1 / (♯‘𝑈)))) = ((abs‘(𝑋‘𝐴))↑𝑐1)) |
33 | 11 | abscld 15148 |
. . . . . . 7
⊢ (𝜑 → (abs‘(𝑋‘𝐴)) ∈ ℝ) |
34 | 33 | recnd 11003 |
. . . . . 6
⊢ (𝜑 → (abs‘(𝑋‘𝐴)) ∈ ℂ) |
35 | | cxpexp 25823 |
. . . . . 6
⊢
(((abs‘(𝑋‘𝐴)) ∈ ℂ ∧ (♯‘𝑈) ∈ ℕ0)
→ ((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈)) = ((abs‘(𝑋‘𝐴))↑(♯‘𝑈))) |
36 | 34, 21, 35 | syl2anc 584 |
. . . . 5
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈)) = ((abs‘(𝑋‘𝐴))↑(♯‘𝑈))) |
37 | 11, 21 | absexpd 15164 |
. . . . 5
⊢ (𝜑 → (abs‘((𝑋‘𝐴)↑(♯‘𝑈))) = ((abs‘(𝑋‘𝐴))↑(♯‘𝑈))) |
38 | | cnring 20620 |
. . . . . . . . . . 11
⊢
ℂfld ∈ Ring |
39 | | cnfldbas 20601 |
. . . . . . . . . . . . 13
⊢ ℂ =
(Base‘ℂfld) |
40 | | cnfld0 20622 |
. . . . . . . . . . . . 13
⊢ 0 =
(0g‘ℂfld) |
41 | | cndrng 20627 |
. . . . . . . . . . . . 13
⊢
ℂfld ∈ DivRing |
42 | 39, 40, 41 | drngui 19997 |
. . . . . . . . . . . 12
⊢ (ℂ
∖ {0}) = (Unit‘ℂfld) |
43 | | eqid 2738 |
. . . . . . . . . . . 12
⊢
(mulGrp‘ℂfld) =
(mulGrp‘ℂfld) |
44 | 42, 43 | unitsubm 19912 |
. . . . . . . . . . 11
⊢
(ℂfld ∈ Ring → (ℂ ∖ {0}) ∈
(SubMnd‘(mulGrp‘ℂfld))) |
45 | 38, 44 | mp1i 13 |
. . . . . . . . . 10
⊢ (𝜑 → (ℂ ∖ {0})
∈ (SubMnd‘(mulGrp‘ℂfld))) |
46 | | eldifsn 4720 |
. . . . . . . . . . 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 18747 |
. . . . . . . . . 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 26404 |
. . . . . . . . . . 11
⊢ (𝜑 → (𝑋 ↾ 𝑈) ∈ (((mulGrp‘𝑍) ↾s 𝑈) GrpHom
((mulGrp‘ℂfld) ↾s (ℂ ∖
{0})))) |
55 | 21 | nn0zd 12424 |
. . . . . . . . . . 11
⊢ (𝜑 → (♯‘𝑈) ∈
ℤ) |
56 | 7, 53 | unitgrpbas 19908 |
. . . . . . . . . . . 12
⊢ 𝑈 =
(Base‘((mulGrp‘𝑍) ↾s 𝑈)) |
57 | | eqid 2738 |
. . . . . . . . . . . 12
⊢
(.g‘((mulGrp‘𝑍) ↾s 𝑈)) =
(.g‘((mulGrp‘𝑍) ↾s 𝑈)) |
58 | 56, 57, 50 | ghmmulg 18846 |
. . . . . . . . . . 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 12293 |
. . . . . . . . . . . . . . . 16
⊢ (𝜑 → 𝑁 ∈
ℕ0) |
62 | 2 | zncrng 20752 |
. . . . . . . . . . . . . . . 16
⊢ (𝑁 ∈ ℕ0
→ 𝑍 ∈
CRing) |
63 | | crngring 19795 |
. . . . . . . . . . . . . . . 16
⊢ (𝑍 ∈ CRing → 𝑍 ∈ Ring) |
64 | 61, 62, 63 | 3syl 18 |
. . . . . . . . . . . . . . 15
⊢ (𝜑 → 𝑍 ∈ Ring) |
65 | 7, 53 | unitgrp 19909 |
. . . . . . . . . . . . . . 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 19173 |
. . . . . . . . . . . . . 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 19155 |
. . . . . . . . . . . . . 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 19911 |
. . . . . . . . . . . . 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 6778 |
. . . . . . . . . 10
⊢ (𝜑 → ((𝑋 ↾ 𝑈)‘((♯‘𝑈)(.g‘((mulGrp‘𝑍) ↾s 𝑈))𝐴)) = ((𝑋 ↾ 𝑈)‘(1r‘𝑍))) |
79 | 9 | fvresd 6794 |
. . . . . . . . . . 11
⊢ (𝜑 → ((𝑋 ↾ 𝑈)‘𝐴) = (𝑋‘𝐴)) |
80 | 79 | oveq2d 7291 |
. . . . . . . . . 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 19900 |
. . . . . . . . . 10
⊢ (𝑍 ∈ Ring →
(1r‘𝑍)
∈ 𝑈) |
83 | | fvres 6793 |
. . . . . . . . . 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 20631 |
. . . . . . . . 9
⊢ (((𝑋‘𝐴) ∈ ℂ ∧ (♯‘𝑈) ∈ ℕ0)
→ ((♯‘𝑈)(.g‘(mulGrp‘ℂfld))(𝑋‘𝐴)) = ((𝑋‘𝐴)↑(♯‘𝑈))) |
87 | 11, 21, 86 | syl2anc 584 |
. . . . . . . 8
⊢ (𝜑 → ((♯‘𝑈)(.g‘(mulGrp‘ℂfld))(𝑋‘𝐴)) = ((𝑋‘𝐴)↑(♯‘𝑈))) |
88 | 1, 2, 3 | dchrmhm 26389 |
. . . . . . . . . 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 19739 |
. . . . . . . . . 10
⊢
(1r‘𝑍) = (0g‘(mulGrp‘𝑍)) |
92 | | cnfld1 20623 |
. . . . . . . . . . 11
⊢ 1 =
(1r‘ℂfld) |
93 | 43, 92 | ringidval 19739 |
. . . . . . . . . 10
⊢ 1 =
(0g‘(mulGrp‘ℂfld)) |
94 | 91, 93 | mhm0 18438 |
. . . . . . . . 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 6778 |
. . . . . 6
⊢ (𝜑 → (abs‘((𝑋‘𝐴)↑(♯‘𝑈))) = (abs‘1)) |
98 | | abs1 15009 |
. . . . . 6
⊢
(abs‘1) = 1 |
99 | 97, 98 | eqtrdi 2794 |
. . . . 5
⊢ (𝜑 → (abs‘((𝑋‘𝐴)↑(♯‘𝑈))) = 1) |
100 | 36, 37, 99 | 3eqtr2d 2784 |
. . . 4
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈)) = 1) |
101 | 100 | oveq1d 7290 |
. . 3
⊢ (𝜑 → (((abs‘(𝑋‘𝐴))↑𝑐(♯‘𝑈))↑𝑐(1 /
(♯‘𝑈))) =
(1↑𝑐(1 / (♯‘𝑈)))) |
102 | 30, 32, 101 | 3eqtr3d 2786 |
. 2
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐1) =
(1↑𝑐(1 / (♯‘𝑈)))) |
103 | 34 | cxp1d 25861 |
. 2
⊢ (𝜑 → ((abs‘(𝑋‘𝐴))↑𝑐1) =
(abs‘(𝑋‘𝐴))) |
104 | 29 | 1cxpd 25862 |
. 2
⊢ (𝜑 →
(1↑𝑐(1 / (♯‘𝑈))) = 1) |
105 | 102, 103,
104 | 3eqtr3d 2786 |
1
⊢ (𝜑 → (abs‘(𝑋‘𝐴)) = 1) |