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

Theorem lgsqrlem2 21128
Description: Lemma for lgsqr 21132. (Contributed by Mario Carneiro, 15-Jun-2015.)
Hypotheses
Ref Expression
lgsqr.y  |-  Y  =  (ℤ/n `  P )
lgsqr.s  |-  S  =  (Poly1 `  Y )
lgsqr.b  |-  B  =  ( Base `  S
)
lgsqr.d  |-  D  =  ( deg1  `  Y )
lgsqr.o  |-  O  =  (eval1 `  Y )
lgsqr.e  |-  .^  =  (.g
`  (mulGrp `  S )
)
lgsqr.x  |-  X  =  (var1 `  Y )
lgsqr.m  |-  .-  =  ( -g `  S )
lgsqr.u  |-  .1.  =  ( 1r `  S )
lgsqr.t  |-  T  =  ( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )
lgsqr.l  |-  L  =  ( ZRHom `  Y
)
lgsqr.1  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
lgsqr.g  |-  G  =  ( y  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
y ^ 2 ) ) )
Assertion
Ref Expression
lgsqrlem2  |-  ( ph  ->  G : ( 1 ... ( ( P  -  1 )  / 
2 ) ) -1-1-> ( `' ( O `  T ) " {
( 0g `  Y
) } ) )
Distinct variable groups:    y, O    y, P    ph, y    y, T   
y, L    y, Y
Allowed substitution hints:    B( y)    D( y)    S( y)    .1. ( y)    .^ ( y)    G( y)    .- ( y)    X( y)

Proof of Theorem lgsqrlem2
Dummy variables  x  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 lgsqr.1 . . . . . . . . . . . . 13  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
21eldifad 3334 . . . . . . . . . . . 12  |-  ( ph  ->  P  e.  Prime )
3 lgsqr.y . . . . . . . . . . . . 13  |-  Y  =  (ℤ/n `  P )
43znfld 16843 . . . . . . . . . . . 12  |-  ( P  e.  Prime  ->  Y  e. Field
)
52, 4syl 16 . . . . . . . . . . 11  |-  ( ph  ->  Y  e. Field )
6 fldidom 16367 . . . . . . . . . . 11  |-  ( Y  e. Field  ->  Y  e. IDomn )
75, 6syl 16 . . . . . . . . . 10  |-  ( ph  ->  Y  e. IDomn )
8 isidom 16366 . . . . . . . . . . 11  |-  ( Y  e. IDomn 
<->  ( Y  e.  CRing  /\  Y  e. Domn ) )
98simplbi 448 . . . . . . . . . 10  |-  ( Y  e. IDomn  ->  Y  e.  CRing )
107, 9syl 16 . . . . . . . . 9  |-  ( ph  ->  Y  e.  CRing )
11 crngrng 15676 . . . . . . . . 9  |-  ( Y  e.  CRing  ->  Y  e.  Ring )
1210, 11syl 16 . . . . . . . 8  |-  ( ph  ->  Y  e.  Ring )
13 eqid 2438 . . . . . . . . 9  |-  (flds  ZZ )  =  (flds  ZZ )
14 lgsqr.l . . . . . . . . 9  |-  L  =  ( ZRHom `  Y
)
1513, 14zrhrhm 16795 . . . . . . . 8  |-  ( Y  e.  Ring  ->  L  e.  ( (flds  ZZ ) RingHom  Y ) )
1612, 15syl 16 . . . . . . 7  |-  ( ph  ->  L  e.  ( (flds  ZZ ) RingHom  Y ) )
17 zsubrg 16754 . . . . . . . . 9  |-  ZZ  e.  (SubRing ` fld )
1813subrgbas 15879 . . . . . . . . 9  |-  ( ZZ  e.  (SubRing ` fld )  ->  ZZ  =  ( Base `  (flds  ZZ ) ) )
1917, 18ax-mp 8 . . . . . . . 8  |-  ZZ  =  ( Base `  (flds  ZZ ) )
20 eqid 2438 . . . . . . . 8  |-  ( Base `  Y )  =  (
Base `  Y )
2119, 20rhmf 15829 . . . . . . 7  |-  ( L  e.  ( (flds  ZZ ) RingHom  Y )  ->  L : ZZ --> ( Base `  Y )
)
2216, 21syl 16 . . . . . 6  |-  ( ph  ->  L : ZZ --> ( Base `  Y ) )
2322adantr 453 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  L : ZZ --> ( Base `  Y
) )
24 elfzelz 11061 . . . . . . 7  |-  ( y  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  y  e.  ZZ )
2524adantl 454 . . . . . 6  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  e.  ZZ )
26 zsqcl 11454 . . . . . 6  |-  ( y  e.  ZZ  ->  (
y ^ 2 )  e.  ZZ )
2725, 26syl 16 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y ^ 2 )  e.  ZZ )
2823, 27ffvelrnd 5873 . . . 4  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( y ^ 2 ) )  e.  ( Base `  Y
) )
29 lgsqr.s . . . . 5  |-  S  =  (Poly1 `  Y )
30 lgsqr.b . . . . 5  |-  B  =  ( Base `  S
)
31 lgsqr.d . . . . 5  |-  D  =  ( deg1  `  Y )
32 lgsqr.o . . . . 5  |-  O  =  (eval1 `  Y )
33 lgsqr.e . . . . 5  |-  .^  =  (.g
`  (mulGrp `  S )
)
34 lgsqr.x . . . . 5  |-  X  =  (var1 `  Y )
35 lgsqr.m . . . . 5  |-  .-  =  ( -g `  S )
36 lgsqr.u . . . . 5  |-  .1.  =  ( 1r `  S )
37 lgsqr.t . . . . 5  |-  T  =  ( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )
381adantr 453 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  ( Prime  \  { 2 } ) )
39 elfznn 11082 . . . . . . . . . . 11  |-  ( y  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  y  e.  NN )
4039adantl 454 . . . . . . . . . 10  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  e.  NN )
4140nncnd 10018 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  e.  CC )
42 oddprm 13191 . . . . . . . . . . . 12  |-  ( P  e.  ( Prime  \  {
2 } )  -> 
( ( P  - 
1 )  /  2
)  e.  NN )
431, 42syl 16 . . . . . . . . . . 11  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  e.  NN )
4443nnnn0d 10276 . . . . . . . . . 10  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  e.  NN0 )
4544adantr 453 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  -  1 )  /  2 )  e.  NN0 )
46 2nn0 10240 . . . . . . . . . 10  |-  2  e.  NN0
4746a1i 11 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  e.  NN0 )
4841, 45, 47expmuld 11528 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y ^ ( 2  x.  ( ( P  -  1 )  / 
2 ) ) )  =  ( ( y ^ 2 ) ^
( ( P  - 
1 )  /  2
) ) )
49 prmnn 13084 . . . . . . . . . . . . . . . 16  |-  ( P  e.  Prime  ->  P  e.  NN )
502, 49syl 16 . . . . . . . . . . . . . . 15  |-  ( ph  ->  P  e.  NN )
5150nnred 10017 . . . . . . . . . . . . . 14  |-  ( ph  ->  P  e.  RR )
52 peano2rem 9369 . . . . . . . . . . . . . 14  |-  ( P  e.  RR  ->  ( P  -  1 )  e.  RR )
5351, 52syl 16 . . . . . . . . . . . . 13  |-  ( ph  ->  ( P  -  1 )  e.  RR )
5453recnd 9116 . . . . . . . . . . . 12  |-  ( ph  ->  ( P  -  1 )  e.  CC )
55 2cn 10072 . . . . . . . . . . . . 13  |-  2  e.  CC
5655a1i 11 . . . . . . . . . . . 12  |-  ( ph  ->  2  e.  CC )
57 2ne0 10085 . . . . . . . . . . . . 13  |-  2  =/=  0
5857a1i 11 . . . . . . . . . . . 12  |-  ( ph  ->  2  =/=  0 )
5954, 56, 58divcan2d 9794 . . . . . . . . . . 11  |-  ( ph  ->  ( 2  x.  (
( P  -  1 )  /  2 ) )  =  ( P  -  1 ) )
60 phiprm 13168 . . . . . . . . . . . 12  |-  ( P  e.  Prime  ->  ( phi `  P )  =  ( P  -  1 ) )
612, 60syl 16 . . . . . . . . . . 11  |-  ( ph  ->  ( phi `  P
)  =  ( P  -  1 ) )
6259, 61eqtr4d 2473 . . . . . . . . . 10  |-  ( ph  ->  ( 2  x.  (
( P  -  1 )  /  2 ) )  =  ( phi `  P ) )
6362adantr 453 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  ( ( P  -  1 )  /  2 ) )  =  ( phi `  P ) )
6463oveq2d 6099 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y ^ ( 2  x.  ( ( P  -  1 )  / 
2 ) ) )  =  ( y ^
( phi `  P
) ) )
6548, 64eqtr3d 2472 . . . . . . 7  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( y ^ 2 ) ^ ( ( P  -  1 )  /  2 ) )  =  ( y ^
( phi `  P
) ) )
6665oveq1d 6098 . . . . . 6  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( y ^
2 ) ^ (
( P  -  1 )  /  2 ) )  mod  P )  =  ( ( y ^ ( phi `  P ) )  mod 
P ) )
672adantr 453 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  Prime )
6867, 49syl 16 . . . . . . 7  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  NN )
6950nnzd 10376 . . . . . . . . . 10  |-  ( ph  ->  P  e.  ZZ )
7069adantr 453 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  ZZ )
71 gcdcom 13022 . . . . . . . . 9  |-  ( ( y  e.  ZZ  /\  P  e.  ZZ )  ->  ( y  gcd  P
)  =  ( P  gcd  y ) )
7225, 70, 71syl2anc 644 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y  gcd  P )  =  ( P  gcd  y ) )
7340nnred 10017 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  e.  RR )
7453rehalfcld 10216 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  e.  RR )
7574adantr 453 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  -  1 )  /  2 )  e.  RR )
7651adantr 453 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  RR )
77 elfzle2 11063 . . . . . . . . . . . . 13  |-  ( y  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  y  <_  ( ( P  - 
1 )  /  2
) )
7877adantl 454 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  <_  ( ( P  - 
1 )  /  2
) )
79 prmuz2 13099 . . . . . . . . . . . . . . . . . 18  |-  ( P  e.  Prime  ->  P  e.  ( ZZ>= `  2 )
)
802, 79syl 16 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  P  e.  ( ZZ>= ` 
2 ) )
81 uz2m1nn 10552 . . . . . . . . . . . . . . . . 17  |-  ( P  e.  ( ZZ>= `  2
)  ->  ( P  -  1 )  e.  NN )
8280, 81syl 16 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( P  -  1 )  e.  NN )
8382nnrpd 10649 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( P  -  1 )  e.  RR+ )
84 rphalflt 10640 . . . . . . . . . . . . . . 15  |-  ( ( P  -  1 )  e.  RR+  ->  ( ( P  -  1 )  /  2 )  < 
( P  -  1 ) )
8583, 84syl 16 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  <  ( P  -  1 ) )
8651ltm1d 9945 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( P  -  1 )  <  P )
8774, 53, 51, 85, 86lttrd 9233 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  <  P )
8887adantr 453 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  -  1 )  /  2 )  <  P )
8973, 75, 76, 78, 88lelttrd 9230 . . . . . . . . . . 11  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  <  P )
9073, 76ltnled 9222 . . . . . . . . . . 11  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y  <  P  <->  -.  P  <_  y ) )
9189, 90mpbid 203 . . . . . . . . . 10  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  <_  y )
92 dvdsle 12897 . . . . . . . . . . 11  |-  ( ( P  e.  ZZ  /\  y  e.  NN )  ->  ( P  ||  y  ->  P  <_  y )
)
9370, 40, 92syl2anc 644 . . . . . . . . . 10  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  ||  y  ->  P  <_  y ) )
9491, 93mtod 171 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  ||  y )
95 coprm 13102 . . . . . . . . . 10  |-  ( ( P  e.  Prime  /\  y  e.  ZZ )  ->  ( -.  P  ||  y  <->  ( P  gcd  y )  =  1 ) )
9667, 25, 95syl2anc 644 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -.  P  ||  y  <->  ( P  gcd  y )  =  1 ) )
9794, 96mpbid 203 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  gcd  y )  =  1 )
9872, 97eqtrd 2470 . . . . . . 7  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y  gcd  P )  =  1 )
99 eulerth 13174 . . . . . . 7  |-  ( ( P  e.  NN  /\  y  e.  ZZ  /\  (
y  gcd  P )  =  1 )  -> 
( ( y ^
( phi `  P
) )  mod  P
)  =  ( 1  mod  P ) )
10068, 25, 98, 99syl3anc 1185 . . . . . 6  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( y ^ ( phi `  P ) )  mod  P )  =  ( 1  mod  P
) )
10166, 100eqtrd 2470 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( y ^
2 ) ^ (
( P  -  1 )  /  2 ) )  mod  P )  =  ( 1  mod 
P ) )
1023, 29, 30, 31, 32, 33, 34, 35, 36, 37, 14, 38, 27, 101lgsqrlem1 21127 . . . 4  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( O `  T
) `  ( L `  ( y ^ 2 ) ) )  =  ( 0g `  Y
) )
103 eqid 2438 . . . . . . . 8  |-  ( Y  ^s  ( Base `  Y
) )  =  ( Y  ^s  ( Base `  Y
) )
104 eqid 2438 . . . . . . . 8  |-  ( Base `  ( Y  ^s  ( Base `  Y ) ) )  =  ( Base `  ( Y  ^s  ( Base `  Y
) ) )
105 fvex 5744 . . . . . . . . 9  |-  ( Base `  Y )  e.  _V
106105a1i 11 . . . . . . . 8  |-  ( ph  ->  ( Base `  Y
)  e.  _V )
10732, 29, 103, 20evl1rhm 19951 . . . . . . . . . . 11  |-  ( Y  e.  CRing  ->  O  e.  ( S RingHom  ( Y  ^s  ( Base `  Y ) ) ) )
10810, 107syl 16 . . . . . . . . . 10  |-  ( ph  ->  O  e.  ( S RingHom 
( Y  ^s  ( Base `  Y ) ) ) )
10930, 104rhmf 15829 . . . . . . . . . 10  |-  ( O  e.  ( S RingHom  ( Y  ^s  ( Base `  Y
) ) )  ->  O : B --> ( Base `  ( Y  ^s  ( Base `  Y ) ) ) )
110108, 109syl 16 . . . . . . . . 9  |-  ( ph  ->  O : B --> ( Base `  ( Y  ^s  ( Base `  Y ) ) ) )
11129ply1rng 16644 . . . . . . . . . . . . 13  |-  ( Y  e.  Ring  ->  S  e. 
Ring )
11212, 111syl 16 . . . . . . . . . . . 12  |-  ( ph  ->  S  e.  Ring )
113 rnggrp 15671 . . . . . . . . . . . 12  |-  ( S  e.  Ring  ->  S  e. 
Grp )
114112, 113syl 16 . . . . . . . . . . 11  |-  ( ph  ->  S  e.  Grp )
115 eqid 2438 . . . . . . . . . . . . . 14  |-  (mulGrp `  S )  =  (mulGrp `  S )
116115rngmgp 15672 . . . . . . . . . . . . 13  |-  ( S  e.  Ring  ->  (mulGrp `  S )  e.  Mnd )
117112, 116syl 16 . . . . . . . . . . . 12  |-  ( ph  ->  (mulGrp `  S )  e.  Mnd )
11834, 29, 30vr1cl 16613 . . . . . . . . . . . . 13  |-  ( Y  e.  Ring  ->  X  e.  B )
11912, 118syl 16 . . . . . . . . . . . 12  |-  ( ph  ->  X  e.  B )
120115, 30mgpbas 15656 . . . . . . . . . . . . 13  |-  B  =  ( Base `  (mulGrp `  S ) )
121120, 33mulgnn0cl 14908 . . . . . . . . . . . 12  |-  ( ( (mulGrp `  S )  e.  Mnd  /\  ( ( P  -  1 )  /  2 )  e. 
NN0  /\  X  e.  B )  ->  (
( ( P  - 
1 )  /  2
)  .^  X )  e.  B )
122117, 44, 119, 121syl3anc 1185 . . . . . . . . . . 11  |-  ( ph  ->  ( ( ( P  -  1 )  / 
2 )  .^  X
)  e.  B )
12330, 36rngidcl 15686 . . . . . . . . . . . 12  |-  ( S  e.  Ring  ->  .1.  e.  B )
124112, 123syl 16 . . . . . . . . . . 11  |-  ( ph  ->  .1.  e.  B )
12530, 35grpsubcl 14871 . . . . . . . . . . 11  |-  ( ( S  e.  Grp  /\  ( ( ( P  -  1 )  / 
2 )  .^  X
)  e.  B  /\  .1.  e.  B )  -> 
( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )  e.  B )
126114, 122, 124, 125syl3anc 1185 . . . . . . . . . 10  |-  ( ph  ->  ( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )  e.  B )
12737, 126syl5eqel 2522 . . . . . . . . 9  |-  ( ph  ->  T  e.  B )
128110, 127ffvelrnd 5873 . . . . . . . 8  |-  ( ph  ->  ( O `  T
)  e.  ( Base `  ( Y  ^s  ( Base `  Y ) ) ) )
129103, 20, 104, 5, 106, 128pwselbas 13713 . . . . . . 7  |-  ( ph  ->  ( O `  T
) : ( Base `  Y ) --> ( Base `  Y ) )
130 ffn 5593 . . . . . . 7  |-  ( ( O `  T ) : ( Base `  Y
) --> ( Base `  Y
)  ->  ( O `  T )  Fn  ( Base `  Y ) )
131129, 130syl 16 . . . . . 6  |-  ( ph  ->  ( O `  T
)  Fn  ( Base `  Y ) )
132131adantr 453 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( O `  T )  Fn  ( Base `  Y
) )
133 fniniseg 5853 . . . . 5  |-  ( ( O `  T )  Fn  ( Base `  Y
)  ->  ( ( L `  ( y ^ 2 ) )  e.  ( `' ( O `  T )
" { ( 0g
`  Y ) } )  <->  ( ( L `
 ( y ^
2 ) )  e.  ( Base `  Y
)  /\  ( ( O `  T ) `  ( L `  (
y ^ 2 ) ) )  =  ( 0g `  Y ) ) ) )
134132, 133syl 16 . . . 4  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( L `  (
y ^ 2 ) )  e.  ( `' ( O `  T
) " { ( 0g `  Y ) } )  <->  ( ( L `  ( y ^ 2 ) )  e.  ( Base `  Y
)  /\  ( ( O `  T ) `  ( L `  (
y ^ 2 ) ) )  =  ( 0g `  Y ) ) ) )
13528, 102, 134mpbir2and 890 . . 3  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( y ^ 2 ) )  e.  ( `' ( O `  T )
" { ( 0g
`  Y ) } ) )
136 lgsqr.g . . 3  |-  G  =  ( y  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
y ^ 2 ) ) )
137135, 136fmptd 5895 . 2  |-  ( ph  ->  G : ( 1 ... ( ( P  -  1 )  / 
2 ) ) --> ( `' ( O `  T ) " {
( 0g `  Y
) } ) )
138 oveq1 6090 . . . . . . . . 9  |-  ( y  =  x  ->  (
y ^ 2 )  =  ( x ^
2 ) )
139138fveq2d 5734 . . . . . . . 8  |-  ( y  =  x  ->  ( L `  ( y ^ 2 ) )  =  ( L `  ( x ^ 2 ) ) )
140 fvex 5744 . . . . . . . 8  |-  ( L `
 ( x ^
2 ) )  e. 
_V
141139, 136, 140fvmpt 5808 . . . . . . 7  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  ( G `  x )  =  ( L `  ( x ^ 2 ) ) )
142141ad2antrl 710 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( G `  x
)  =  ( L `
 ( x ^
2 ) ) )
143 oveq1 6090 . . . . . . . . 9  |-  ( y  =  z  ->  (
y ^ 2 )  =  ( z ^
2 ) )
144143fveq2d 5734 . . . . . . . 8  |-  ( y  =  z  ->  ( L `  ( y ^ 2 ) )  =  ( L `  ( z ^ 2 ) ) )
145 fvex 5744 . . . . . . . 8  |-  ( L `
 ( z ^
2 ) )  e. 
_V
146144, 136, 145fvmpt 5808 . . . . . . 7  |-  ( z  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  ( G `  z )  =  ( L `  ( z ^ 2 ) ) )
147146ad2antll 711 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( G `  z
)  =  ( L `
 ( z ^
2 ) ) )
148142, 147eqeq12d 2452 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( G `  x )  =  ( G `  z )  <-> 
( L `  (
x ^ 2 ) )  =  ( L `
 ( z ^
2 ) ) ) )
14950nnnn0d 10276 . . . . . . 7  |-  ( ph  ->  P  e.  NN0 )
150149adantr 453 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  NN0 )
151 elfzelz 11061 . . . . . . . 8  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  e.  ZZ )
152151ad2antrl 710 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  ZZ )
153 zsqcl 11454 . . . . . . 7  |-  ( x  e.  ZZ  ->  (
x ^ 2 )  e.  ZZ )
154152, 153syl 16 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x ^ 2 )  e.  ZZ )
155 elfzelz 11061 . . . . . . . 8  |-  ( z  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  z  e.  ZZ )
156155ad2antll 711 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  ZZ )
157 zsqcl 11454 . . . . . . 7  |-  ( z  e.  ZZ  ->  (
z ^ 2 )  e.  ZZ )
158156, 157syl 16 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( z ^ 2 )  e.  ZZ )
1593, 14zndvds 16832 . . . . . 6  |-  ( ( P  e.  NN0  /\  ( x ^ 2 )  e.  ZZ  /\  ( z ^ 2 )  e.  ZZ )  ->  ( ( L `
 ( x ^
2 ) )  =  ( L `  (
z ^ 2 ) )  <->  P  ||  ( ( x ^ 2 )  -  ( z ^
2 ) ) ) )
160150, 154, 158, 159syl3anc 1185 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( L `  ( x ^ 2 ) )  =  ( L `  ( z ^ 2 ) )  <-> 
P  ||  ( (
x ^ 2 )  -  ( z ^
2 ) ) ) )
161 elfznn 11082 . . . . . . . . 9  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  e.  NN )
162161ad2antrl 710 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  NN )
163162nncnd 10018 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  CC )
164 elfznn 11082 . . . . . . . . 9  |-  ( z  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  z  e.  NN )
165164ad2antll 711 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  NN )
166165nncnd 10018 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  CC )
167 subsq 11490 . . . . . . 7  |-  ( ( x  e.  CC  /\  z  e.  CC )  ->  ( ( x ^
2 )  -  (
z ^ 2 ) )  =  ( ( x  +  z )  x.  ( x  -  z ) ) )
168163, 166, 167syl2anc 644 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( x ^
2 )  -  (
z ^ 2 ) )  =  ( ( x  +  z )  x.  ( x  -  z ) ) )
169168breq2d 4226 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
( x ^ 2 )  -  ( z ^ 2 ) )  <-> 
P  ||  ( (
x  +  z )  x.  ( x  -  z ) ) ) )
170148, 160, 1693bitrd 272 . . . 4  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( G `  x )  =  ( G `  z )  <-> 
P  ||  ( (
x  +  z )  x.  ( x  -  z ) ) ) )
1712adantr 453 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  Prime )
172152, 156zaddcld 10381 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  e.  ZZ )
173152, 156zsubcld 10382 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  -  z
)  e.  ZZ )
174 euclemma 13110 . . . . . 6  |-  ( ( P  e.  Prime  /\  (
x  +  z )  e.  ZZ  /\  (
x  -  z )  e.  ZZ )  -> 
( P  ||  (
( x  +  z )  x.  ( x  -  z ) )  <-> 
( P  ||  (
x  +  z )  \/  P  ||  (
x  -  z ) ) ) )
175171, 172, 173, 174syl3anc 1185 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
( x  +  z )  x.  ( x  -  z ) )  <-> 
( P  ||  (
x  +  z )  \/  P  ||  (
x  -  z ) ) ) )
176171, 49syl 16 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  NN )
177176nnzd 10376 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  ZZ )
178162, 165nnaddcld 10048 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  e.  NN )
179 dvdsle 12897 . . . . . . . 8  |-  ( ( P  e.  ZZ  /\  ( x  +  z
)  e.  NN )  ->  ( P  ||  ( x  +  z
)  ->  P  <_  ( x  +  z ) ) )
180177, 178, 179syl2anc 644 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
x  +  z )  ->  P  <_  (
x  +  z ) ) )
181178nnred 10017 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  e.  RR )
182176nnred 10017 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  RR )
183182, 52syl 16 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  -  1 )  e.  RR )
184162nnred 10017 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  RR )
185165nnred 10017 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  RR )
18674adantr 453 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( P  - 
1 )  /  2
)  e.  RR )
187 elfzle2 11063 . . . . . . . . . . . . 13  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  <_  ( ( P  - 
1 )  /  2
) )
188187ad2antrl 710 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  <_  ( ( P  -  1 )  / 
2 ) )
189 elfzle2 11063 . . . . . . . . . . . . 13  |-  ( z  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  z  <_  ( ( P  - 
1 )  /  2
) )
190189ad2antll 711 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  <_  ( ( P  -  1 )  /  2 ) )
191184, 185, 186, 186, 188, 190le2addd 9646 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  <_  ( (
( P  -  1 )  /  2 )  +  ( ( P  -  1 )  / 
2 ) ) )
19254adantr 453 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  -  1 )  e.  CC )
1931922halvesd 10215 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( ( P  -  1 )  / 
2 )  +  ( ( P  -  1 )  /  2 ) )  =  ( P  -  1 ) )
194191, 193breqtrd 4238 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  <_  ( P  -  1 ) )
195182ltm1d 9945 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  -  1 )  <  P )
196181, 183, 182, 194, 195lelttrd 9230 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  <  P )
197181, 182ltnled 9222 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( x  +  z )  <  P  <->  -.  P  <_  ( x  +  z ) ) )
198196, 197mpbid 203 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  -.  P  <_  ( x  +  z ) )
199198pm2.21d 101 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  <_  (
x  +  z )  ->  x  =  z ) )
200180, 199syld 43 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
x  +  z )  ->  x  =  z ) )
201 moddvds 12861 . . . . . . . . 9  |-  ( ( P  e.  NN  /\  x  e.  ZZ  /\  z  e.  ZZ )  ->  (
( x  mod  P
)  =  ( z  mod  P )  <->  P  ||  (
x  -  z ) ) )
202176, 152, 156, 201syl3anc 1185 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( x  mod  P )  =  ( z  mod  P )  <->  P  ||  (
x  -  z ) ) )
203176nnrpd 10649 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  RR+ )
204162nnnn0d 10276 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  NN0 )
205204nn0ge0d 10279 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
0  <_  x )
20687adantr 453 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( P  - 
1 )  /  2
)  <  P )
207184, 186, 182, 188, 206lelttrd 9230 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  <  P )
208 modid 11272 . . . . . . . . . 10  |-  ( ( ( x  e.  RR  /\  P  e.  RR+ )  /\  ( 0  <_  x  /\  x  <  P ) )  ->  ( x  mod  P )  =  x )
209184, 203, 205, 207, 208syl22anc 1186 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  mod  P
)  =  x )
210165nnnn0d 10276 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  NN0 )
211210nn0ge0d 10279 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
0  <_  z )
212185, 186, 182, 190, 206lelttrd 9230 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  <  P )
213 modid 11272 . . . . . . . . . 10  |-  ( ( ( z  e.  RR  /\  P  e.  RR+ )  /\  ( 0  <_  z  /\  z  <  P ) )  ->  ( z  mod  P )  =  z )
214185, 203, 211, 212, 213syl22anc 1186 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( z  mod  P
)  =  z )
215209, 214eqeq12d 2452 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( x  mod  P )  =  ( z  mod  P )  <->  x  =  z ) )
216202, 215bitr3d 248 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
x  -  z )  <-> 
x  =  z ) )
217216biimpd 200 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
x  -  z )  ->  x  =  z ) )
218200, 217jaod 371 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( P  ||  ( x  +  z
)  \/  P  ||  ( x  -  z
) )  ->  x  =  z ) )
219175, 218sylbid 208 . . . 4  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
( x  +  z )  x.  ( x  -  z ) )  ->  x  =  z ) )
220170, 219sylbid 208 . . 3  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( G `  x )  =  ( G `  z )  ->  x  =  z ) )
221220ralrimivva 2800 . 2  |-  ( ph  ->  A. x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) A. z  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) ( ( G `  x )  =  ( G `  z )  ->  x  =  z ) )
222 dff13 6006 . 2  |-  ( G : ( 1 ... ( ( P  - 
1 )  /  2
) ) -1-1-> ( `' ( O `  T
) " { ( 0g `  Y ) } )  <->  ( G : ( 1 ... ( ( P  - 
1 )  /  2
) ) --> ( `' ( O `  T
) " { ( 0g `  Y ) } )  /\  A. x  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) ) A. z  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) ) ( ( G `  x
)  =  ( G `
 z )  ->  x  =  z )
) )
223137, 221, 222sylanbrc 647 1  |-  ( ph  ->  G : ( 1 ... ( ( P  -  1 )  / 
2 ) ) -1-1-> ( `' ( O `  T ) " {
( 0g `  Y
) } ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 178    \/ wo 359    /\ wa 360    = wceq 1653    e. wcel 1726    =/= wne 2601   A.wral 2707   _Vcvv 2958    \ cdif 3319   {csn 3816   class class class wbr 4214    e. cmpt 4268   `'ccnv 4879   "cima 4883    Fn wfn 5451   -->wf 5452   -1-1->wf1 5453   ` cfv 5456  (class class class)co 6083   CCcc 8990   RRcr 8991   0cc0 8992   1c1 8993    + caddc 8995    x. cmul 8997    < clt 9122    <_ cle 9123    - cmin 9293    / cdiv 9679   NNcn 10002   2c2 10051   NN0cn0 10223   ZZcz 10284   ZZ>=cuz 10490   RR+crp 10614   ...cfz 11045    mod cmo 11252   ^cexp 11384    || cdivides 12854    gcd cgcd 13008   Primecprime 13081   phicphi 13155   Basecbs 13471   ↾s cress 13472    ^s cpws 13672   0gc0g 13725   Mndcmnd 14686   Grpcgrp 14687   -gcsg 14690  .gcmg 14691  mulGrpcmgp 15650   Ringcrg 15662   CRingccrg 15663   1rcur 15664   RingHom crh 15819  Fieldcfield 15838  SubRingcsubrg 15866  Domncdomn 16342  IDomncidom 16343  var1cv1 16572  Poly1cpl1 16573  eval1ce1 16575  ℂfldccnfld 16705   ZRHomczrh 16780  ℤ/nczn 16783   deg1 cdg1 19979
This theorem is referenced by:  lgsqrlem4  21130
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1556  ax-5 1567  ax-17 1627  ax-9 1667  ax-8 1688  ax-13 1728  ax-14 1730  ax-6 1745  ax-7 1750  ax-11 1762  ax-12 1951  ax-ext 2419  ax-rep 4322  ax-sep 4332  ax-nul 4340  ax-pow 4379  ax-pr 4405  ax-un 4703  ax-inf2 7598  ax-cnex 9048  ax-resscn 9049  ax-1cn 9050  ax-icn 9051  ax-addcl 9052  ax-addrcl 9053  ax-mulcl 9054  ax-mulrcl 9055  ax-mulcom 9056  ax-addass 9057  ax-mulass 9058  ax-distr 9059  ax-i2m1 9060  ax-1ne0 9061  ax-1rid 9062  ax-rnegex 9063  ax-rrecex 9064  ax-cnre 9065  ax-pre-lttri 9066  ax-pre-lttrn 9067  ax-pre-ltadd 9068  ax-pre-mulgt0 9069  ax-pre-sup 9070  ax-addf 9071  ax-mulf 9072
This theorem depends on definitions:  df-bi 179  df-or 361  df-an 362  df-3or 938  df-3an 939  df-tru 1329  df-ex 1552  df-nf 1555  df-sb 1660  df-eu 2287  df-mo 2288  df-clab 2425  df-cleq 2431  df-clel 2434  df-nfc 2563  df-ne 2603  df-nel 2604  df-ral 2712  df-rex 2713  df-reu 2714  df-rmo 2715  df-rab 2716  df-v 2960  df-sbc 3164  df-csb 3254  df-dif 3325  df-un 3327  df-in 3329  df-ss 3336  df-pss 3338  df-nul 3631  df-if 3742  df-pw 3803  df-sn 3822  df-pr 3823  df-tp 3824  df-op 3825  df-uni 4018  df-int 4053  df-iun 4097  df-iin 4098  df-br 4215  df-opab 4269  df-mpt 4270  df-tr 4305  df-eprel 4496  df-id 4500  df-po 4505  df-so 4506  df-fr 4543  df-se 4544  df-we 4545  df-ord 4586  df-on 4587  df-lim 4588  df-suc 4589  df-om 4848  df-xp 4886  df-rel 4887  df-cnv 4888  df-co 4889  df-dm 4890  df-rn 4891  df-res 4892  df-ima 4893  df-iota 5420  df-fun 5458  df-fn 5459  df-f 5460  df-f1 5461  df-fo 5462  df-f1o 5463  df-fv 5464  df-isom 5465  df-ov 6086  df-oprab 6087  df-mpt2 6088  df-of 6307  df-ofr 6308  df-1st 6351  df-2nd 6352  df-tpos 6481  df-riota 6551  df-recs 6635  df-rdg 6670  df-1o 6726  df-2o 6727  df-oadd 6730  df-er 6907  df-ec 6909  df-qs 6913  df-map 7022  df-pm 7023  df-ixp 7066  df-en 7112  df-dom 7113  df-sdom 7114  df-fin 7115  df-sup 7448  df-oi 7481  df-card 7828  df-cda 8050  df-pnf 9124  df-mnf 9125  df-xr 9126  df-ltxr 9127  df-le 9128  df-sub 9295  df-neg 9296  df-div 9680  df-nn 10003  df-2 10060  df-3 10061  df-4 10062  df-5 10063  df-6 10064  df-7 10065  df-8 10066  df-9 10067  df-10 10068  df-n0 10224  df-z 10285  df-dec 10385  df-uz 10491  df-rp 10615  df-fz 11046  df-fzo 11138  df-fl 11204  df-mod 11253  df-seq 11326  df-exp 11385  df-hash 11621  df-cj 11906  df-re 11907  df-im 11908  df-sqr 12042  df-abs 12043  df-dvds 12855  df-gcd 13009  df-prm 13082  df-phi 13157  df-struct 13473  df-ndx 13474  df-slot 13475  df-base 13476  df-sets 13477  df-ress 13478  df-plusg 13544  df-mulr 13545  df-starv 13546  df-sca 13547  df-vsca 13548  df-tset 13550  df-ple 13551  df-ds 13553  df-unif 13554  df-hom 13555  df-cco 13556  df-prds 13673  df-pws 13675  df-0g 13729  df-gsum 13730  df-imas 13736  df-divs 13737  df-mre 13813  df-mrc 13814  df-acs 13816  df-mnd 14692  df-mhm 14740  df-submnd 14741  df-grp 14814  df-minusg 14815  df-sbg 14816  df-mulg 14817  df-subg 14943  df-nsg 14944  df-eqg 14945  df-ghm 15006  df-cntz 15118  df-cmn 15416  df-abl 15417  df-mgp 15651  df-rng 15665  df-cring 15666  df-ur 15667  df-oppr 15730  df-dvdsr 15748  df-unit 15749  df-invr 15779  df-rnghom 15821  df-drng 15839  df-field 15840  df-subrg 15868  df-lmod 15954  df-lss 16011  df-lsp 16050  df-sra 16246  df-rgmod 16247  df-lidl 16248  df-rsp 16249  df-2idl 16305  df-nzr 16331  df-rlreg 16345  df-domn 16346  df-idom 16347  df-assa 16374  df-asp 16375  df-ascl 16376  df-psr 16419  df-mvr 16420  df-mpl 16421  df-evls 16422  df-evl 16423  df-opsr 16427  df-psr1 16578  df-vr1 16579  df-ply1 16580  df-evl1 16582  df-cnfld 16706  df-zrh 16784  df-zn 16787
  Copyright terms: Public domain W3C validator