Metamath Proof Explorer


Theorem aks6d1c6isolem2

Description: Lemma to construct the group homomorphism for the AKS Theorem. (Contributed by metakunt, 14-May-2025)

Ref Expression
Hypotheses aks6d1c6isolem1.1
|- ( ph -> R e. CMnd )
aks6d1c6isolem1.2
|- ( ph -> K e. NN )
aks6d1c6isolem1.3
|- U = { a e. ( Base ` R ) | E. i e. ( Base ` R ) ( i ( +g ` R ) a ) = ( 0g ` R ) }
aks6d1c6isolem1.4
|- F = ( x e. ZZ |-> ( x ( .g ` ( R |`s U ) ) M ) )
aks6d1c6isolem1.5
|- ( ph -> M e. ( R PrimRoots K ) )
Assertion aks6d1c6isolem2
|- ( ph -> F e. ( ZZring GrpHom ( ( R |`s U ) |`s ran F ) ) )

Proof

Step Hyp Ref Expression
1 aks6d1c6isolem1.1
 |-  ( ph -> R e. CMnd )
2 aks6d1c6isolem1.2
 |-  ( ph -> K e. NN )
3 aks6d1c6isolem1.3
 |-  U = { a e. ( Base ` R ) | E. i e. ( Base ` R ) ( i ( +g ` R ) a ) = ( 0g ` R ) }
4 aks6d1c6isolem1.4
 |-  F = ( x e. ZZ |-> ( x ( .g ` ( R |`s U ) ) M ) )
5 aks6d1c6isolem1.5
 |-  ( ph -> M e. ( R PrimRoots K ) )
6 zringbas
 |-  ZZ = ( Base ` ZZring )
7 eqid
 |-  ( Base ` ( ( R |`s U ) |`s ran F ) ) = ( Base ` ( ( R |`s U ) |`s ran F ) )
8 zringplusg
 |-  + = ( +g ` ZZring )
9 zex
 |-  ZZ e. _V
10 9 mptex
 |-  ( x e. ZZ |-> ( x ( .g ` ( R |`s U ) ) M ) ) e. _V
11 4 10 eqeltri
 |-  F e. _V
12 11 rnex
 |-  ran F e. _V
13 eqid
 |-  ( ( R |`s U ) |`s ran F ) = ( ( R |`s U ) |`s ran F )
14 eqid
 |-  ( +g ` ( R |`s U ) ) = ( +g ` ( R |`s U ) )
