MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  lgseisenlem3 Unicode version

Theorem lgseisenlem3 20606
Description: Lemma for lgseisen 20608. (Contributed by Mario Carneiro, 17-Jun-2015.)
Hypotheses
Ref Expression
lgseisen.1  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
lgseisen.2  |-  ( ph  ->  Q  e.  ( Prime  \  { 2 } ) )
lgseisen.3  |-  ( ph  ->  P  =/=  Q )
lgseisen.4  |-  R  =  ( ( Q  x.  ( 2  x.  x
) )  mod  P
)
lgseisen.5  |-  M  =  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) )
lgseisen.6  |-  S  =  ( ( Q  x.  ( 2  x.  y
) )  mod  P
)
lgseisen.7  |-  Y  =  (ℤ/n `  P )
lgseisen.8  |-  G  =  (mulGrp `  Y )
lgseisen.9  |-  L  =  ( ZRHom `  Y
)
Assertion
Ref Expression
lgseisenlem3  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) )  =  ( 1r `  Y
) )
Distinct variable groups:    x, G    x, L    x, y, P    ph, x, y    y, M   
x, Q, y    x, Y    x, S
Allowed substitution hints:    R( x, y)    S( y)    G( y)    L( y)    M( x)    Y( y)

Proof of Theorem lgseisenlem3
Dummy variable  k is distinct from all other variables.
StepHypRef Expression
1 oveq2 5882 . . . . . . . . 9  |-  ( k  =  x  ->  (
2  x.  k )  =  ( 2  x.  x ) )
21fveq2d 5545 . . . . . . . 8  |-  ( k  =  x  ->  ( L `  ( 2  x.  k ) )  =  ( L `  (
2  x.  x ) ) )
32cbvmptv 4127 . . . . . . 7  |-  ( k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  k ) ) )  =  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  x
) ) )
43oveq2i 5885 . . . . . 6  |-  ( G 
gsumg  ( k  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  k ) ) ) )  =  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) )
5 lgseisen.8 . . . . . . . 8  |-  G  =  (mulGrp `  Y )
6 eqid 2296 . . . . . . . 8  |-  ( Base `  Y )  =  (
Base `  Y )
75, 6mgpbas 15347 . . . . . . 7  |-  ( Base `  Y )  =  (
Base `  G )
8 eqid 2296 . . . . . . 7  |-  ( 0g
`  G )  =  ( 0g `  G
)
9 lgseisen.1 . . . . . . . . . . 11  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
10 eldifi 3311 . . . . . . . . . . 11  |-  ( P  e.  ( Prime  \  {
2 } )  ->  P  e.  Prime )
119, 10syl 15 . . . . . . . . . 10  |-  ( ph  ->  P  e.  Prime )
12 lgseisen.7 . . . . . . . . . . 11  |-  Y  =  (ℤ/n `  P )
1312znfld 16530 . . . . . . . . . 10  |-  ( P  e.  Prime  ->  Y  e. Field
)
1411, 13syl 15 . . . . . . . . 9  |-  ( ph  ->  Y  e. Field )
15 isfld 15537 . . . . . . . . . 10  |-  ( Y  e. Field 
<->  ( Y  e.  DivRing  /\  Y  e.  CRing ) )
1615simprbi 450 . . . . . . . . 9  |-  ( Y  e. Field  ->  Y  e.  CRing )
1714, 16syl 15 . . . . . . . 8  |-  ( ph  ->  Y  e.  CRing )
185crngmgp 15365 . . . . . . . 8  |-  ( Y  e.  CRing  ->  G  e. CMnd )
1917, 18syl 15 . . . . . . 7  |-  ( ph  ->  G  e. CMnd )
20 fzfid 11051 . . . . . . 7  |-  ( ph  ->  ( 1 ... (
( P  -  1 )  /  2 ) )  e.  Fin )
21 crngrng 15367 . . . . . . . . . . . 12  |-  ( Y  e.  CRing  ->  Y  e.  Ring )
2217, 21syl 15 . . . . . . . . . . 11  |-  ( ph  ->  Y  e.  Ring )
23 eqid 2296 . . . . . . . . . . . 12  |-  (flds  ZZ )  =  (flds  ZZ )
24 lgseisen.9 . . . . . . . . . . . 12  |-  L  =  ( ZRHom `  Y
)
2523, 24zrhrhm 16482 . . . . . . . . . . 11  |-  ( Y  e.  Ring  ->  L  e.  ( (flds  ZZ ) RingHom  Y ) )
2622, 25syl 15 . . . . . . . . . 10  |-  ( ph  ->  L  e.  ( (flds  ZZ ) RingHom  Y ) )
27 zsubrg 16441 . . . . . . . . . . . 12  |-  ZZ  e.  (SubRing ` fld )
2823subrgbas 15570 . . . . . . . . . . . 12  |-  ( ZZ  e.  (SubRing ` fld )  ->  ZZ  =  ( Base `  (flds  ZZ ) ) )
2927, 28ax-mp 8 . . . . . . . . . . 11  |-  ZZ  =  ( Base `  (flds  ZZ ) )
3029, 6rhmf 15520 . . . . . . . . . 10  |-  ( L  e.  ( (flds  ZZ ) RingHom  Y )  ->  L : ZZ --> ( Base `  Y )
)
3126, 30syl 15 . . . . . . . . 9  |-  ( ph  ->  L : ZZ --> ( Base `  Y ) )
32 2z 10070 . . . . . . . . . 10  |-  2  e.  ZZ
33 elfzelz 10814 . . . . . . . . . 10  |-  ( k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  k  e.  ZZ )
34 zmulcl 10082 . . . . . . . . . 10  |-  ( ( 2  e.  ZZ  /\  k  e.  ZZ )  ->  ( 2  x.  k
)  e.  ZZ )
3532, 33, 34sylancr 644 . . . . . . . . 9  |-  ( k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  (
2  x.  k )  e.  ZZ )
36 ffvelrn 5679 . . . . . . . . 9  |-  ( ( L : ZZ --> ( Base `  Y )  /\  (
2  x.  k )  e.  ZZ )  -> 
( L `  (
2  x.  k ) )  e.  ( Base `  Y ) )
3731, 35, 36syl2an 463 . . . . . . . 8  |-  ( (
ph  /\  k  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  k ) )  e.  ( Base `  Y
) )
38 eqid 2296 . . . . . . . 8  |-  ( k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  k ) ) )  =  ( k  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  k
) ) )
3937, 38fmptd 5700 . . . . . . 7  |-  ( ph  ->  ( k  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  k ) ) ) : ( 1 ... ( ( P  -  1 )  /  2 ) ) --> ( Base `  Y
) )
4038mptpreima 5182 . . . . . . . . 9  |-  ( `' ( k  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  k ) ) ) " ( _V  \  { ( 0g
`  G ) } ) )  =  {
k  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |  ( L `  (
2  x.  k ) )  e.  ( _V 
\  { ( 0g
`  G ) } ) }
41 ssrab2 3271 . . . . . . . . 9  |-  { k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |  ( L `  ( 2  x.  k ) )  e.  ( _V  \  { ( 0g `  G ) } ) }  C_  ( 1 ... ( ( P  -  1 )  / 
2 ) )
4240, 41eqsstri 3221 . . . . . . . 8  |-  ( `' ( k  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  k ) ) ) " ( _V  \  { ( 0g
`  G ) } ) )  C_  (
1 ... ( ( P  -  1 )  / 
2 ) )
43 ssfi 7099 . . . . . . . 8  |-  ( ( ( 1 ... (
( P  -  1 )  /  2 ) )  e.  Fin  /\  ( `' ( k  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  k
) ) ) "
( _V  \  {
( 0g `  G
) } ) ) 
C_  ( 1 ... ( ( P  - 
1 )  /  2
) ) )  -> 
( `' ( k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  k ) ) )
" ( _V  \  { ( 0g `  G ) } ) )  e.  Fin )
4420, 42, 43sylancl 643 . . . . . . 7  |-  ( ph  ->  ( `' ( k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  k ) ) )
" ( _V  \  { ( 0g `  G ) } ) )  e.  Fin )
45 lgseisen.2 . . . . . . . 8  |-  ( ph  ->  Q  e.  ( Prime  \  { 2 } ) )
46 lgseisen.3 . . . . . . . 8  |-  ( ph  ->  P  =/=  Q )
47 lgseisen.4 . . . . . . . 8  |-  R  =  ( ( Q  x.  ( 2  x.  x
) )  mod  P
)
48 lgseisen.5 . . . . . . . 8  |-  M  =  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) )
49 lgseisen.6 . . . . . . . 8  |-  S  =  ( ( Q  x.  ( 2  x.  y
) )  mod  P
)
509, 45, 46, 47, 48, 49lgseisenlem2 20605 . . . . . . 7  |-  ( ph  ->  M : ( 1 ... ( ( P  -  1 )  / 
2 ) ) -1-1-onto-> ( 1 ... ( ( P  -  1 )  / 
2 ) ) )
517, 8, 19, 20, 39, 44, 50gsumf1o 15215 . . . . . 6  |-  ( ph  ->  ( G  gsumg  ( k  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  k ) ) ) )  =  ( G  gsumg  ( ( k  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  k
) ) )  o.  M ) ) )
524, 51syl5eqr 2342 . . . . 5  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) )  =  ( G  gsumg  ( ( k  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  k
) ) )  o.  M ) ) )
539, 45, 46, 47, 48lgseisenlem1 20604 . . . . . . . 8  |-  ( ph  ->  M : ( 1 ... ( ( P  -  1 )  / 
2 ) ) --> ( 1 ... ( ( P  -  1 )  /  2 ) ) )
5448fmpt 5697 . . . . . . . 8  |-  ( A. x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) ) ( ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  <->  M :
( 1 ... (
( P  -  1 )  /  2 ) ) --> ( 1 ... ( ( P  - 
1 )  /  2
) ) )
5553, 54sylibr 203 . . . . . . 7  |-  ( ph  ->  A. x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 )  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) )
5648a1i 10 . . . . . . 7  |-  ( ph  ->  M  =  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) )
57 eqidd 2297 . . . . . . 7  |-  ( ph  ->  ( k  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  k ) ) )  =  ( k  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( 2  x.  k ) ) ) )
58 oveq2 5882 . . . . . . . 8  |-  ( k  =  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 )  -> 
( 2  x.  k
)  =  ( 2  x.  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) )
5958fveq2d 5545 . . . . . . 7  |-  ( k  =  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 )  -> 
( L `  (
2  x.  k ) )  =  ( L `
 ( 2  x.  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) ) ) )
