ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  lgseisenlem3 Unicode version

Theorem lgseisenlem3 16203
Description: Lemma for lgseisen 16205. (Contributed by Mario Carneiro, 17-Jun-2015.) (Proof shortened by AV, 28-Jul-2019.)
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 6093 . . . . . . . . 9  |-  ( k  =  x  ->  (
2  x.  k )  =  ( 2  x.  x ) )
21fveq2d 5699 . . . . . . . 8  |-  ( k  =  x  ->  ( L `  ( 2  x.  k ) )  =  ( L `  (
2  x.  x ) ) )
32cbvmptv 4227 . . . . . . 7  |-  ( k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  k ) ) )  =  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  x
) ) )
43oveq2i 6096 . . . . . 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 eqid 2238 . . . . . . 7  |-  ( Base `  G )  =  (
Base `  G )
6 eqid 2238 . . . . . . 7  |-  ( 0g
`  G )  =  ( 0g `  G
)
7 lgseisen.1 . . . . . . . . . . 11  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
87eldifad 3231 . . . . . . . . . 10  |-  ( ph  ->  P  e.  Prime )
9 lgseisen.7 . . . . . . . . . . 11  |-  Y  =  (ℤ/n `  P )
109znidom 14994 . . . . . . . . . 10  |-  ( P  e.  Prime  ->  Y  e. IDomn
)
118, 10syl 14 . . . . . . . . 9  |-  ( ph  ->  Y  e. IDomn )
1211idomcringd 14589 . . . . . . . 8  |-  ( ph  ->  Y  e.  CRing )
13 lgseisen.8 . . . . . . . . 9  |-  G  =  (mulGrp `  Y )
1413crngmgp 14310 . . . . . . . 8  |-  ( Y  e.  CRing  ->  G  e. CMnd )
1512, 14syl 14 . . . . . . 7  |-  ( ph  ->  G  e. CMnd )
16 1zzd 9673 . . . . . . . 8  |-  ( ph  ->  1  e.  ZZ )
17 oddn2prm 13042 . . . . . . . . . 10  |-  ( P  e.  ( Prime  \  {
2 } )  ->  -.  2  ||  P )
187, 17syl 14 . . . . . . . . 9  |-  ( ph  ->  -.  2  ||  P
)
19 prmz 12891 . . . . . . . . . 10  |-  ( P  e.  Prime  ->  P  e.  ZZ )
20 oddm1d2 12661 . . . . . . . . . 10  |-  ( P  e.  ZZ  ->  ( -.  2  ||  P  <->  ( ( P  -  1 )  /  2 )  e.  ZZ ) )
218, 19, 203syl 17 . . . . . . . . 9  |-  ( ph  ->  ( -.  2  ||  P 
<->  ( ( P  - 
1 )  /  2
)  e.  ZZ ) )
2218, 21mpbid 147 . . . . . . . 8  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  e.  ZZ )
2316, 22fzfigd 10870 . . . . . . 7  |-  ( ph  ->  ( 1 ... (
( P  -  1 )  /  2 ) )  e.  Fin )
2411idomringd 14590 . . . . . . . . . . 11  |-  ( ph  ->  Y  e.  Ring )
25 lgseisen.9 . . . . . . . . . . . 12  |-  L  =  ( ZRHom `  Y
)
2625zrhrhm 14960 . . . . . . . . . . 11  |-  ( Y  e.  Ring  ->  L  e.  (ring RingHom  Y ) )
27 zringbas 14933 . . . . . . . . . . . 12  |-  ZZ  =  ( Base ` ring )
28 eqid 2238 . . . . . . . . . . . 12  |-  ( Base `  Y )  =  (
Base `  Y )
2927, 28rhmf 14472 . . . . . . . . . . 11  |-  ( L  e.  (ring RingHom  Y )  ->  L : ZZ --> ( Base `  Y
) )
3024, 26, 293syl 17 . . . . . . . . . 10  |-  ( ph  ->  L : ZZ --> ( Base `  Y ) )
31 2z 9674 . . . . . . . . . . 11  |-  2  e.  ZZ
32 elfzelz 10430 . . . . . . . . . . 11  |-  ( k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  k  e.  ZZ )
33 zmulcl 9700 . . . . . . . . . . 11  |-  ( ( 2  e.  ZZ  /\  k  e.  ZZ )  ->  ( 2  x.  k
)  e.  ZZ )
3431, 32, 33sylancr 418 . . . . . . . . . 10  |-  ( k  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  (
2  x.  k )  e.  ZZ )
35 ffvelcdm 5841 . . . . . . . . . 10  |-  ( ( L : ZZ --> ( Base `  Y )  /\  (
2  x.  k )  e.  ZZ )  -> 
( L `  (
2  x.  k ) )  e.  ( Base `  Y ) )
3630, 34, 35syl2an 289 . . . . . . . . 9  |-  ( (
ph  /\  k  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  k ) )  e.  ( Base `  Y
) )
3736fmpttd 5863 . . . . . . . 8  |-  ( ph  ->  ( k  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  k ) ) ) : ( 1 ... ( ( P  -  1 )  /  2 ) ) --> ( Base `  Y
) )
3813, 28mgpbasg 14226 . . . . . . . . . 10  |-  ( Y  e.  CRing  ->  ( Base `  Y )  =  (
Base `  G )
)
3912, 38syl 14 . . . . . . . . 9  |-  ( ph  ->  ( Base `  Y
)  =  ( Base `  G ) )
4039feq3d 5522 . . . . . . . 8  |-  ( ph  ->  ( ( k  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  k
) ) ) : ( 1 ... (
( P  -  1 )  /  2 ) ) --> ( Base `  Y
)  <->  ( k  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  k
) ) ) : ( 1 ... (
( P  -  1 )  /  2 ) ) --> ( Base `  G
) ) )
4137, 40mpbid 147 . . . . . . 7  |-  ( ph  ->  ( k  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  k ) ) ) : ( 1 ... ( ( P  -  1 )  /  2 ) ) --> ( Base `  G
) )
42 lgseisen.2 . . . . . . . 8  |-  ( ph  ->  Q  e.  ( Prime  \  { 2 } ) )
43 lgseisen.3 . . . . . . . 8  |-  ( ph  ->  P  =/=  Q )
44 lgseisen.4 . . . . . . . 8  |-  R  =  ( ( Q  x.  ( 2  x.  x
) )  mod  P
)
45 lgseisen.5 . . . . . . . 8  |-  M  =  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) )
46 lgseisen.6 . . . . . . . 8  |-  S  =  ( ( Q  x.  ( 2  x.  y
) )  mod  P
)
477, 42, 43, 44, 45, 46lgseisenlem2 16202 . . . . . . 7  |-  ( ph  ->  M : ( 1 ... ( ( P  -  1 )  / 
2 ) ) -1-1-onto-> ( 1 ... ( ( P  -  1 )  / 
2 ) ) )
485, 6, 15, 23, 41, 47gsumf1ofi 14162 . . . . . 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 ) ) )
494, 48eqtr3id 2285 . . . . 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 ) ) )
507, 42, 43, 44, 45lgseisenlem1 16201 . . . . . . . 8  |-  ( ph  ->  M : ( 1 ... ( ( P  -  1 )  / 
2 ) ) --> ( 1 ... ( ( P  -  1 )  /  2 ) ) )
5145fmpt 5858 . . . . . . . 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
) ) )
5250, 51sylibr 134 . . . . . . 7  |-  ( ph  ->  A. x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 )  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) )
5345a1i 9 . . . . . . 7  |-  ( ph  ->  M  =  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) )
54 eqidd 2239 . . . . . . 7  |-  ( ph  ->  ( k  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  k ) ) )  =  ( k  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( 2  x.  k ) ) ) )
55 oveq2 6093 . . . . . . . 8  |-  ( k  =  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 )  -> 
( 2  x.  k
)  =  ( 2  x.  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) )
5655fveq2d 5699 . . . . . . 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 ) ) ) )
5752, 53, 54, 56fmptcof 5875 . . . . . 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 ) ) ) ) )
5857oveq2d 6101 . . . . 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 ) ) ) ) ) )
5942eldifad 3231 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  Q  e.  Prime )
6059adantr 276 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Q  e.  Prime )
61 prmz 12891 . . . . . . . . . . . . . . . . . . . 20  |-  ( Q  e.  Prime  ->  Q  e.  ZZ )
6260, 61syl 14 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Q  e.  ZZ )
63 2nn 9468 . . . . . . . . . . . . . . . . . . . . 21  |-  2  e.  NN
64 elfznn 10462 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  e.  NN )
6564adantl 277 . . . . . . . . . . . . . . . . . . . . 21  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  e.  NN )
66 nnmulcl 9326 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( 2  e.  NN  /\  x  e.  NN )  ->  ( 2  x.  x
)  e.  NN )
6763, 65, 66sylancr 418 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  NN )
6867nnzd 9769 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  ZZ )
6962, 68zmulcld 9776 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( Q  x.  ( 2  x.  x ) )  e.  ZZ )
708adantr 276 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  Prime )
71 prmnn 12890 . . . . . . . . . . . . . . . . . . 19  |-  ( P  e.  Prime  ->  P  e.  NN )
7270, 71syl 14 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  NN )
7369, 72zmodcld 10784 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( Q  x.  (
2  x.  x ) )  mod  P )  e.  NN0 )
7444, 73eqeltrid 2325 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  NN0 )
7574nn0zd 9768 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  ZZ )
76 m1expcl 11001 . . . . . . . . . . . . . . 15  |-  ( R  e.  ZZ  ->  ( -u 1 ^ R )  e.  ZZ )
7775, 76syl 14 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u 1 ^ R )  e.  ZZ )
7877, 75zmulcld 9776 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  R )  e.  ZZ )
7978, 72zmodcld 10784 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  NN0 )
8079nn0cnd 9624 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  CC )
81 2cnd 9378 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  e.  CC )
82 2ap0 9398 . . . . . . . . . . . 12  |-  2 #  0
8382a1i 9 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2 #  0 )
8480, 81, 83divcanap2d 9123 . . . . . . . . . 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 ) )
8584fveq2d 5699 . . . . . . . . 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 ) ) )
86 zq 10028 . . . . . . . . . . . . . . 15  |-  ( P  e.  ZZ  ->  P  e.  QQ )
878, 19, 863syl 17 . . . . . . . . . . . . . 14  |-  ( ph  ->  P  e.  QQ )
8887adantr 276 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  QQ )
8972nngt0d 9349 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  0  <  P )
90 eqidd 2239 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  mod  P )  =  ( ( -u
1 ^ R )  mod  P ) )
9144oveq1i 6095 . . . . . . . . . . . . . 14  |-  ( R  mod  P )  =  ( ( ( Q  x.  ( 2  x.  x ) )  mod 
P )  mod  P
)
92 zq 10028 . . . . . . . . . . . . . . . 16  |-  ( ( Q  x.  ( 2  x.  x ) )  e.  ZZ  ->  ( Q  x.  ( 2  x.  x ) )  e.  QQ )
9369, 92syl 14 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( Q  x.  ( 2  x.  x ) )  e.  QQ )
94 modqabs2 10797 . . . . . . . . . . . . . . 15  |-  ( ( ( Q  x.  (
2  x.  x ) )  e.  QQ  /\  P  e.  QQ  /\  0  <  P )  ->  (
( ( Q  x.  ( 2  x.  x
) )  mod  P
)  mod  P )  =  ( ( Q  x.  ( 2  x.  x ) )  mod 
P ) )
9593, 88, 89, 94syl3anc 1278 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( Q  x.  ( 2  x.  x
) )  mod  P
)  mod  P )  =  ( ( Q  x.  ( 2  x.  x ) )  mod 
P ) )
9691, 95eqtrid 2283 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( R  mod  P )  =  ( ( Q  x.  ( 2  x.  x
) )  mod  P
) )
9777, 77, 75, 69, 88, 89, 90, 96modqmul12d 10817 . . . . . . . . . . . 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 ) )
98 zq 10028 . . . . . . . . . . . . . 14  |-  ( ( ( -u 1 ^ R )  x.  R
)  e.  ZZ  ->  ( ( -u 1 ^ R )  x.  R
)  e.  QQ )
9978, 98syl 14 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  R )  e.  QQ )
100 modqabs2 10797 . . . . . . . . . . . . 13  |-  ( ( ( ( -u 1 ^ R )  x.  R
)  e.  QQ  /\  P  e.  QQ  /\  0  <  P )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  mod  P
)  =  ( ( ( -u 1 ^ R )  x.  R
)  mod  P )
)
10199, 88, 89, 100syl3anc 1278 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  mod  P
)  =  ( ( ( -u 1 ^ R )  x.  R
)  mod  P )
)
10277zcnd 9771 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u 1 ^ R )  e.  CC )
10362zcnd 9771 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Q  e.  CC )
10468zcnd 9771 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  CC )
105102, 103, 104mulassd 8349 . . . . . . . . . . . . 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 6100 . . . . . . . . . . . 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 ) )
10797, 101, 1063eqtr4d 2281 . . . . . . . . . . 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 ) )
1088, 71syl 14 . . . . . . . . . . . . 13  |-  ( ph  ->  P  e.  NN )
109108adantr 276 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  NN )
11079nn0zd 9768 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  ZZ )
11177, 62zmulcld 9776 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  Q )  e.  ZZ )
112111, 68zmulcld 9776 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  Q
)  x.  ( 2  x.  x ) )  e.  ZZ )
113 moddvds 12568 . . . . . . . . . . . 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 1278 . . . . . . . . . . 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 147 . . . . . . . . . 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
) ) ) )
11672nnnn0d 9622 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  NN0 )
1179, 25zndvds 14986 . . . . . . . . . . 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 1278 . . . . . . . . . 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 167 . . . . . . . . 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
) ) ) )
12024, 26syl 14 . . . . . . . . . . 11  |-  ( ph  ->  L  e.  (ring RingHom  Y ) )
121120adantr 276 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  L  e.  (ring RingHom  Y ) )
122 zringmulr 14936 . . . . . . . . . . 11  |-  x.  =  ( .r ` ring )
123 eqid 2238 . . . . . . . . . . 11  |-  ( .r
`  Y )  =  ( .r `  Y
)
12427, 122, 123rhmmul 14473 . . . . . . . . . 10  |-  ( ( L  e.  (ring 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 ) ) ) )
125121, 111, 68, 124syl3anc 1278 . . . . . . . . 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
) ) ) )
12685, 119, 1253eqtrd 2275 . . . . . . . 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
) ) ) )
127126mpteq2dva 4221 . . . . . . 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 ) ) ) ) )
12830adantr 276 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  L : ZZ --> ( Base `  Y
) )
129128, 111ffvelcdmd 5844 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( ( -u 1 ^ R )  x.  Q ) )  e.  ( Base `  Y
) )
130128, 68ffvelcdmd 5844 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  x ) )  e.  ( Base `  Y
) )
131 eqidd 2239 . . . . . . . 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 ) ) ) )
132 eqidd 2239 . . . . . . . 8  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) )  =  ( x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( 2  x.  x ) ) ) )
13323, 129, 130, 131, 132offval2 6318 . . . . . . 7  |-  ( ph  ->  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) )  oF ( .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 ) ) ) ) )
134127, 133eqtr4d 2274 . . . . . 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 ) ) )  oF ( .r `  Y
) ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  x
) ) ) ) )
135134oveq2d 6101 . . . . 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
) ) )  oF ( .r `  Y ) ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) ) ) ) )
13649, 58, 1353eqtrd 2275 . . . 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
) ) )  oF ( .r `  Y ) ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) ) ) ) )
137 eqid 2238 . . . . . 6  |-  ( +g  `  G )  =  ( +g  `  G )
13839eleq2d 2308 . . . . . . . 8  |-  ( ph  ->  ( ( L `  ( ( -u 1 ^ R )  x.  Q
) )  e.  (
Base `  Y )  <->  ( L `  ( (
-u 1 ^ R
)  x.  Q ) )  e.  ( Base `  G ) ) )
139138adantr 276 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( L `  (
( -u 1 ^ R
)  x.  Q ) )  e.  ( Base `  Y )  <->  ( L `  ( ( -u 1 ^ R )  x.  Q
) )  e.  (
Base `  G )
) )
140129, 139mpbid 147 . . . . . 6  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( ( -u 1 ^ R )  x.  Q ) )  e.  ( Base `  G
) )
14139eleq2d 2308 . . . . . . . 8  |-  ( ph  ->  ( ( L `  ( 2  x.  x
) )  e.  (
Base `  Y )  <->  ( L `  ( 2  x.  x ) )  e.  ( Base `  G
) ) )
142141adantr 276 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( L `  (
2  x.  x ) )  e.  ( Base `  Y )  <->  ( L `  ( 2  x.  x
) )  e.  (
Base `  G )
) )
143130, 142mpbid 147 . . . . . 6  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  x ) )  e.  ( Base `  G
) )
144 eqid 2238 . . . . . 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 ) ) )
145 eqid 2238 . . . . . 6  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) )  =  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  x
) ) )
1465, 137, 15, 23, 140, 143, 144, 145gsummptfidmadd2 14164 . . . . 5  |-  ( ph  ->  ( G  gsumg  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) )  oF ( +g  `  G
) ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  x
) ) ) ) )  =  ( ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) ) ( +g  `  G ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) ) )
14713, 123mgpplusgg 14223 . . . . . . . . 9  |-  ( Y  e.  CRing  ->  ( .r `  Y )  =  ( +g  `  G ) )
14812, 147syl 14 . . . . . . . 8  |-  ( ph  ->  ( .r `  Y
)  =  ( +g  `  G ) )
149148ofeqd 6304 . . . . . . 7  |-  ( ph  ->  oF ( .r
`  Y )  =  oF ( +g  `  G ) )
150149oveqd 6102 . . . . . 6  |-  ( ph  ->  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) )  oF ( .r `  Y ) ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( 2  x.  x ) ) ) )  =  ( ( x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( (
-u 1 ^ R
)  x.  Q ) ) )  oF ( +g  `  G
) ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  x
) ) ) ) )
151150oveq2d 6101 . . . . 5  |-  ( ph  ->  ( G  gsumg  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) )  oF ( .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
) ) )  oF ( +g  `  G
) ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( 2  x.  x
) ) ) ) ) )
152148oveqd 6102 . . . . 5  |-  ( 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 ) ) ) ) )  =  ( ( G 
gsumg  ( x  e.  (
1 ... ( ( P  -  1 )  / 
2 ) )  |->  ( L `  ( (
-u 1 ^ R
)  x.  Q ) ) ) ) ( +g  `  G ) ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) ) ) )
153146, 151, 1523eqtr4d 2281 . . . 4  |-  ( ph  ->  ( G  gsumg  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) )  oF ( .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 ) ) ) ) ) )
154136, 153eqtrd 2271 . . 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 ) ) ) ) ) )
155154oveq1d 6100 . 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 ) ) ) ) ) )
156 eqid 2238 . . . . . 6  |-  (Unit `  Y )  =  (Unit `  Y )
157156, 13unitsubm 14428 . . . . 5  |-  ( Y  e.  Ring  ->  (Unit `  Y )  e.  (SubMnd `  G ) )
15824, 157syl 14 . . . 4  |-  ( ph  ->  (Unit `  Y )  e.  (SubMnd `  G )
)
159 elfzle2 10434 . . . . . . . . . 10  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  <_  ( ( P  - 
1 )  /  2
) )
160159adantl 277 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  <_  ( ( P  - 
1 )  /  2
) )
16165nnred 9318 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  e.  RR )
162 prmuz2 12911 . . . . . . . . . . . 12  |-  ( P  e.  Prime  ->  P  e.  ( ZZ>= `  2 )
)
163 uz2m1nn 10007 . . . . . . . . . . . 12  |-  ( P  e.  ( ZZ>= `  2
)  ->  ( P  -  1 )  e.  NN )
16470, 162, 1633syl 17 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  NN )
165164nnred 9318 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  RR )
166 2re 9375 . . . . . . . . . . 11  |-  2  e.  RR
167166a1i 9 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  e.  RR )
168 2pos 9396 . . . . . . . . . . 11  |-  0  <  2
169168a1i 9 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  0  <  2 )
170 lemuldiv2 9213 . . . . . . . . . 10  |-  ( ( x  e.  RR  /\  ( P  -  1
)  e.  RR  /\  ( 2  e.  RR  /\  0  <  2 ) )  ->  ( (
2  x.  x )  <_  ( P  - 
1 )  <->  x  <_  ( ( P  -  1 )  /  2 ) ) )
171161, 165, 167, 169, 170syl112anc 1282 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( 2  x.  x
)  <_  ( P  -  1 )  <->  x  <_  ( ( P  -  1 )  /  2 ) ) )
172160, 171mpbird 167 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  <_  ( P  - 
1 ) )
17370, 19syl 14 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  ZZ )
174 peano2zm 9684 . . . . . . . . 9  |-  ( P  e.  ZZ  ->  ( P  -  1 )  e.  ZZ )
175 fznn 10498 . . . . . . . . 9  |-  ( ( P  -  1 )  e.  ZZ  ->  (
( 2  x.  x
)  e.  ( 1 ... ( P  - 
1 ) )  <->  ( (
2  x.  x )  e.  NN  /\  (
2  x.  x )  <_  ( P  - 
1 ) ) ) )
176173, 174, 1753syl 17 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( 2  x.  x
)  e.  ( 1 ... ( P  - 
1 ) )  <->  ( (
2  x.  x )  e.  NN  /\  (
2  x.  x )  <_  ( P  - 
1 ) ) ) )
17767, 172, 176mpbir2and 957 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  ( 1 ... ( P  -  1 ) ) )
178 fzm1ndvds 12625 . . . . . . 7  |-  ( ( P  e.  NN  /\  ( 2  x.  x
)  e.  ( 1 ... ( P  - 
1 ) ) )  ->  -.  P  ||  (
2  x.  x ) )
17972, 177, 178syl2anc 415 . . . . . 6  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  ||  ( 2  x.  x ) )
1809, 156, 25znunit 14996 . . . . . . . 8  |-  ( ( P  e.  NN0  /\  ( 2  x.  x
)  e.  ZZ )  ->  ( ( L `
 ( 2  x.  x ) )  e.  (Unit `  Y )  <->  ( ( 2  x.  x
)  gcd  P )  =  1 ) )
181116, 68, 180syl2anc 415 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( L `  (
2  x.  x ) )  e.  (Unit `  Y )  <->  ( (
2  x.  x )  gcd  P )  =  1 ) )
182 coprm 12924 . . . . . . . . 9  |-  ( ( P  e.  Prime  /\  (
2  x.  x )  e.  ZZ )  -> 
( -.  P  ||  ( 2  x.  x
)  <->  ( P  gcd  ( 2  x.  x
) )  =  1 ) )
18319adantr 276 . . . . . . . . . . 11  |-  ( ( P  e.  Prime  /\  (
2  x.  x )  e.  ZZ )  ->  P  e.  ZZ )
184 simpr 110 . . . . . . . . . . 11  |-  ( ( P  e.  Prime  /\  (
2  x.  x )  e.  ZZ )  -> 
( 2  x.  x
)  e.  ZZ )
185183, 184gcdcomd 12753 . . . . . . . . . 10  |-  ( ( P  e.  Prime  /\  (
2  x.  x )  e.  ZZ )  -> 
( P  gcd  (
2  x.  x ) )  =  ( ( 2  x.  x )  gcd  P ) )
186185eqeq1d 2247 . . . . . . . . 9  |-  ( ( P  e.  Prime  /\  (
2  x.  x )  e.  ZZ )  -> 
( ( P  gcd  ( 2  x.  x
) )  =  1  <-> 
( ( 2  x.  x )  gcd  P
)  =  1 ) )
187182, 186bitrd 188 . . . . . . . 8  |-  ( ( P  e.  Prime  /\  (
2  x.  x )  e.  ZZ )  -> 
( -.  P  ||  ( 2  x.  x
)  <->  ( ( 2  x.  x )  gcd 
P )  =  1 ) )
18870, 68, 187syl2anc 415 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -.  P  ||  ( 2  x.  x )  <->  ( (
2  x.  x )  gcd  P )  =  1 ) )
189181, 188bitr4d 191 . . . . . 6  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( L `  (
2  x.  x ) )  e.  (Unit `  Y )  <->  -.  P  ||  ( 2  x.  x
) ) )
190179, 189mpbird 167 . . . . 5  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( 2  x.  x ) )  e.  (Unit `  Y )
)
191190fmpttd 5863 . . . 4  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) : ( 1 ... ( ( P  -  1 )  /  2 ) ) --> (Unit `  Y )
)
1926, 15, 23, 158, 191gsumsubmclfi 14165 . . 3  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
2  x.  x ) ) ) )  e.  (Unit `  Y )
)
193 eqid 2238 . . . 4  |-  (/r `  Y
)  =  (/r `  Y
)
194 eqid 2238 . . . 4  |-  ( 1r
`  Y )  =  ( 1r `  Y
)
195156, 193, 194dvrid 14446 . . 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
) )
19624, 192, 195syl2anc 415 . 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 ) )
197129fmpttd 5863 . . . . . 6  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) : ( 1 ... ( ( P  -  1 )  /  2 ) ) --> ( Base `  Y
) )
19839feq3d 5522 . . . . . 6  |-  ( ph  ->  ( ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) ) : ( 1 ... (
( P  -  1 )  /  2 ) ) --> ( Base `  Y
)  <->  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( ( -u 1 ^ R )  x.  Q
) ) ) : ( 1 ... (
( P  -  1 )  /  2 ) ) --> ( Base `  G
) ) )
199197, 198mpbid 147 . . . . 5  |-  ( ph  ->  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) : ( 1 ... ( ( P  -  1 )  /  2 ) ) --> ( Base `  G
) )
2005, 6, 15, 23, 199gsumclfi 14161 . . . 4  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) )  e.  ( Base `  G
) )
201200, 39eleqtrrd 2318 . . 3  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) )  e.  ( Base `  Y
) )
20228, 156, 193, 123dvrcan3 14450 . . 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 ) ) ) ) )
20324, 201, 192, 202syl3anc 1278 . 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 ) ) ) ) )
204155, 196, 2033eqtr3rd 2280 1  |-  ( ph  ->  ( G  gsumg  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
( -u 1 ^ R
)  x.  Q ) ) ) )  =  ( 1r `  Y
) )
Colors of variables:    wff set class
This proof depends on syntax axioms:   -. wn 3    -> wi 4    /\ wa 104    <-> wb 105    = wceq 1402    e. wcel 2209    =/= wne 2420   A.wral 2528    \ cdif 3217   {csn 3709   class class class wbr 4130    |-> cmpt 4192    o. ccom 4778   -->wf 5373   ` cfv 5377  (class class class)co 6085    oFcof 6300   Fincfn 7022   RRcr 8178   0cc0 8179   1c1 8180    x. cmul 8184    < clt 8360    <_ cle 8361    - cmin 8497   -ucneg 8498   # cap 8910    / cdiv 9003   NNcn 9305   2c2 9356   NN0cn0 9565   ZZcz 9646   ZZ>=cuz 9923   QQcq 10021   ...cfz 10413    mod cmo 10761   ^cexp 10977    || cdvds 12556    gcd cgcd 12732   Primecprime 12887   Basecbs 13354   +g cplusg 13433   .rcmulr 13434   0gc0g 13612  SubMndcsubmnd 13767  CMndccmn 14089    gsumg cgsu 14152  mulGrpcmgp 14219   1rcur 14264   Ringcrg 14302   CRingccrg 14303  Unitcui 14395  /rcdvr 14440   RingHom crh 14459  IDomncidom 14567  ℤringczring 14927   ZRHomczrh 14948  ℤ/nczn 14950
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 623  ax-in2 624  ax-io 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-coll 4246  ax-sep 4249  ax-nul 4259  ax-pow 4311  ax-pr 4346  ax-un 4578  ax-setind 4684  ax-iinf 4735  ax-cnex 8270  ax-resscn 8271  ax-1cn 8272  ax-1re 8273  ax-icn 8274  ax-addcl 8275  ax-addrcl 8276  ax-mulcl 8277  ax-mulrcl 8278  ax-addcom 8279  ax-mulcom 8280  ax-addass 8281  ax-mulass 8282  ax-distr 8283  ax-i2m1 8284  ax-0lt1 8285  ax-1rid 8286  ax-0id 8287  ax-rnegex 8288  ax-precex 8289  ax-cnre 8290  ax-pre-ltirr 8291  ax-pre-ltwlin 8292  ax-pre-lttrn 8293  ax-pre-apti 8294  ax-pre-ltadd 8295  ax-pre-mulgt0 8296  ax-pre-mulext 8297  ax-arch 8298  ax-caucvg 8299  ax-addf 8301  ax-mulf 8302
This proof depends on definitions:  df-bi 117  df-stab 843  df-dc 847  df-3or 1010  df-3an 1011  df-tru 1405  df-fal 1408  df-xor 1425  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ne 2421  df-nel 2516  df-ral 2533  df-rex 2534  df-reu 2535  df-rmo 2536  df-rab 2537  df-v 2823  df-sbc 3052  df-csb 3148  df-dif 3222  df-un 3224  df-in 3226  df-ss 3233  df-nul 3521  df-if 3639  df-pw 3690  df-sn 3715  df-pr 3716  df-tp 3717  df-op 3718  df-uni 3936  df-int 3971  df-iun 4014  df-br 4131  df-opab 4193  df-mpt 4194  df-tr 4230  df-id 4438  df-po 4441  df-iso 4442  df-iord 4511  df-on 4513  df-ilim 4514  df-suc 4516  df-iom 4738  df-xp 4780  df-rel 4781  df-cnv 4782  df-co 4783  df-dm 4784  df-rn 4785  df-res 4786  df-ima 4787  df-iota 5337  df-fun 5379  df-fn 5380  df-f 5381  df-f1 5382  df-fo 5383  df-f1o 5384  df-fv 5385  df-riota 6038  df-ov 6088  df-oprab 6089  df-mpo 6090  df-of 6302  df-1st 6374  df-2nd 6375  df-tpos 6516  df-recs 6576  df-irdg 6641  df-frec 6662  df-1o 6687  df-2o 6688  df-oadd 6691  df-er 6807  df-ec 6809  df-qs 6813  df-map 6924  df-en 7023  df-dom 7024  df-fin 7025  df-sup 7324  df-pnf 8362  df-mnf 8363  df-xr 8364  df-ltxr 8365  df-le 8366  df-sub 8499  df-neg 8500  df-reap 8904  df-ap 8911  df-div 9004  df-inn 9306  df-2 9364  df-3 9365  df-4 9366  df-5 9367  df-6 9368  df-7 9369  df-8 9370  df-9 9371  df-n0 9566  df-z 9647  df-dec 9780  df-uz 9924  df-q 10022  df-rp 10057  df-fz 10414  df-fzo 10552  df-fl 10707  df-mod 10762  df-seqfrec 10887  df-exp 10978  df-ihash 11217  df-cj 11609  df-re 11610  df-im 11611  df-rsqrt 11766  df-abs 11767  df-dvds 12557  df-gcd 12733  df-prm 12888  df-struct 13356  df-ndx 13357  df-slot 13358  df-base 13360  df-sets 13361  df-iress 13362  df-plusg 13446  df-mulr 13447  df-starv 13448  df-sca 13449  df-vsca 13450  df-ip 13451  df-tset 13452  df-ple 13453  df-ds 13455  df-unif 13456  df-0g 13614  df-gzsum 13615  df-topgen 13616  df-iimas 13626  df-qus 13627  df-mgm 13678  df-sgrp 13719  df-mnd 13732  df-mhm 13768  df-submnd 13769  df-grp 13810  df-minusg 13811  df-sbg 13812  df-mulg 13925  df-subg 13975  df-nsg 13976  df-eqg 13977  df-ghm 14046  df-cmn 14091  df-abl 14092  df-gsumfi 14153  df-mgp 14220  df-rng 14234  df-ur 14265  df-srg 14270  df-ring 14304  df-cring 14305  df-oppr 14375  df-dvdsr 14397  df-unit 14398  df-invr 14430  df-dvr 14441  df-rhm 14461  df-nzr 14489  df-subrg 14529  df-domn 14569  df-idom 14570  df-lmod 14627  df-lssm 14692  df-lsp 14726  df-sra 14774  df-rgmod 14775  df-lidl 14808  df-rsp 14809  df-2idl 14839  df-bl 14885  df-mopn 14886  df-fg 14888  df-metu 14889  df-cnfld 14896  df-zring 14928  df-zrh 14951  df-zn 14953
This theorem is used by:  lgseisenlem4  16204
  Copyright terms: Public domain W3C validator