15 13 14 ressplusg
 |-  ( ran F e. _V -> ( +g ` ( R |`s U ) ) = ( +g ` ( ( R |`s U ) |`s ran F ) ) )
16 12 15 ax-mp
 |-  ( +g ` ( R |`s U ) ) = ( +g ` ( ( R |`s U ) |`s ran F ) )
17 zringring
 |-  ZZring e. Ring
18 17 a1i
 |-  ( ph -> ZZring e. Ring )
19 ringgrp
 |-  ( ZZring e. Ring -> ZZring e. Grp )
20 18 19 syl
 |-  ( ph -> ZZring e. Grp )
21 1 2 3 4 5 aks6d1c6isolem1
 |-  ( ph -> ( ( R |`s U ) |`s ran F ) e. Grp )
22 ovexd
 |-  ( ( ph /\ x e. ZZ ) -> ( x ( .g ` ( R |`s U ) ) M ) e. _V )
23 22 4 fmptd
 |-  ( ph -> F : ZZ --> _V )
24 ffn
 |-  ( F : ZZ --> _V -> F Fn ZZ )
25 23 24 syl
 |-  ( ph -> F Fn ZZ )
26 dffn3
 |-  ( F Fn ZZ <-> F : ZZ --> ran F )
27 25 26 sylib
 |-  ( ph -> F : ZZ --> ran F )
28 fvelrnb
 |-  ( F Fn ZZ -> ( w e. ran F <-> E. v e. ZZ ( F ` v ) = w ) )
29 25 28 syl
 |-  ( ph -> ( w e. ran F <-> E. v e. ZZ ( F ` v ) = w ) )
30 29 biimpd
 |-  ( ph -> ( w e. ran F -> E. v e. ZZ ( F ` v ) = w ) )
31 30 imp
 |-  ( ( ph /\ w e. ran F ) -> E. v e. ZZ ( F ` v ) = w )
32 simpr
 |-  ( ( ( ( ph /\ E. v e. ZZ ( F ` v ) = w ) /\ z e. ZZ ) /\ ( F ` z ) = w ) -> ( F ` z ) = w )
33 32 eqcomd
 |-  ( ( ( ( ph /\ E. v e. ZZ ( F ` v ) = w ) /\ z e. ZZ ) /\ ( F ` z ) = w ) -> w = ( F ` z ) )
34 simplll
 |-  ( ( ( ( ph /\ E. v e. ZZ ( F ` v ) = w ) /\ z e. ZZ ) /\ ( F ` z ) = w ) -> ph )
35 simplr
 |-  ( ( ( ( ph /\ E. v e. ZZ ( F ` v ) = w ) /\ z e. ZZ ) /\ ( F ` z ) = w ) -> z e. ZZ )
36 34 35 jca
 |-  ( ( ( ( ph /\ E. v e. ZZ ( F ` v ) = w ) /\ z e. ZZ ) /\ ( F ` z ) = w ) -> ( ph /\ z e. ZZ ) )
37 4 a1i
 |-  ( ( ph /\ z e. ZZ ) -> F = ( x e. ZZ |-> ( x ( .g ` ( R |`s U ) ) M ) ) )
38 simpr
 |-  ( ( ( ph /\ z e. ZZ ) /\ x = z ) -> x = z )
39 38 oveq1d
 |-  ( ( ( ph /\ z e. ZZ ) /\ x = z ) -> ( x ( .g ` ( R |`s U ) ) M ) = ( z ( .g ` ( R |`s U ) ) M ) )
40 simpr
 |-  ( ( ph /\ z e. ZZ ) -> z e. ZZ )
41 ovexd
 |-  ( ( ph /\ z e. ZZ ) -> ( z ( .g ` ( R |`s U ) ) M ) e. _V )
42 37 39 40 41 fvmptd
 |-  ( ( ph /\ z e. ZZ ) -> ( F ` z ) = ( z ( .g ` ( R |`s U ) ) M ) )
43 eqid
 |-  ( Base ` ( R |`s U ) ) = ( Base ` ( R |`s U ) )
44 eqid
 |-  ( .g ` ( R |`s U ) ) = ( .g ` ( R |`s U ) )
45 1 2 3 primrootsunit
 |-  ( ph -> ( ( R PrimRoots K ) = ( ( R |`s U ) PrimRoots K ) /\ ( R |`s U ) e. Abel ) )
46 45 simprd
 |-  ( ph -> ( R |`s U ) e. Abel )
47 46 ablgrpd
 |-  ( ph -> ( R |`s U ) e. Grp )
48 47 adantr
 |-  ( ( ph /\ z e. ZZ ) -> ( R |`s U ) e. Grp )
49 45 simpld
 |-  ( ph -> ( R PrimRoots K ) = ( ( R |`s U ) PrimRoots K ) )
50 5 49 eleqtrd
 |-  ( ph -> M e. ( ( R |`s U ) PrimRoots K ) )
51 46 ablcmnd
 |-  ( ph -> ( R |`s U ) e. CMnd )
52 2 nnnn0d
 |-  ( ph -> K e. NN0 )
53 51 52 44 isprimroot
 |-  ( ph -> ( M e. ( ( R |`s U ) PrimRoots K ) <-> ( M e. ( Base ` ( R |`s U ) ) /\ ( K ( .g ` ( R |`s U ) ) M ) = ( 0g ` ( R |`s U ) ) /\ A. l e. NN0 ( ( l ( .g ` ( R |`s U ) ) M ) = ( 0g ` ( R |`s U ) ) -> K || l ) ) ) )
54 53 biimpd
 |-  ( ph -> ( M e. ( ( R |`s U ) PrimRoots K ) -> ( M e. ( Base ` ( R |`s U ) ) /\ ( K ( .g ` ( R |`s U ) ) M ) = ( 0g ` ( R |`s U ) ) /\ A. l e. NN0 ( ( l ( .g ` ( R |`s U ) ) M ) = ( 0g ` ( R |`s U ) ) -> K || l ) ) ) )
55 50 54 mpd
 |-  ( ph -> ( M e. ( Base ` ( R |`s U ) ) /\ ( K ( .g ` ( R |`s U ) ) M ) = ( 0g ` ( R |`s U ) ) /\ A. l e. NN0 ( ( l ( .g ` ( R |`s U ) ) M ) = ( 0g ` ( R |`s U ) ) -> K || l ) ) )
56 55 simp1d
 |-  ( ph -> M e. ( Base ` ( R |`s U ) ) )
57 56 adantr
 |-  ( ( ph /\ z e. ZZ ) -> M e. ( Base ` ( R |`s U ) ) )
58 43 44 48 40 57 mulgcld
 |-  ( ( ph /\ z e. ZZ ) -> ( z ( .g ` ( R |`s U ) ) M ) e. ( Base ` ( R |`s U ) ) )
59 42 58 eqeltrd
 |-  ( ( ph /\ z e. ZZ ) -> ( F ` z ) e. ( Base ` ( R |`s U ) ) )
60 36 59 syl
 |-  ( ( ( ( ph /\ E. v e. ZZ ( F ` v ) = w ) /\ z e. ZZ ) /\ ( F ` z ) = w ) -> ( F ` z ) e. ( Base ` ( R |`s U ) ) )
61 33 60 eqeltrd
 |-  ( ( ( ( ph /\ E. v e. ZZ ( F ` v ) = w ) /\ z e. ZZ ) /\ ( F ` z ) = w ) -> w e. ( Base ` ( R |`s U ) ) )
62 nfv
 |-  F/ z ( F ` v ) = w
63 nfv
 |-  F/ v ( F ` z ) = w
64 fveqeq2
 |-  ( v = z -> ( ( F ` v ) = w <-> ( F ` z ) = w ) )
65 62 63 64 cbvrexw
 |-  ( E. v e. ZZ ( F ` v ) = w <-> E. z e. ZZ ( F ` z ) = w )
66 65 biimpi
 |-  ( E. v e. ZZ ( F ` v ) = w -> E. z e. ZZ ( F ` z ) = w )
67 66 adantl
 |-  ( ( ph /\ E. v e. ZZ ( F ` v ) = w ) -> E. z e. ZZ ( F ` z ) = w )
68 61 67 r19.29a
 |-  ( ( ph /\ E. v e. ZZ ( F ` v ) = w ) -> w e. ( Base ` ( R |`s U ) ) )
69 68 ex
 |-  ( ph -> ( E. v e. ZZ ( F ` v ) = w -> w e. ( Base ` ( R |`s U ) ) ) )
70 69 adantr
 |-  ( ( ph /\ w e. ran F ) -> ( E. v e. ZZ ( F ` v ) = w -> w e. ( Base ` ( R |`s U ) ) ) )
71 70 imp
 |-  ( ( ( ph /\ w e. ran F ) /\ E. v e. ZZ ( F ` v ) = w ) -> w e. ( Base ` ( R |`s U ) ) )
72 31 71 mpdan
 |-  ( ( ph /\ w e. ran F ) -> w e. ( Base ` ( R |`s U ) ) )
73 72 ex
 |-  ( ph -> ( w e. ran F -> w e. ( Base ` ( R |`s U ) ) ) )
74 73 ssrdv
 |-  ( ph -> ran F C_ ( Base ` ( R |`s U ) ) )
75 13 43 ressbas2
 |-  ( ran F C_ ( Base ` ( R |`s U ) ) -> ran F = ( Base ` ( ( R |`s U ) |`s ran F ) ) )
76 74 75 syl
 |-  ( ph -> ran F = ( Base ` ( ( R |`s U ) |`s ran F ) ) )
77 76 feq3d
 |-  ( ph -> ( F : ZZ --> ran F <-> F : ZZ --> ( Base ` ( ( R |`s U ) |`s ran F ) ) ) )
78 27 77 mpbid
 |-  ( ph -> F : ZZ --> ( Base ` ( ( R |`s U ) |`s ran F ) ) )
79 4 a1i
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> F = ( x e. ZZ |-> ( x ( .g ` ( R |`s U ) ) M ) ) )
80 simpr
 |-  ( ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) /\ x = ( y + z ) ) -> x = ( y + z ) )
81 80 oveq1d
 |-  ( ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) /\ x = ( y + z ) ) -> ( x ( .g ` ( R |`s U ) ) M ) = ( ( y + z ) ( .g ` ( R |`s U ) ) M ) )
82 simprl
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> y e. ZZ )
83 simprr
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> z e. ZZ )
84 82 83 zaddcld
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( y + z ) e. ZZ )
85 ovexd
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( ( y + z ) ( .g ` ( R |`s U ) ) M ) e. _V )
86 79 81 84 85 fvmptd
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( F ` ( y + z ) ) = ( ( y + z ) ( .g ` ( R |`s U ) ) M ) )
87 47 adantr
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( R |`s U ) e. Grp )
88 56 adantr
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> M e. ( Base ` ( R |`s U ) ) )
89 82 83 88 3jca
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( y e. ZZ /\ z e. ZZ /\ M e. ( Base ` ( R |`s U ) ) ) )
90 43 44 14 mulgdir
 |-  ( ( ( R |`s U ) e. Grp /\ ( y e. ZZ /\ z e. ZZ /\ M e. ( Base ` ( R |`s U ) ) ) ) -> ( ( y + z ) ( .g ` ( R |`s U ) ) M ) = ( ( y ( .g ` ( R |`s U ) ) M ) ( +g ` ( R |`s U ) ) ( z ( .g ` ( R |`s U ) ) M ) ) )
91 87 89 90 syl2anc
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( ( y + z ) ( .g ` ( R |`s U ) ) M ) = ( ( y ( .g ` ( R |`s U ) ) M ) ( +g ` ( R |`s U ) ) ( z ( .g ` ( R |`s U ) ) M ) ) )
92 simpr
 |-  ( ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) /\ x = y ) -> x = y )
93 92 oveq1d
 |-  ( ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) /\ x = y ) -> ( x ( .g ` ( R |`s U ) ) M ) = ( y ( .g ` ( R |`s U ) ) M ) )
94 ovexd
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( y ( .g ` ( R |`s U ) ) M ) e. _V )
95 79 93 82 94 fvmptd
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( F ` y ) = ( y ( .g ` ( R |`s U ) ) M ) )
96 simpr
 |-  ( ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) /\ x = z ) -> x = z )
97 96 oveq1d
 |-  ( ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) /\ x = z ) -> ( x ( .g ` ( R |`s U ) ) M ) = ( z ( .g ` ( R |`s U ) ) M ) )
98 ovexd
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( z ( .g ` ( R |`s U ) ) M ) e. _V )
99 79 97 83 98 fvmptd
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( F ` z ) = ( z ( .g ` ( R |`s U ) ) M ) )
100 95 99 oveq12d
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( ( F ` y ) ( +g ` ( R |`s U ) ) ( F ` z ) ) = ( ( y ( .g ` ( R |`s U ) ) M ) ( +g ` ( R |`s U ) ) ( z ( .g ` ( R |`s U ) ) M ) ) )
101 100 eqcomd
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( ( y ( .g ` ( R |`s U ) ) M ) ( +g ` ( R |`s U ) ) ( z ( .g ` ( R |`s U ) ) M ) ) = ( ( F ` y ) ( +g ` ( R |`s U ) ) ( F ` z ) ) )
102 91 101 eqtrd
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( ( y + z ) ( .g ` ( R |`s U ) ) M ) = ( ( F ` y ) ( +g ` ( R |`s U ) ) ( F ` z ) ) )
103 86 102 eqtrd
 |-  ( ( ph /\ ( y e. ZZ /\ z e. ZZ ) ) -> ( F ` ( y + z ) ) = ( ( F ` y ) ( +g ` ( R |`s U ) ) ( F ` z ) ) )
104 6 7 8 16 20 21 78 103 isghmd
 |-  ( ph -> F e. ( ZZring GrpHom ( ( R |`s U ) |`s ran F ) ) )