6055, 56, 57, 59fmptcof 5708 . . . . . 6  |-  ( ph  ->  ( ( k  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  k
) ) )  o.  M )  =  ( x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( 2  x.  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) ) ) )
6160oveq2d 5890 . . . . 5  |-  ( ph  ->  ( G  gsumg  ( ( k  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  k
) ) )  o.  M ) )  =  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) ) ) ) )
62 eldifi 3311 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( Q  e.  ( Prime  \  {
2 } )  ->  Q  e.  Prime )
6345, 62syl 15 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  Q  e.  Prime )
6463adantr 451 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Q  e.  Prime )
65 prmz 12778 . . . . . . . . . . . . . . . . . . . 20  |-  ( Q  e.  Prime  ->  Q  e.  ZZ )
6664, 65syl 15 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Q  e.  ZZ )
67 2nn 9893 . . . . . . . . . . . . . . . . . . . . 21  |-  2  e.  NN
68 elfznn 10835 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  e.  NN )
6968adantl 452 . . . . . . . . . . . . . . . . . . . . 21  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  e.  NN )
70 nnmulcl 9785 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( 2  e.  NN  /\  x  e.  NN )  ->  ( 2  x.  x
)  e.  NN )
7167, 69, 70sylancr 644 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  NN )
7271nnzd 10132 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  ZZ )
7366, 72zmulcld 10139 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( Q  x.  ( 2  x.  x ) )  e.  ZZ )
7411adantr 451 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  Prime )
75 prmnn 12777 . . . . . . . . . . . . . . . . . . 19  |-  ( P  e.  Prime  ->  P  e.  NN )
7674, 75syl 15 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  NN )
7773, 76zmodcld 11006 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( Q  x.  (
2  x.  x ) )  mod  P )  e.  NN0 )
7847, 77syl5eqel 2380 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  NN0 )
7978nn0zd 10131 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  ZZ )
80 m1expcl 11142 . . . . . . . . . . . . . . 15  |-  ( R  e.  ZZ  ->  ( -u 1 ^ R )  e.  ZZ )
8179, 80syl 15 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u 1 ^ R )  e.  ZZ )
8281, 79zmulcld 10139 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  R )  e.  ZZ )
8382, 76zmodcld 11006 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  NN0 )
8483nn0cnd 10036 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  CC )
85 2cn 9832 . . . . . . . . . . . 12  |-  2  e.  CC
8685a1i 10 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  e.  CC )
87 2ne0 9845 . . . . . . . . . . . 12  |-  2  =/=  0
8887a1i 10 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  =/=  0 )
8984, 86, 88divcan2d 9554 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) )  =  ( ( (
-u 1 ^ R
)  x.  R )  mod  P ) )
9089fveq2d 5545 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) ) )  =  ( L `  ( ( ( -u
1 ^ R )  x.  R )  mod 
P ) ) )
9176nnrpd 10405 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  RR+ )
92 eqidd 2297 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  mod  P )  =  ( ( -u
1 ^ R )  mod  P ) )
9347oveq1i 5884 . . . . . . . . . . . . . 14  |-  ( R  mod  P )  =  ( ( ( Q  x.  ( 2  x.  x ) )  mod 
P )  mod  P
)
9473zred 10133 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( Q  x.  ( 2  x.  x ) )  e.  RR )
95 modabs2 11014 . . . . . . . . . . . . . . 15  |-  ( ( ( Q  x.  (
2  x.  x ) )  e.  RR  /\  P  e.  RR+ )  -> 
( ( ( Q  x.  ( 2  x.  x ) )  mod 
P )  mod  P
)  =  ( ( Q  x.  ( 2  x.  x ) )  mod  P ) )
9694, 91, 95syl2anc 642 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( Q  x.  ( 2  x.  x
) )  mod  P
)  mod  P )  =  ( ( Q  x.  ( 2  x.  x ) )  mod 
P ) )
9793, 96syl5eq 2340 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( R  mod  P )  =  ( ( Q  x.  ( 2  x.  x
) )  mod  P
) )
9881, 81, 79, 73, 91, 92, 97modmul12d 11019 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  =  ( ( (
-u 1 ^ R
)  x.  ( Q  x.  ( 2  x.  x ) ) )  mod  P ) )
9982zred 10133 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  R )  e.  RR )
100 modabs2 11014 . . . . . . . . . . . . 13  |-  ( ( ( ( -u 1 ^ R )  x.  R
)  e.  RR  /\  P  e.  RR+ )  -> 
( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  mod 
P )  =  ( ( ( -u 1 ^ R )  x.  R
)  mod  P )
)
10199, 91, 100syl2anc 642 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  mod  P
)  =  ( ( ( -u 1 ^ R )  x.  R
)  mod  P )
)
10281zcnd 10134 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u 1 ^ R )  e.  CC )
10366zcnd 10134 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Q  e.  CC )
10472zcnd 10134 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  CC )
105102, 103, 104mulassd 8874 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  Q
)  x.  ( 2  x.  x ) )  =  ( ( -u
1 ^ R )  x.  ( Q  x.  ( 2  x.  x
) ) ) )
106105oveq1d 5889 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  Q )  x.  ( 2  x.  x
) )  mod  P
)  =  ( ( ( -u 1 ^ R )  x.  ( Q  x.  ( 2  x.  x ) ) )  mod  P ) )
10798, 101, 1063eqtr4d 2338 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  mod  P
)  =  ( ( ( ( -u 1 ^ R )  x.  Q
)  x.  ( 2  x.  x ) )  mod  P ) )
10811, 75syl 15 . . . . . . . . . . . . 13  |-  ( ph  ->  P  e.  NN )
109108adantr 451 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  NN )
11083nn0zd 10131 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  ZZ )
11181, 66zmulcld 10139 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  Q )  e.  ZZ )
112111, 72zmulcld 10139 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  Q
)  x.  ( 2  x.  x ) )  e.  ZZ )
113 moddvds 12554 . . . . . . . . . . . 12  |-  ( ( P  e.  NN  /\  ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  e.  ZZ  /\  ( ( ( -u
1 ^ R )  x.  Q )  x.  ( 2  x.  x
) )  e.  ZZ )  ->  ( ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  mod  P )  =  ( ( ( ( -u
1 ^ R )  x.  Q )  x.  ( 2  x.  x
) )  mod  P
)  <->  P  ||  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  -  ( ( (
-u 1 ^ R
)  x.  Q )  x.  ( 2  x.  x ) ) ) ) )
114109, 110, 112, 113syl3anc 1182 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  mod 
P )  =  ( ( ( ( -u
1 ^ R )  x.  Q )  x.  ( 2  x.  x
) )  mod  P
)  <->  P  ||  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  -  ( ( (
-u 1 ^ R
)  x.  Q )  x.  ( 2  x.  x ) ) ) ) )
115107, 114mpbid 201 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  ||  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  -  ( ( ( -u
1 ^ R )  x.  Q )  x.  ( 2  x.  x
) ) ) )
11676nnnn0d 10034 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  NN0 )
11712, 24zndvds 16519 . . . . . . . . . . 11  |-  ( ( P  e.  NN0  /\  ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  e.  ZZ  /\  ( ( ( -u
1 ^ R )  x.  Q )  x.  ( 2  x.  x
) )  e.  ZZ )  ->  ( ( L `
 ( ( (
-u 1 ^ R
)  x.  R )  mod  P ) )  =  ( L `  ( ( ( -u
1 ^ R )  x.  Q )  x.  ( 2  x.  x
) ) )  <->  P  ||  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  -  (
( ( -u 1 ^ R )  x.  Q
)  x.  ( 2  x.  x ) ) ) ) )
118116, 110, 112, 117syl3anc 1182 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( L `  (
( ( -u 1 ^ R )  x.  R
)  mod  P )
)  =  ( L `
 ( ( (
-u 1 ^ R
)  x.  Q )  x.  ( 2  x.  x ) ) )  <-> 
P  ||  ( (
( ( -u 1 ^ R )  x.  R
)  mod  P )  -  ( ( (
-u 1 ^ R
)  x.  Q )  x.  ( 2  x.  x ) ) ) ) )
119115, 118mpbird 223 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( (
( -u 1 ^ R
)  x.  R )  mod  P ) )  =  ( L `  ( ( ( -u
1 ^ R )  x.  Q )  x.  ( 2  x.  x
) ) ) )
12026adantr 451 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  L  e.  ( (flds  ZZ ) RingHom  Y ) )
121 cnfldmul 16401 . . . . . . . . . . . . 13  |-  x.  =  ( .r ` fld )
12223, 121ressmulr 13277 . . . . . . . . . . . 12  |-  ( ZZ  e.  (SubRing ` fld )  ->  x.  =  ( .r `  (flds  ZZ ) ) )
12327, 122ax-mp 8 . . . . . . . . . . 11  |-  x.  =  ( .r `  (flds  ZZ ) )
124 eqid 2296 . . . . . . . . . . 11  |-  ( .r
`  Y )  =  ( .r `  Y
)
12529, 123, 124rhmmul 15521 . . . . . . . . . 10  |-  ( ( L  e.  ( (flds  ZZ ) RingHom  Y )  /\  (
( -u 1 ^ R
)  x.  Q )  e.  ZZ  /\  (
2  x.  x )  e.  ZZ )  -> 
( L `  (
( ( -u 1 ^ R )  x.  Q
)  x.  ( 2  x.  x ) ) )  =  ( ( L `  ( (
-u 1 ^ R
)  x.  Q ) ) ( .r `  Y ) ( L `
 ( 2  x.  x ) ) ) )
