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

Theorem lgsqrlem2 20581
Description: Lemma for lgsqr 20585. (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 } ) )
2 eldifi 3298 . . . . . . . . . . . . 13  |-  ( P  e.  ( Prime  \  {
2 } )  ->  P  e.  Prime )
31, 2syl 15 . . . . . . . . . . . 12  |-  ( ph  ->  P  e.  Prime )
4 lgsqr.y . . . . . . . . . . . . 13  |-  Y  =  (ℤ/n `  P )
54znfld 16514 . . . . . . . . . . . 12  |-  ( P  e.  Prime  ->  Y  e. Field
)
63, 5syl 15 . . . . . . . . . . 11  |-  ( ph  ->  Y  e. Field )
7 fldidom 16046 . . . . . . . . . . 11  |-  ( Y  e. Field  ->  Y  e. IDomn )
86, 7syl 15 . . . . . . . . . 10  |-  ( ph  ->  Y  e. IDomn )
9 isidom 16045 . . . . . . . . . . 11  |-  ( Y  e. IDomn 
<->  ( Y  e.  CRing  /\  Y  e. Domn ) )
109simplbi 446 . . . . . . . . . 10  |-  ( Y  e. IDomn  ->  Y  e.  CRing )
118, 10syl 15 . . . . . . . . 9  |-  ( ph  ->  Y  e.  CRing )
12 crngrng 15351 . . . . . . . . 9  |-  ( Y  e.  CRing  ->  Y  e.  Ring )
1311, 12syl 15 . . . . . . . 8  |-  ( ph  ->  Y  e.  Ring )
14 eqid 2283 . . . . . . . . 9  |-  (flds  ZZ )  =  (flds  ZZ )
15 lgsqr.l . . . . . . . . 9  |-  L  =  ( ZRHom `  Y
)
1614, 15zrhrhm 16466 . . . . . . . 8  |-  ( Y  e.  Ring  ->  L  e.  ( (flds  ZZ ) RingHom  Y ) )
1713, 16syl 15 . . . . . . 7  |-  ( ph  ->  L  e.  ( (flds  ZZ ) RingHom  Y ) )
18 zsubrg 16425 . . . . . . . . 9  |-  ZZ  e.  (SubRing ` fld )
1914subrgbas 15554 . . . . . . . . 9  |-  ( ZZ  e.  (SubRing ` fld )  ->  ZZ  =  ( Base `  (flds  ZZ ) ) )
2018, 19ax-mp 8 . . . . . . . 8  |-  ZZ  =  ( Base `  (flds  ZZ ) )
21 eqid 2283 . . . . . . . 8  |-  ( Base `  Y )  =  (
Base `  Y )
2220, 21rhmf 15504 . . . . . . 7  |-  ( L  e.  ( (flds  ZZ ) RingHom  Y )  ->  L : ZZ --> ( Base `  Y )
)
2317, 22syl 15 . . . . . 6  |-  ( ph  ->  L : ZZ --> ( Base `  Y ) )
2423adantr 451 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  L : ZZ --> ( Base `  Y
) )
25 elfzelz 10798 . . . . . . 7  |-  ( y  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  y  e.  ZZ )
2625adantl 452 . . . . . 6  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  e.  ZZ )
27 zsqcl 11174 . . . . . 6  |-  ( y  e.  ZZ  ->  (
y ^ 2 )  e.  ZZ )
2826, 27syl 15 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y ^ 2 )  e.  ZZ )
29 ffvelrn 5663 . . . . 5  |-  ( ( L : ZZ --> ( Base `  Y )  /\  (
y ^ 2 )  e.  ZZ )  -> 
( L `  (
y ^ 2 ) )  e.  ( Base `  Y ) )
3024, 28, 29syl2anc 642 . . . 4  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( y ^ 2 ) )  e.  ( Base `  Y
) )
31 lgsqr.s . . . . 5  |-  S  =  (Poly1 `  Y )
32 lgsqr.b . . . . 5  |-  B  =  ( Base `  S
)
33 lgsqr.d . . . . 5  |-  D  =  ( deg1  `  Y )
34 lgsqr.o . . . . 5  |-  O  =  (eval1 `  Y )
35 lgsqr.e . . . . 5  |-  .^  =  (.g
`  (mulGrp `  S )
)
36 lgsqr.x . . . . 5  |-  X  =  (var1 `  Y )
37 lgsqr.m . . . . 5  |-  .-  =  ( -g `  S )
38 lgsqr.u . . . . 5  |-  .1.  =  ( 1r `  S )
39 lgsqr.t . . . . 5  |-  T  =  ( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )
401adantr 451 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  ( Prime  \  { 2 } ) )
41 elfznn 10819 . . . . . . . . . . 11  |-  ( y  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  y  e.  NN )
4241adantl 452 . . . . . . . . . 10  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  e.  NN )
4342nncnd 9762 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  e.  CC )
44 oddprm 12868 . . . . . . . . . . . 12  |-  ( P  e.  ( Prime  \  {
2 } )  -> 
( ( P  - 
1 )  /  2
)  e.  NN )
451, 44syl 15 . . . . . . . . . . 11  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  e.  NN )
4645nnnn0d 10018 . . . . . . . . . 10  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  e.  NN0 )
4746adantr 451 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  -  1 )  /  2 )  e.  NN0 )
48 2nn0 9982 . . . . . . . . . 10  |-  2  e.  NN0
4948a1i 10 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  e.  NN0 )
5043, 47, 49expmuld 11248 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y ^ ( 2  x.  ( ( P  -  1 )  / 
2 ) ) )  =  ( ( y ^ 2 ) ^
( ( P  - 
1 )  /  2
) ) )
51 prmnn 12761 . . . . . . . . . . . . . . . 16  |-  ( P  e.  Prime  ->  P  e.  NN )
523, 51syl 15 . . . . . . . . . . . . . . 15  |-  ( ph  ->  P  e.  NN )
5352nnred 9761 . . . . . . . . . . . . . 14  |-  ( ph  ->  P  e.  RR )
54 peano2rem 9113 . . . . . . . . . . . . . 14  |-  ( P  e.  RR  ->  ( P  -  1 )  e.  RR )
5553, 54syl 15 . . . . . . . . . . . . 13  |-  ( ph  ->  ( P  -  1 )  e.  RR )
5655recnd 8861 . . . . . . . . . . . 12  |-  ( ph  ->  ( P  -  1 )  e.  CC )
57 2cn 9816 . . . . . . . . . . . . 13  |-  2  e.  CC
5857a1i 10 . . . . . . . . . . . 12  |-  ( ph  ->  2  e.  CC )
59 2ne0 9829 . . . . . . . . . . . . 13  |-  2  =/=  0
6059a1i 10 . . . . . . . . . . . 12  |-  ( ph  ->  2  =/=  0 )
6156, 58, 60divcan2d 9538 . . . . . . . . . . 11  |-  ( ph  ->  ( 2  x.  (
( P  -  1 )  /  2 ) )  =  ( P  -  1 ) )
62 phiprm 12845 . . . . . . . . . . . 12  |-  ( P  e.  Prime  ->  ( phi `  P )  =  ( P  -  1 ) )
633, 62syl 15 . . . . . . . . . . 11  |-  ( ph  ->  ( phi `  P
)  =  ( P  -  1 ) )
6461, 63eqtr4d 2318 . . . . . . . . . 10  |-  ( ph  ->  ( 2  x.  (
( P  -  1 )  /  2 ) )  =  ( phi `  P ) )
6564adantr 451 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  ( ( P  -  1 )  /  2 ) )  =  ( phi `  P ) )
6665oveq2d 5874 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y ^ ( 2  x.  ( ( P  -  1 )  / 
2 ) ) )  =  ( y ^
( phi `  P
) ) )
6750, 66eqtr3d 2317 . . . . . . 7  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( y ^ 2 ) ^ ( ( P  -  1 )  /  2 ) )  =  ( y ^
( phi `  P
) ) )
6867oveq1d 5873 . . . . . 6  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( y ^
2 ) ^ (
( P  -  1 )  /  2 ) )  mod  P )  =  ( ( y ^ ( phi `  P ) )  mod 
P ) )
693adantr 451 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  Prime )
7069, 51syl 15 . . . . . . 7  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  NN )
7152nnzd 10116 . . . . . . . . . 10  |-  ( ph  ->  P  e.  ZZ )
7271adantr 451 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  ZZ )
73 gcdcom 12699 . . . . . . . . 9  |-  ( ( y  e.  ZZ  /\  P  e.  ZZ )  ->  ( y  gcd  P
)  =  ( P  gcd  y ) )
7426, 72, 73syl2anc 642 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y  gcd  P )  =  ( P  gcd  y ) )
7542nnred 9761 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  e.  RR )
7655rehalfcld 9958 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  e.  RR )
7776adantr 451 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  -  1 )  /  2 )  e.  RR )
7853adantr 451 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  RR )
79 elfzle2 10800 . . . . . . . . . . . . 13  |-  ( y  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  y  <_  ( ( P  - 
1 )  /  2
) )
8079adantl 452 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  <_  ( ( P  - 
1 )  /  2
) )
81 prmuz2 12776 . . . . . . . . . . . . . . . . . 18  |-  ( P  e.  Prime  ->  P  e.  ( ZZ>= `  2 )
)
823, 81syl 15 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  P  e.  ( ZZ>= ` 
2 ) )
83 uz2m1nn 10292 . . . . . . . . . . . . . . . . 17  |-  ( P  e.  ( ZZ>= `  2
)  ->  ( P  -  1 )  e.  NN )
8482, 83syl 15 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( P  -  1 )  e.  NN )
8584nnrpd 10389 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( P  -  1 )  e.  RR+ )
86 rphalflt 10380 . . . . . . . . . . . . . . 15  |-  ( ( P  -  1 )  e.  RR+  ->  ( ( P  -  1 )  /  2 )  < 
( P  -  1 ) )
8785, 86syl 15 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  <  ( P  -  1 ) )
8853ltm1d 9689 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( P  -  1 )  <  P )
8976, 55, 53, 87, 88lttrd 8977 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  <  P )
9089adantr 451 . . . . . . . . . . . 12  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  -  1 )  /  2 )  <  P )
9175, 77, 78, 80, 90lelttrd 8974 . . . . . . . . . . 11  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  y  <  P )
9275, 78ltnled 8966 . . . . . . . . . . 11  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y  <  P  <->  -.  P  <_  y ) )
9391, 92mpbid 201 . . . . . . . . . 10  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  <_  y )
94 dvdsle 12574 . . . . . . . . . . 11  |-  ( ( P  e.  ZZ  /\  y  e.  NN )  ->  ( P  ||  y  ->  P  <_  y )
)
9572, 42, 94syl2anc 642 . . . . . . . . . 10  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  ||  y  ->  P  <_  y ) )
9693, 95mtod 168 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  ||  y )
97 coprm 12779 . . . . . . . . . 10  |-  ( ( P  e.  Prime  /\  y  e.  ZZ )  ->  ( -.  P  ||  y  <->  ( P  gcd  y )  =  1 ) )
9869, 26, 97syl2anc 642 . . . . . . . . 9  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -.  P  ||  y  <->  ( P  gcd  y )  =  1 ) )
9996, 98mpbid 201 . . . . . . . 8  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  gcd  y )  =  1 )
10074, 99eqtrd 2315 . . . . . . 7  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
y  gcd  P )  =  1 )
101 eulerth 12851 . . . . . . 7  |-  ( ( P  e.  NN  /\  y  e.  ZZ  /\  (
y  gcd  P )  =  1 )  -> 
( ( y ^
( phi `  P
) )  mod  P
)  =  ( 1  mod  P ) )
10270, 26, 100, 101syl3anc 1182 . . . . . 6  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( y ^ ( phi `  P ) )  mod  P )  =  ( 1  mod  P
) )
10368, 102eqtrd 2315 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( y ^
2 ) ^ (
( P  -  1 )  /  2 ) )  mod  P )  =  ( 1  mod 
P ) )
1044, 31, 32, 33, 34, 35, 36, 37, 38, 39, 15, 40, 28, 103lgsqrlem1 20580 . . . 4  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( O `  T
) `  ( L `  ( y ^ 2 ) ) )  =  ( 0g `  Y
) )
105 eqid 2283 . . . . . . . 8  |-  ( Y  ^s  ( Base `  Y
) )  =  ( Y  ^s  ( Base `  Y
) )
106 eqid 2283 . . . . . . . 8  |-  ( Base `  ( Y  ^s  ( Base `  Y ) ) )  =  ( Base `  ( Y  ^s  ( Base `  Y
) ) )
107 fvex 5539 . . . . . . . . 9  |-  ( Base `  Y )  e.  _V
108107a1i 10 . . . . . . . 8  |-  ( ph  ->  ( Base `  Y
)  e.  _V )
10934, 31, 105, 21evl1rhm 19412 . . . . . . . . . . 11  |-  ( Y  e.  CRing  ->  O  e.  ( S RingHom  ( Y  ^s  ( Base `  Y ) ) ) )
11011, 109syl 15 . . . . . . . . . 10  |-  ( ph  ->  O  e.  ( S RingHom 
( Y  ^s  ( Base `  Y ) ) ) )
11132, 106rhmf 15504 . . . . . . . . . 10  |-  ( O  e.  ( S RingHom  ( Y  ^s  ( Base `  Y
) ) )  ->  O : B --> ( Base `  ( Y  ^s  ( Base `  Y ) ) ) )
112110, 111syl 15 . . . . . . . . 9  |-  ( ph  ->  O : B --> ( Base `  ( Y  ^s  ( Base `  Y ) ) ) )
11331ply1rng 16326 . . . . . . . . . . . . 13  |-  ( Y  e.  Ring  ->  S  e. 
Ring )
11413, 113syl 15 . . . . . . . . . . . 12  |-  ( ph  ->  S  e.  Ring )
115 rnggrp 15346 . . . . . . . . . . . 12  |-  ( S  e.  Ring  ->  S  e. 
Grp )
116114, 115syl 15 . . . . . . . . . . 11  |-  ( ph  ->  S  e.  Grp )
117 eqid 2283 . . . . . . . . . . . . . 14  |-  (mulGrp `  S )  =  (mulGrp `  S )
118117rngmgp 15347 . . . . . . . . . . . . 13  |-  ( S  e.  Ring  ->  (mulGrp `  S )  e.  Mnd )
119114, 118syl 15 . . . . . . . . . . . 12  |-  ( ph  ->  (mulGrp `  S )  e.  Mnd )
12036, 31, 32vr1cl 16294 . . . . . . . . . . . . 13  |-  ( Y  e.  Ring  ->  X  e.  B )
12113, 120syl 15 . . . . . . . . . . . 12  |-  ( ph  ->  X  e.  B )
122117, 32mgpbas 15331 . . . . . . . . . . . . 13  |-  B  =  ( Base `  (mulGrp `  S ) )
123122, 35mulgnn0cl 14583 . . . . . . . . . . . 12  |-  ( ( (mulGrp `  S )  e.  Mnd  /\  ( ( P  -  1 )  /  2 )  e. 
NN0  /\  X  e.  B )  ->  (
( ( P  - 
1 )  /  2
)  .^  X )  e.  B )
124119, 46, 121, 123syl3anc 1182 . . . . . . . . . . 11  |-  ( ph  ->  ( ( ( P  -  1 )  / 
2 )  .^  X
)  e.  B )
12532, 38rngidcl 15361 . . . . . . . . . . . 12  |-  ( S  e.  Ring  ->  .1.  e.  B )
126114, 125syl 15 . . . . . . . . . . 11  |-  ( ph  ->  .1.  e.  B )
12732, 37grpsubcl 14546 . . . . . . . . . . 11  |-  ( ( S  e.  Grp  /\  ( ( ( P  -  1 )  / 
2 )  .^  X
)  e.  B  /\  .1.  e.  B )  -> 
( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )  e.  B )
128116, 124, 126, 127syl3anc 1182 . . . . . . . . . 10  |-  ( ph  ->  ( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )  e.  B )
12939, 128syl5eqel 2367 . . . . . . . . 9  |-  ( ph  ->  T  e.  B )
130 ffvelrn 5663 . . . . . . . . 9  |-  ( ( O : B --> ( Base `  ( Y  ^s  ( Base `  Y ) ) )  /\  T  e.  B
)  ->  ( O `  T )  e.  (
Base `  ( Y  ^s  ( Base `  Y )
) ) )
131112, 129, 130syl2anc 642 . . . . . . . 8  |-  ( ph  ->  ( O `  T
)  e.  ( Base `  ( Y  ^s  ( Base `  Y ) ) ) )
132105, 21, 106, 6, 108, 131pwselbas 13388 . . . . . . 7  |-  ( ph  ->  ( O `  T
) : ( Base `  Y ) --> ( Base `  Y ) )
133 ffn 5389 . . . . . . 7  |-  ( ( O `  T ) : ( Base `  Y
) --> ( Base `  Y
)  ->  ( O `  T )  Fn  ( Base `  Y ) )
134132, 133syl 15 . . . . . 6  |-  ( ph  ->  ( O `  T
)  Fn  ( Base `  Y ) )
135134adantr 451 . . . . 5  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( O `  T )  Fn  ( Base `  Y
) )
136 fniniseg 5646 . . . . 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 ) ) ) )
137135, 136syl 15 . . . 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 ) ) ) )
13830, 104, 137mpbir2and 888 . . 3  |-  ( (
ph  /\  y  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( L `  ( y ^ 2 ) )  e.  ( `' ( O `  T )
" { ( 0g
`  Y ) } ) )
139 lgsqr.g . . 3  |-  G  =  ( y  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
y ^ 2 ) ) )
140138, 139fmptd 5684 . 2  |-  ( ph  ->  G : ( 1 ... ( ( P  -  1 )  / 
2 ) ) --> ( `' ( O `  T ) " {
( 0g `  Y
) } ) )
141 oveq1 5865 . . . . . . . . 9  |-  ( y  =  x  ->  (
y ^ 2 )  =  ( x ^
2 ) )
142141fveq2d 5529 . . . . . . . 8  |-  ( y  =  x  ->  ( L `  ( y ^ 2 ) )  =  ( L `  ( x ^ 2 ) ) )
143 fvex 5539 . . . . . . . 8  |-  ( L `
 ( x ^
2 ) )  e. 
_V
144142, 139, 143fvmpt 5602 . . . . . . 7  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  ( G `  x )  =  ( L `  ( x ^ 2 ) ) )
145144ad2antrl 708 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( G `  x
)  =  ( L `
 ( x ^
2 ) ) )
146 oveq1 5865 . . . . . . . . 9  |-  ( y  =  z  ->  (
y ^ 2 )  =  ( z ^
2 ) )
147146fveq2d 5529 . . . . . . . 8  |-  ( y  =  z  ->  ( L `  ( y ^ 2 ) )  =  ( L `  ( z ^ 2 ) ) )
148 fvex 5539 . . . . . . . 8  |-  ( L `
 ( z ^
2 ) )  e. 
_V
149147, 139, 148fvmpt 5602 . . . . . . 7  |-  ( z  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  ( G `  z )  =  ( L `  ( z ^ 2 ) ) )
150149ad2antll 709 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( G `  z
)  =  ( L `
 ( z ^
2 ) ) )
151145, 150eqeq12d 2297 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( G `  x )  =  ( G `  z )  <-> 
( L `  (
x ^ 2 ) )  =  ( L `
 ( z ^
2 ) ) ) )
15252nnnn0d 10018 . . . . . . 7  |-  ( ph  ->  P  e.  NN0 )
153152adantr 451 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  NN0 )
154 elfzelz 10798 . . . . . . . 8  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  e.  ZZ )
155154ad2antrl 708 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  ZZ )
156 zsqcl 11174 . . . . . . 7  |-  ( x  e.  ZZ  ->  (
x ^ 2 )  e.  ZZ )
157155, 156syl 15 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x ^ 2 )  e.  ZZ )
158 elfzelz 10798 . . . . . . . 8  |-  ( z  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  z  e.  ZZ )
159158ad2antll 709 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  ZZ )
160 zsqcl 11174 . . . . . . 7  |-  ( z  e.  ZZ  ->  (
z ^ 2 )  e.  ZZ )
161159, 160syl 15 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( z ^ 2 )  e.  ZZ )
1624, 15zndvds 16503 . . . . . 6  |-  ( ( P  e.  NN0  /\  ( x ^ 2 )  e.  ZZ  /\  ( z ^ 2 )  e.  ZZ )  ->  ( ( L `
 ( x ^
2 ) )  =  ( L `  (
z ^ 2 ) )  <->  P  ||  ( ( x ^ 2 )  -  ( z ^
2 ) ) ) )
163153, 157, 161, 162syl3anc 1182 . . . . 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 ) ) ) )
164 elfznn 10819 . . . . . . . . 9  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  e.  NN )
165164ad2antrl 708 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  NN )
166165nncnd 9762 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  CC )
167 elfznn 10819 . . . . . . . . 9  |-  ( z  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  z  e.  NN )
168167ad2antll 709 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  NN )
169168nncnd 9762 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  CC )
170 subsq 11210 . . . . . . 7  |-  ( ( x  e.  CC  /\  z  e.  CC )  ->  ( ( x ^
2 )  -  (
z ^ 2 ) )  =  ( ( x  +  z )  x.  ( x  -  z ) ) )
171166, 169, 170syl2anc 642 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( x ^
2 )  -  (
z ^ 2 ) )  =  ( ( x  +  z )  x.  ( x  -  z ) ) )
172171breq2d 4035 . . . . 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 ) ) ) )
173151, 163, 1723bitrd 270 . . . 4  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( G `  x )  =  ( G `  z )  <-> 
P  ||  ( (
x  +  z )  x.  ( x  -  z ) ) ) )
1743adantr 451 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  Prime )
175155, 159zaddcld 10121 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  e.  ZZ )
176155, 159zsubcld 10122 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  -  z
)  e.  ZZ )
177 euclemma 12787 . . . . . 6  |-  ( ( P  e.  Prime  /\  (
x  +  z )  e.  ZZ  /\  (
x  -  z )  e.  ZZ )  -> 
( P  ||  (
( x  +  z )  x.  ( x  -  z ) )  <-> 
( P  ||  (
x  +  z )  \/  P  ||  (
x  -  z ) ) ) )
178174, 175, 176, 177syl3anc 1182 . . . . 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 ) ) ) )
179174, 51syl 15 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  NN )
180179nnzd 10116 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  ZZ )
181165, 168nnaddcld 9792 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  e.  NN )
182 dvdsle 12574 . . . . . . . 8  |-  ( ( P  e.  ZZ  /\  ( x  +  z
)  e.  NN )  ->  ( P  ||  ( x  +  z
)  ->  P  <_  ( x  +  z ) ) )
183180, 181, 182syl2anc 642 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
x  +  z )  ->  P  <_  (
x  +  z ) ) )
184181nnred 9761 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  e.  RR )
185179nnred 9761 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  RR )
186185, 54syl 15 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  -  1 )  e.  RR )
187165nnred 9761 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  RR )
188168nnred 9761 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  RR )
18976adantr 451 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( P  - 
1 )  /  2
)  e.  RR )
190 elfzle2 10800 . . . . . . . . . . . . 13  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  <_  ( ( P  - 
1 )  /  2
) )
191190ad2antrl 708 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  <_  ( ( P  -  1 )  / 
2 ) )
192 elfzle2 10800 . . . . . . . . . . . . 13  |-  ( z  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  z  <_  ( ( P  - 
1 )  /  2
) )
193192ad2antll 709 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  <_  ( ( P  -  1 )  /  2 ) )
194187, 188, 189, 189, 191, 193le2addd 9390 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  <_  ( (
( P  -  1 )  /  2 )  +  ( ( P  -  1 )  / 
2 ) ) )
19556adantr 451 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  -  1 )  e.  CC )
1961952halvesd 9957 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( ( P  -  1 )  / 
2 )  +  ( ( P  -  1 )  /  2 ) )  =  ( P  -  1 ) )
197194, 196breqtrd 4047 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  <_  ( P  -  1 ) )
198185ltm1d 9689 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  -  1 )  <  P )
199184, 186, 185, 197, 198lelttrd 8974 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  +  z )  <  P )
200184, 185ltnled 8966 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( x  +  z )  <  P  <->  -.  P  <_  ( x  +  z ) ) )
201199, 200mpbid 201 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  -.  P  <_  ( x  +  z ) )
202201pm2.21d 98 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  <_  (
x  +  z )  ->  x  =  z ) )
203183, 202syld 40 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
x  +  z )  ->  x  =  z ) )
204 moddvds 12538 . . . . . . . . 9  |-  ( ( P  e.  NN  /\  x  e.  ZZ  /\  z  e.  ZZ )  ->  (
( x  mod  P
)  =  ( z  mod  P )  <->  P  ||  (
x  -  z ) ) )
205179, 155, 159, 204syl3anc 1182 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( x  mod  P )  =  ( z  mod  P )  <->  P  ||  (
x  -  z ) ) )
206179nnrpd 10389 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  P  e.  RR+ )
207165nnnn0d 10018 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  e.  NN0 )
208207nn0ge0d 10021 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
0  <_  x )
20989adantr 451 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( P  - 
1 )  /  2
)  <  P )
210187, 189, 185, 191, 209lelttrd 8974 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  ->  x  <  P )
211 modid 10993 . . . . . . . . . 10  |-  ( ( ( x  e.  RR  /\  P  e.  RR+ )  /\  ( 0  <_  x  /\  x  <  P ) )  ->  ( x  mod  P )  =  x )
212187, 206, 208, 210, 211syl22anc 1183 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( x  mod  P
)  =  x )
213168nnnn0d 10018 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  e.  NN0 )
214213nn0ge0d 10021 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
0  <_  z )
215188, 189, 185, 193, 209lelttrd 8974 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
z  <  P )
216 modid 10993 . . . . . . . . . 10  |-  ( ( ( z  e.  RR  /\  P  e.  RR+ )  /\  ( 0  <_  z  /\  z  <  P ) )  ->  ( z  mod  P )  =  z )
217188, 206, 214, 215, 216syl22anc 1183 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( z  mod  P
)  =  z )
218212, 217eqeq12d 2297 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( x  mod  P )  =  ( z  mod  P )  <->  x  =  z ) )
219205, 218bitr3d 246 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
x  -  z )  <-> 
x  =  z ) )
220219biimpd 198 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
x  -  z )  ->  x  =  z ) )
221203, 220jaod 369 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( P  ||  ( x  +  z
)  \/  P  ||  ( x  -  z
) )  ->  x  =  z ) )
222178, 221sylbid 206 . . . 4  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( P  ||  (
( x  +  z )  x.  ( x  -  z ) )  ->  x  =  z ) )
223173, 222sylbid 206 . . 3  |-  ( (
ph  /\  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  /\  z  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )  -> 
( ( G `  x )  =  ( G `  z )  ->  x  =  z ) )
224223ralrimivva 2635 . 2  |-  ( ph  ->  A. x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) A. z  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) ( ( G `  x )  =  ( G `  z )  ->  x  =  z ) )
225 dff13 5783 . 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 )
) )
226140, 224, 225sylanbrc 645 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 176    \/ wo 357    /\ wa 358    = wceq 1623    e. wcel 1684    =/= wne 2446   A.wral 2543   _Vcvv 2788    \ cdif 3149   {csn 3640   class class class wbr 4023    e. cmpt 4077   `'ccnv 4688   "cima 4692    Fn wfn 5250   -->wf 5251   -1-1->wf1 5252   ` cfv 5255  (class class class)co 5858   CCcc 8735   RRcr 8736   0cc0 8737   1c1 8738    + caddc 8740    x. cmul 8742    < clt 8867    <_ cle 8868    - cmin 9037    / cdiv 9423   NNcn 9746   2c2 9795   NN0cn0 9965   ZZcz 10024   ZZ>=cuz 10230   RR+crp 10354   ...cfz 10782    mod cmo 10973   ^cexp 11104    || cdivides 12531    gcd cgcd 12685   Primecprime 12758   phicphi 12832   Basecbs 13148   ↾s cress 13149    ^s cpws 13347   0gc0g 13400   Mndcmnd 14361   Grpcgrp 14362   -gcsg 14365  .gcmg 14366  mulGrpcmgp 15325   Ringcrg 15337   CRingccrg 15338   1rcur 15339   RingHom crh 15494  Fieldcfield 15513  SubRingcsubrg 15541  Domncdomn 16021  IDomncidom 16022  var1cv1 16251  Poly1cpl1 16252  eval1ce1 16254  ℂfldccnfld 16377   ZRHomczrh 16451  ℤ/nczn 16454   deg1 cdg1 19440
This theorem is referenced by:  lgsqrlem4  20583
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1533  ax-5 1544  ax-17 1603  ax-9 1635  ax-8 1643  ax-13 1686  ax-14 1688  ax-6 1703  ax-7 1708  ax-11 1715  ax-12 1866  ax-ext 2264  ax-rep 4131  ax-sep 4141  ax-nul 4149  ax-pow 4188  ax-pr 4214  ax-un 4512  ax-inf2 7342  ax-cnex 8793  ax-resscn 8794  ax-1cn 8795  ax-icn 8796  ax-addcl 8797  ax-addrcl 8798  ax-mulcl 8799  ax-mulrcl 8800  ax-mulcom 8801  ax-addass 8802  ax-mulass 8803  ax-distr 8804  ax-i2m1 8805  ax-1ne0 8806  ax-1rid 8807  ax-rnegex 8808  ax-rrecex 8809  ax-cnre 8810  ax-pre-lttri 8811  ax-pre-lttrn 8812  ax-pre-ltadd 8813  ax-pre-mulgt0 8814  ax-pre-sup 8815  ax-addf 8816  ax-mulf 8817
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 1529  df-nf 1532  df-sb 1630  df-eu 2147  df-mo 2148  df-clab 2270  df-cleq 2276  df-clel 2279  df-nfc 2408  df-ne 2448  df-nel 2449  df-ral 2548  df-rex 2549  df-reu 2550  df-rmo 2551  df-rab 2552  df-v 2790  df-sbc 2992  df-csb 3082  df-dif 3155  df-un 3157  df-in 3159  df-ss 3166  df-pss 3168  df-nul 3456  df-if 3566  df-pw 3627  df-sn 3646  df-pr 3647  df-tp 3648  df-op 3649  df-uni 3828  df-int 3863  df-iun 3907  df-iin 3908  df-br 4024  df-opab 4078  df-mpt 4079  df-tr 4114  df-eprel 4305  df-id 4309  df-po 4314  df-so 4315  df-fr 4352  df-se 4353  df-we 4354  df-ord 4395  df-on 4396  df-lim 4397  df-suc 4398  df-om 4657  df-xp 4695  df-rel 4696  df-cnv 4697  df-co 4698  df-dm 4699  df-rn 4700  df-res 4701  df-ima 4702  df-iota 5219  df-fun 5257  df-fn 5258  df-f 5259  df-f1 5260  df-fo 5261  df-f1o 5262  df-fv 5263  df-isom 5264  df-ov 5861  df-oprab 5862  df-mpt2 5863  df-of 6078  df-ofr 6079  df-1st 6122  df-2nd 6123  df-tpos 6234  df-riota 6304  df-recs 6388  df-rdg 6423  df-1o 6479  df-2o 6480  df-oadd 6483  df-er 6660  df-ec 6662  df-qs 6666  df-map 6774  df-pm 6775  df-ixp 6818  df-en 6864  df-dom 6865  df-sdom 6866  df-fin 6867  df-sup 7194  df-oi 7225  df-card 7572  df-cda 7794  df-pnf 8869  df-mnf 8870  df-xr 8871  df-ltxr 8872  df-le 8873  df-sub 9039  df-neg 9040  df-div 9424  df-nn 9747  df-2 9804  df-3 9805  df-4 9806  df-5 9807  df-6 9808  df-7 9809  df-8 9810  df-9 9811  df-10 9812  df-n0 9966  df-z 10025  df-dec 10125  df-uz 10231  df-rp 10355  df-fz 10783  df-fzo 10871  df-fl 10925  df-mod 10974  df-seq 11047  df-exp 11105  df-hash 11338  df-cj 11584  df-re 11585  df-im 11586  df-sqr 11720  df-abs 11721  df-dvds 12532  df-gcd 12686  df-prm 12759  df-phi 12834  df-struct 13150  df-ndx 13151  df-slot 13152  df-base 13153  df-sets 13154  df-ress 13155  df-plusg 13221  df-mulr 13222  df-starv 13223  df-sca 13224  df-vsca 13225  df-tset 13227  df-ple 13228  df-ds 13230  df-hom 13232  df-cco 13233  df-prds 13348  df-pws 13350  df-0g 13404  df-gsum 13405  df-imas 13411  df-divs 13412  df-mre 13488  df-mrc 13489  df-acs 13491  df-mnd 14367  df-mhm 14415  df-submnd 14416  df-grp 14489  df-minusg 14490  df-sbg 14491  df-mulg 14492  df-subg 14618  df-nsg 14619  df-eqg 14620  df-ghm 14681  df-cntz 14793  df-cmn 15091  df-abl 15092  df-mgp 15326  df-rng 15340  df-cring 15341  df-ur 15342  df-oppr 15405  df-dvdsr 15423  df-unit 15424  df-invr 15454  df-rnghom 15496  df-drng 15514  df-field 15515  df-subrg 15543  df-lmod 15629  df-lss 15690  df-lsp 15729  df-sra 15925  df-rgmod 15926  df-lidl 15927  df-rsp 15928  df-2idl 15984  df-nzr 16010  df-rlreg 16024  df-domn 16025  df-idom 16026  df-assa 16053  df-asp 16054  df-ascl 16055  df-psr 16098  df-mvr 16099  df-mpl 16100  df-evls 16101  df-evl 16102  df-opsr 16106  df-psr1 16257  df-vr1 16258  df-ply1 16259  df-evl1 16261  df-cnfld 16378  df-zrh 16455  df-zn 16458
  Copyright terms: Public domain W3C validator