126120, 111, 72, 125syl3anc 1182 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( (
( -u 1 ^ R
)  x.  Q )  x.  ( 2  x.  x ) ) )  =  ( ( L `
 ( ( -u
1 ^ R )  x.  Q ) ) ( .r `  Y
) ( L `  ( 2  x.  x
) ) ) )
12790, 119, 1263eqtrd 2332 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) ) )  =  ( ( L `
 ( ( -u
1 ^ R )  x.  Q ) ) ( .r `  Y
) ( L `  ( 2  x.  x
) ) ) )
128127mpteq2dva 4122 . . . . . . 7  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) ) )  =  ( x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ( .r `  Y ) ( L `
 ( 2  x.  x ) ) ) ) )
12931adantr 451 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  L : ZZ --> ( Base `  Y
) )
130 ffvelrn 5679 . . . . . . . . 9  |-  ( ( L : ZZ --> ( Base `  Y )  /\  (
( -u 1 ^ R
)  x.  Q )  e.  ZZ )  -> 
( L `  (
( -u 1 ^ R
)  x.  Q ) )  e.  ( Base `  Y ) )
131129, 111, 130syl2anc 642 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( ( -u 1 ^ R )  x.  Q ) )  e.  ( Base `  Y
) )
132 ffvelrn 5679 . . . . . . . . 9  |-  ( ( L : ZZ --> ( Base `  Y )  /\  (
2  x.  x )  e.  ZZ )  -> 
( L `  (
2  x.  x ) )  e.  ( Base `  Y ) )
133129, 72, 132syl2anc 642 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  x ) )  e.  ( Base `  Y
) )
134 eqidd 2297 . . . . . . . 8  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) )  =  ( x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( (
-u 1 ^ R
)  x.  Q ) ) ) )
135 eqidd 2297 . . . . . . . 8  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) )  =  ( x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( 2  x.  x ) ) ) )
13620, 131, 133, 134, 135offval2 6111 . . . . . . 7  |-  ( ph  ->  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) )  o F ( .r `  Y ) ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) ) )  =  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( ( L `  ( (
-u 1 ^ R
)  x.  Q ) ) ( .r `  Y ) ( L `
 ( 2  x.  x ) ) ) ) )
137128, 136eqtr4d 2331 . . . . . 6  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) ) )  =  ( ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) )  o F ( .r `  Y
) ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  x
) ) ) ) )
138137oveq2d 5890 . . . . 5  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) ) ) )  =  ( G  gsumg  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) )  o F ( .r `  Y ) ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) ) ) ) )
13952, 61, 1383eqtrd 2332 . . . 4  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) )  =  ( G  gsumg  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) )  o F ( .r `  Y ) ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) ) ) ) )
1405, 124mgpplusg 15345 . . . . 5  |-  ( .r
`  Y )  =  ( +g  `  G
)
141 eqid 2296 . . . . . 6  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( ( -u
1 ^ R )  x.  Q ) ) )  =  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( ( -u
1 ^ R )  x.  Q ) ) )
142131, 141fmptd 5700 . . . . 5  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) : ( 1 ... ( ( P  -  1 )  /  2 ) ) --> ( Base `  Y
) )
143 eqid 2296 . . . . . 6  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) )  =  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  x
) ) )
144133, 143fmptd 5700 . . . . 5  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) : ( 1 ... ( ( P  -  1 )  /  2 ) ) --> ( Base `  Y
) )
145141mptpreima 5182 . . . . . . 7  |-  ( `' ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) " ( _V  \  { ( 0g
`  G ) } ) )  =  {
x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |  ( L `  (
( -u 1 ^ R
)  x.  Q ) )  e.  ( _V 
\  { ( 0g
`  G ) } ) }
146 ssrab2 3271 . . . . . . 7  |-  { x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |  ( L `
 ( ( -u
1 ^ R )  x.  Q ) )  e.  ( _V  \  { ( 0g `  G ) } ) }  C_  ( 1 ... ( ( P  -  1 )  / 
2 ) )
147145, 146eqsstri 3221 . . . . . 6  |-  ( `' ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) " ( _V  \  { ( 0g
`  G ) } ) )  C_  (
1 ... ( ( P  -  1 )  / 
2 ) )
148 ssfi 7099 . . . . . 6  |-  ( ( ( 1 ... (
( P  -  1 )  /  2 ) )  e.  Fin  /\  ( `' ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) ) "
( _V  \  {
( 0g `  G
) } ) ) 
C_  ( 1 ... ( ( P  - 
1 )  /  2
) ) )  -> 
( `' ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( ( -u
1 ^ R )  x.  Q ) ) ) " ( _V 
\  { ( 0g
`  G ) } ) )  e.  Fin )
14920, 147, 148sylancl 643 . . . . 5  |-  ( ph  ->  ( `' ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( ( -u
1 ^ R )  x.  Q ) ) ) " ( _V 
\  { ( 0g
`  G ) } ) )  e.  Fin )
15020, 144fisuppfi 14466 . . . . 5  |-  ( ph  ->  ( `' ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) )
" ( _V  \  { ( 0g `  G ) } ) )  e.  Fin )
1517, 8, 140, 19, 20, 142, 144, 149, 150gsumadd 15221 . . . 4  |-  ( ph  ->  ( G  gsumg  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) )  o F ( .r `  Y ) ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) ) ) )  =  ( ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) ) ( .r `  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) ) )
152139, 151eqtrd 2328 . . 3  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) )  =  ( ( G  gsumg  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( ( -u
1 ^ R )  x.  Q ) ) ) ) ( .r
`  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) ) )
153152oveq1d 5889 . 2  |-  ( ph  ->  ( ( G  gsumg  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) ) ) (/r `  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) )  =  ( ( ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) ) ( .r `  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) ) (/r `  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) ) )
154 eqid 2296 . . . . . 6  |-  (Unit `  Y )  =  (Unit `  Y )
155154, 5unitsubm 15468 . . . . 5  |-  ( Y  e.  Ring  ->  (Unit `  Y )  e.  (SubMnd `  G ) )
15622, 155syl 15 . . . 4  |-  ( ph  ->  (Unit `  Y )  e.  (SubMnd `  G )
)
157 elfzle2 10816 . . . . . . . . . . 11  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  <_  ( ( P  - 
1 )  /  2
) )
158157adantl 452 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  <_  ( ( P  - 
1 )  /  2
) )
15969nnred 9777 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  e.  RR )
160 prmuz2 12792 . . . . . . . . . . . . 13  |-  ( P  e.  Prime  ->  P  e.  ( ZZ>= `  2 )
)
161 uz2m1nn 10308 . . . . . . . . . . . . 13  |-  ( P  e.  ( ZZ>= `  2
)  ->  ( P  -  1 )  e.  NN )
16274, 160, 1613syl 18 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  NN )
163162nnred 9777 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  RR )
164 2re 9831 . . . . . . . . . . . 12  |-  2  e.  RR
165164a1i 10 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  e.  RR )
166 2pos 9844 . . . . . . . . . . . 12  |-  0  <  2
167166a1i 10 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  0  <  2 )
168 lemuldiv2 9652 . . . . . . . . . . 11  |-  ( ( x  e.  RR  /\  ( P  -  1
)  e.  RR  /\  ( 2  e.  RR  /\  0  <  2 ) )  ->  ( (
2  x.  x )  <_  ( P  - 
1 )  <->  x  <_  ( ( P  -  1 )  /  2 ) ) )
169159, 163, 165, 167, 168syl112anc 1186 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( 2  x.  x
)  <_  ( P  -  1 )  <->  x  <_  ( ( P  -  1 )  /  2 ) ) )
170158, 169mpbird 223 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  <_  ( P  - 
1 ) )
171 prmz 12778 . . . . . . . . . . . 12  |-  ( P  e.  Prime  ->  P  e.  ZZ )
17274, 171syl 15 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  ZZ )
173 peano2zm 10078 . . . . . . . . . . 11  |-  ( P  e.  ZZ  ->  ( P  -  1 )  e.  ZZ )
174172, 173syl 15 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  ZZ )
175 fznn 10868 . . . . . . . . . 10  |-  ( ( P  -  1 )  e.  ZZ  ->  (
( 2  x.  x
)  e.  ( 1 ... ( P  - 
1 ) )  <->  ( (
2  x.  x )  e.  NN  /\  (
2  x.  x )  <_  ( P  - 
1 ) ) ) )
176174, 175syl 15 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( 2  x.  x
)  e.  ( 1 ... ( P  - 
1 ) )  <->  ( (
2  x.  x )  e.  NN  /\  (
2  x.  x )  <_  ( P  - 
1 ) ) ) )
17771, 170, 176mpbir2and 888 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  ( 1 ... ( P  -  1 ) ) )
178 fzm1ndvds 12596 . . . . . . . 8  |-  ( ( P  e.  NN  /\  ( 2  x.  x
)  e.  ( 1 ... ( P  - 
1 ) ) )  ->  -.  P  ||  (
2  x.  x ) )
17976, 177, 178syl2anc 642 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  ||  ( 2  x.  x ) )
180 eqid 2296 . . . . . . . . . 10  |-  ( 0g
`  Y )  =  ( 0g `  Y
)
18112, 24, 180zndvds0 16520 . . . . . . . . 9  |-  ( ( P  e.  NN0  /\  ( 2  x.  x
)  e.  ZZ )  ->  ( ( L `
 ( 2  x.  x ) )  =  ( 0g `  Y
)  <->  P  ||  ( 2  x.  x ) ) )
182116, 72, 181syl2anc 642 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( L `  (
2  x.  x ) )  =  ( 0g
`  Y )  <->  P  ||  (
2  x.  x ) ) )
183182necon3abid 2492 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( L `  (
2  x.  x ) )  =/=  ( 0g
`  Y )  <->  -.  P  ||  ( 2  x.  x
) ) )
184179, 183mpbird 223 . . . . . 6  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  x ) )  =/=  ( 0g `  Y
) )
18515simplbi 446 . . . . . . . . 9  |-  ( Y  e. Field  ->  Y  e.  DivRing )
18614, 185syl 15 . . . . . . . 8  |-  ( ph  ->  Y  e.  DivRing )
187186adantr 451 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Y  e.  DivRing )
1886, 154, 180drngunit 15533 . . . . . . 7  |-  ( Y  e.  DivRing  ->  ( ( L `
 ( 2  x.  x ) )  e.  (Unit `  Y )  <->  ( ( L `  (
2  x.  x ) )  e.  ( Base `  Y )  /\  ( L `  ( 2  x.  x ) )  =/=  ( 0g `  Y
) ) ) )
189187, 188syl 15 . . . . . 6  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( L `  (
2  x.  x ) )  e.  (Unit `  Y )  <->  ( ( L `  ( 2  x.  x ) )  e.  ( Base `  Y
)  /\  ( L `  ( 2  x.  x
) )  =/=  ( 0g `  Y ) ) ) )
190133, 184, 189mpbir2and 888 . . . . 5  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  x ) )  e.  (Unit `  Y )
)
191190, 143fmptd 5700 . . . 4  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) : ( 1 ... ( ( P  -  1 )  /  2 ) ) --> (Unit `  Y )
)
1928, 19, 20, 156, 191, 150gsumsubmcl 15217 . . 3  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) )  e.  (Unit `  Y )
)
193 eqid 2296 . . . 4  |-  (/r `  Y
)  =  (/r `  Y
)
194 eqid 2296 . . . 4  |-  ( 1r
`  Y )  =  ( 1r `  Y
)
195154, 193, 194dvrid 15486 . . 3  |-  ( ( Y  e.  Ring  /\  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) )  e.  (Unit `  Y )
)  ->  ( ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) (/r `  Y ) ( G 
gsumg  ( x  e.  (
1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( 2  x.  x ) ) ) ) )  =  ( 1r `  Y
) )
19622, 192, 195syl2anc 642 . 2  |-  ( ph  ->  ( ( G  gsumg  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) ) ) (/r `  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) )  =  ( 1r `  Y ) )
1977, 8, 19, 20, 142, 149gsumcl 15214 . . 3  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) )  e.  ( Base `  Y
) )
1986, 154, 193, 124dvrcan3 15490 . . 3  |-  ( ( Y  e.  Ring  /\  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) )  e.  ( Base `  Y
)  /\  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( 2  x.  x ) ) ) )  e.  (Unit `  Y ) )  -> 
( ( ( G 
gsumg  ( x  e.  (
1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( (
-u 1 ^ R
)  x.  Q ) ) ) ) ( .r `  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) ) (/r `  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) )  =  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( ( -u
1 ^ R )  x.  Q ) ) ) ) )
19922, 197, 192, 198syl3anc 1182 . 2  |-  ( ph  ->  ( ( ( G 
gsumg  ( x  e.  (
1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( (
-u 1 ^ R
)  x.  Q ) ) ) ) ( .r `  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) ) (/r `  Y ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) )  =  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( ( -u
1 ^ R )  x.  Q ) ) ) ) )
200153, 196, 1993eqtr3rd 2337 1  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) )  =  ( 1r `  Y
) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 176    /\ wa 358    = wceq 1632    e. wcel 1696    =/= wne 2459   A.wral 2556   {crab 2560   _Vcvv 2801    \ cdif 3162    C_ wss 3165   {csn 3653   class class class wbr 4039    e. cmpt 4093   `'ccnv 4704   "cima 4708    o. ccom 4709   -->wf 5267   ` cfv 5271  (class class class)co 5874    o Fcof 6092   Fincfn 6879   CCcc 8751   RRcr 8752   0cc0 8753   1c1 8754    x. cmul 8758    < clt 8883    <_ cle 8884    - cmin 9053   -ucneg 9054    / cdiv 9439   NNcn 9762   2c2 9811   NN0cn0 9981   ZZcz 10040   ZZ>=cuz 10246   RR+crp 10370   ...cfz 10798    mod cmo 10989   ^cexp 11120    || cdivides 12547   Primecprime 12774   Basecbs 13164   ↾s cress 13165   .rcmulr 13225   0gc0g 13416    gsumg cgsu 13417  SubMndcsubmnd 14430  CMndccmn 15105  mulGrpcmgp 15341   Ringcrg 15353   CRingccrg 15354   1rcur 15355  Unitcui 15437  /rcdvr 15480   RingHom crh 15510   DivRingcdr 15528  Fieldcfield 15529  SubRingcsubrg 15557  ℂfldccnfld 16393   ZRHomczrh 16467  ℤ/nczn 16470
This theorem is referenced by:  lgseisenlem4  20607
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1536  ax-5 1547  ax-17 1606  ax-9 1644  ax-8 1661  ax-13 1698  ax-14 1700  ax-6 1715  ax-7 1720  ax-11 1727  ax-12 1878  ax-ext 2277  ax-rep 4147  ax-sep 4157  ax-nul 4165  ax-pow 4204  ax-pr 4230  ax-un 4528  ax-inf2 7358  ax-cnex 8809  ax-resscn 8810  ax-1cn 8811  ax-icn 8812  ax-addcl 8813  ax-addrcl 8814  ax-mulcl 8815  ax-mulrcl 8816  ax-mulcom 8817  ax-addass 8818  ax-mulass 8819  ax-distr 8820  ax-i2m1 8821  ax-1ne0 8822  ax-1rid 8823  ax-rnegex 8824  ax-rrecex 8825  ax-cnre 8826  ax-pre-lttri 8827  ax-pre-lttrn 8828  ax-pre-ltadd 8829  ax-pre-mulgt0 8830  ax-pre-sup 8831  ax-addf 8832  ax-mulf 8833
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-tru 1310  df-ex 1532  df-nf 1535  df-sb 1639  df-eu 2160  df-mo 2161  df-clab 2283  df-cleq 2289  df-clel 2292  df-nfc 2421  df-ne 2461  df-nel 2462  df-ral 2561  df-rex 2562  df-reu 2563  df-rmo 2564  df-rab 2565  df-v 2803  df-sbc 3005  df-csb 3095  df-dif 3168  df-un 3170  df-in 3172  df-ss 3179  df-pss 3181  df-nul 3469  df-if 3579  df-pw 3640  df-sn 3659  df-pr 3660  df-tp 3661  df-op 3662  df-uni 3844  df-int 3879  df-iun 3923  df-br 4040  df-opab 4094  df-mpt 4095  df-tr 4130  df-eprel 4321  df-id 4325  df-po 4330  df-so 4331  df-fr 4368  df-se 4369  df-we 4370  df-ord 4411  df-on 4412  df-lim 4413  df-suc 4414  df-om 4673  df-xp 4711  df-rel 4712  df-cnv 4713  df-co 4714  df-dm 4715  df-rn 4716  df-res 4717  df-ima 4718  df-iota 5235  df-fun 5273  df-fn 5274  df-f 5275  df-f1 5276  df-fo 5277  df-f1o 5278  df-fv 5279  df-isom 5280  df-ov 5877  df-oprab 5878  df-mpt2 5879  df-of 6094  df-1st 6138  df-2nd 6139  df-tpos 6250  df-riota 6320  df-recs 6404  df-rdg 6439  df-1o 6495  df-2o 6496  df-oadd 6499  df-er 6676  df-ec 6678  df-qs 6682  df-map 6790  df-en 6880  df-dom 6881  df-sdom 6882  df-fin 6883  df-sup 7210  df-oi 7241  df-card 7588  df-cda 7810  df-pnf 8885  df-mnf 8886  df-xr 8887  df-ltxr 8888  df-le 8889  df-sub 9055  df-neg 9056  df-div 9440  df-nn 9763  df-2 9820  df-3 9821  df-4 9822  df-5 9823  df-6 9824  df-7 9825  df-8 9826  df-9 9827  df-10 9828  df-n0 9982  df-z 10041  df-dec 10141  df-uz 10247  df-rp 10371  df-fz 10799  df-fzo 10887  df-fl 10941  df-mod 10990  df-seq 11063  df-exp 11121  df-hash 11354  df-cj 11600  df-re 11601  df-im 11602  df-sqr 11736  df-abs 11737  df-dvds 12548  df-gcd 12702  df-prm 12775  df-struct 13166  df-ndx 13167  df-slot 13168  df-base 13169  df-sets 13170  df-ress 13171  df-plusg 13237  df-mulr 13238  df-starv 13239  df-sca 13240  df-vsca 13241  df-tset 13243  df-ple 13244  df-ds 13246  df-0g 13420  df-gsum 13421  df-imas 13427  df-divs 13428  df-mnd 14383  df-mhm 14431  df-submnd 14432  df-grp 14505  df-minusg 14506  df-sbg 14507  df-mulg 14508  df-subg 14634  df-nsg 14635  df-eqg 14636  df-ghm 14697  df-cntz 14809  df-cmn 15107  df-abl 15108  df-mgp 15342  df-rng 15356  df-cring 15357  df-ur 15358  df-oppr 15421  df-dvdsr 15439  df-unit 15440  df-invr 15470  df-dvr 15481  df-rnghom 15512  df-drng 15530  df-field 15531  df-subrg 15559  df-lmod 15645  df-lss 15706  df-lsp 15745  df-sra 15941  df-rgmod 15942  df-lidl 15943  df-rsp 15944  df-2idl 16000  df-nzr 16026  df-rlreg 16040  df-domn 16041  df-idom 16042  df-cnfld 16394  df-zrh 16471  df-zn 16474
  Copyright terms: Public domain W3C validator