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

Theorem lgsqrlem4 21120
Description: Lemma for lgsqr 21122. (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 ) ) )
lgsqr.3  |-  ( ph  ->  A  e.  ZZ )
lgsqr.4  |-  ( ph  ->  ( A  / L P )  =  1 )
Assertion
Ref Expression
lgsqrlem4  |-  ( ph  ->  E. x  e.  ZZ  P  ||  ( ( x ^ 2 )  -  A ) )
Distinct variable groups:    x, A    x, G    y, O    x, y, P    ph, x, y   
y, T    x, L, y    x, Y, y
Allowed substitution hints:    A( y)    B( x, y)    D( x, y)    S( x, y)    T( x)    .1. ( x, y)    .^ ( x, y)    G( y)    .- ( x, y)    O( x)    X( x, y)

Proof of Theorem lgsqrlem4
StepHypRef Expression
1 lgsqr.y . . . . . . 7  |-  Y  =  (ℤ/n `  P )
2 lgsqr.s . . . . . . 7  |-  S  =  (Poly1 `  Y )
3 lgsqr.b . . . . . . 7  |-  B  =  ( Base `  S
)
4 lgsqr.d . . . . . . 7  |-  D  =  ( deg1  `  Y )
5 lgsqr.o . . . . . . 7  |-  O  =  (eval1 `  Y )
6 lgsqr.e . . . . . . 7  |-  .^  =  (.g
`  (mulGrp `  S )
)
7 lgsqr.x . . . . . . 7  |-  X  =  (var1 `  Y )
8 lgsqr.m . . . . . . 7  |-  .-  =  ( -g `  S )
9 lgsqr.u . . . . . . 7  |-  .1.  =  ( 1r `  S )
10 lgsqr.t . . . . . . 7  |-  T  =  ( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )
11 lgsqr.l . . . . . . 7  |-  L  =  ( ZRHom `  Y
)
12 lgsqr.1 . . . . . . 7  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
13 lgsqr.g . . . . . . 7  |-  G  =  ( y  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
y ^ 2 ) ) )
141, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13lgsqrlem2 21118 . . . . . 6  |-  ( ph  ->  G : ( 1 ... ( ( P  -  1 )  / 
2 ) ) -1-1-> ( `' ( O `  T ) " {
( 0g `  Y
) } ) )
15 fvex 5734 . . . . . . . . . . . 12  |-  ( O `
 T )  e. 
_V
1615cnvex 5398 . . . . . . . . . . 11  |-  `' ( O `  T )  e.  _V
17 imaexg 5209 . . . . . . . . . . 11  |-  ( `' ( O `  T
)  e.  _V  ->  ( `' ( O `  T ) " {
( 0g `  Y
) } )  e. 
_V )
1816, 17ax-mp 8 . . . . . . . . . 10  |-  ( `' ( O `  T
) " { ( 0g `  Y ) } )  e.  _V
1918f1dom 7121 . . . . . . . . 9  |-  ( G : ( 1 ... ( ( P  - 
1 )  /  2
) ) -1-1-> ( `' ( O `  T
) " { ( 0g `  Y ) } )  ->  (
1 ... ( ( P  -  1 )  / 
2 ) )  ~<_  ( `' ( O `  T ) " {
( 0g `  Y
) } ) )
2014, 19syl 16 . . . . . . . 8  |-  ( ph  ->  ( 1 ... (
( P  -  1 )  /  2 ) )  ~<_  ( `' ( O `  T )
" { ( 0g
`  Y ) } ) )
21 eqid 2435 . . . . . . . . . . . 12  |-  ( 0g
`  Y )  =  ( 0g `  Y
)
22 eqid 2435 . . . . . . . . . . . 12  |-  ( 0g
`  S )  =  ( 0g `  S
)
2312eldifad 3324 . . . . . . . . . . . . . 14  |-  ( ph  ->  P  e.  Prime )
241znfld 16833 . . . . . . . . . . . . . 14  |-  ( P  e.  Prime  ->  Y  e. Field
)
2523, 24syl 16 . . . . . . . . . . . . 13  |-  ( ph  ->  Y  e. Field )
26 fldidom 16357 . . . . . . . . . . . . 13  |-  ( Y  e. Field  ->  Y  e. IDomn )
2725, 26syl 16 . . . . . . . . . . . 12  |-  ( ph  ->  Y  e. IDomn )
28 isidom 16356 . . . . . . . . . . . . . . . . . . 19  |-  ( Y  e. IDomn 
<->  ( Y  e.  CRing  /\  Y  e. Domn ) )
2928simplbi 447 . . . . . . . . . . . . . . . . . 18  |-  ( Y  e. IDomn  ->  Y  e.  CRing )
3027, 29syl 16 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  Y  e.  CRing )
31 crngrng 15666 . . . . . . . . . . . . . . . . 17  |-  ( Y  e.  CRing  ->  Y  e.  Ring )
3230, 31syl 16 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  Y  e.  Ring )
332ply1rng 16634 . . . . . . . . . . . . . . . 16  |-  ( Y  e.  Ring  ->  S  e. 
Ring )
3432, 33syl 16 . . . . . . . . . . . . . . 15  |-  ( ph  ->  S  e.  Ring )
35 rnggrp 15661 . . . . . . . . . . . . . . 15  |-  ( S  e.  Ring  ->  S  e. 
Grp )
3634, 35syl 16 . . . . . . . . . . . . . 14  |-  ( ph  ->  S  e.  Grp )
37 eqid 2435 . . . . . . . . . . . . . . . . 17  |-  (mulGrp `  S )  =  (mulGrp `  S )
3837rngmgp 15662 . . . . . . . . . . . . . . . 16  |-  ( S  e.  Ring  ->  (mulGrp `  S )  e.  Mnd )
3934, 38syl 16 . . . . . . . . . . . . . . 15  |-  ( ph  ->  (mulGrp `  S )  e.  Mnd )
40 oddprm 13181 . . . . . . . . . . . . . . . . 17  |-  ( P  e.  ( Prime  \  {
2 } )  -> 
( ( P  - 
1 )  /  2
)  e.  NN )
4112, 40syl 16 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  e.  NN )
4241nnnn0d 10266 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( ( P  - 
1 )  /  2
)  e.  NN0 )
437, 2, 3vr1cl 16603 . . . . . . . . . . . . . . . 16  |-  ( Y  e.  Ring  ->  X  e.  B )
4432, 43syl 16 . . . . . . . . . . . . . . 15  |-  ( ph  ->  X  e.  B )
4537, 3mgpbas 15646 . . . . . . . . . . . . . . . 16  |-  B  =  ( Base `  (mulGrp `  S ) )
4645, 6mulgnn0cl 14898 . . . . . . . . . . . . . . 15  |-  ( ( (mulGrp `  S )  e.  Mnd  /\  ( ( P  -  1 )  /  2 )  e. 
NN0  /\  X  e.  B )  ->  (
( ( P  - 
1 )  /  2
)  .^  X )  e.  B )
4739, 42, 44, 46syl3anc 1184 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( ( ( P  -  1 )  / 
2 )  .^  X
)  e.  B )
483, 9rngidcl 15676 . . . . . . . . . . . . . . 15  |-  ( S  e.  Ring  ->  .1.  e.  B )
4934, 48syl 16 . . . . . . . . . . . . . 14  |-  ( ph  ->  .1.  e.  B )
503, 8grpsubcl 14861 . . . . . . . . . . . . . 14  |-  ( ( S  e.  Grp  /\  ( ( ( P  -  1 )  / 
2 )  .^  X
)  e.  B  /\  .1.  e.  B )  -> 
( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )  e.  B )
5136, 47, 49, 50syl3anc 1184 . . . . . . . . . . . . 13  |-  ( ph  ->  ( ( ( ( P  -  1 )  /  2 )  .^  X )  .-  .1.  )  e.  B )
5210, 51syl5eqel 2519 . . . . . . . . . . . 12  |-  ( ph  ->  T  e.  B )
5310fveq2i 5723 . . . . . . . . . . . . . . . 16  |-  ( D `
 T )  =  ( D `  (
( ( ( P  -  1 )  / 
2 )  .^  X
)  .-  .1.  )
)
5441nngt0d 10035 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  0  <  ( ( P  -  1 )  /  2 ) )
55 eqid 2435 . . . . . . . . . . . . . . . . . . . . . 22  |-  (algSc `  S )  =  (algSc `  S )
56 eqid 2435 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( 1r
`  Y )  =  ( 1r `  Y
)
572, 55, 56, 9ply1scl1 16675 . . . . . . . . . . . . . . . . . . . . 21  |-  ( Y  e.  Ring  ->  ( (algSc `  S ) `  ( 1r `  Y ) )  =  .1.  )
5832, 57syl 16 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( (algSc `  S
) `  ( 1r `  Y ) )  =  .1.  )
5958fveq2d 5724 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( D `  (
(algSc `  S ) `  ( 1r `  Y
) ) )  =  ( D `  .1.  ) )
60 eqid 2435 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( Base `  Y )  =  (
Base `  Y )
6160, 56rngidcl 15676 . . . . . . . . . . . . . . . . . . . . 21  |-  ( Y  e.  Ring  ->  ( 1r
`  Y )  e.  ( Base `  Y
) )
6232, 61syl 16 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( 1r `  Y
)  e.  ( Base `  Y ) )
6328simprbi 451 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( Y  e. IDomn  ->  Y  e. Domn )
64 domnnzr 16347 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( Y  e. Domn  ->  Y  e. NzRing )
6563, 64syl 16 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( Y  e. IDomn  ->  Y  e. NzRing )
6627, 65syl 16 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  Y  e. NzRing )
6756, 21nzrnz 16323 . . . . . . . . . . . . . . . . . . . . 21  |-  ( Y  e. NzRing  ->  ( 1r `  Y )  =/=  ( 0g `  Y ) )
6866, 67syl 16 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  ( 1r `  Y
)  =/=  ( 0g
`  Y ) )
694, 2, 60, 55, 21deg1scl 20028 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( Y  e.  Ring  /\  ( 1r `  Y )  e.  ( Base `  Y
)  /\  ( 1r `  Y )  =/=  ( 0g `  Y ) )  ->  ( D `  ( (algSc `  S ) `  ( 1r `  Y
) ) )  =  0 )
7032, 62, 68, 69syl3anc 1184 . . . . . . . . . . . . . . . . . . 19  |-  ( ph  ->  ( D `  (
(algSc `  S ) `  ( 1r `  Y
) ) )  =  0 )
7159, 70eqtr3d 2469 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( D `  .1.  )  =  0 )
724, 2, 7, 37, 6deg1pw 20035 . . . . . . . . . . . . . . . . . . 19  |-  ( ( Y  e. NzRing  /\  (
( P  -  1 )  /  2 )  e.  NN0 )  -> 
( D `  (
( ( P  - 
1 )  /  2
)  .^  X )
)  =  ( ( P  -  1 )  /  2 ) )
7366, 42, 72syl2anc 643 . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  ( D `  (
( ( P  - 
1 )  /  2
)  .^  X )
)  =  ( ( P  -  1 )  /  2 ) )
7454, 71, 733brtr4d 4234 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( D `  .1.  )  <  ( D `  ( ( ( P  -  1 )  / 
2 )  .^  X
) ) )
752, 4, 32, 3, 8, 47, 49, 74deg1sub 20023 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( D `  (
( ( ( P  -  1 )  / 
2 )  .^  X
)  .-  .1.  )
)  =  ( D `
 ( ( ( P  -  1 )  /  2 )  .^  X ) ) )
7653, 75syl5eq 2479 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( D `  T
)  =  ( D `
 ( ( ( P  -  1 )  /  2 )  .^  X ) ) )
7776, 73eqtrd 2467 . . . . . . . . . . . . . 14  |-  ( ph  ->  ( D `  T
)  =  ( ( P  -  1 )  /  2 ) )
7877, 42eqeltrd 2509 . . . . . . . . . . . . 13  |-  ( ph  ->  ( D `  T
)  e.  NN0 )
794, 2, 22, 3deg1nn0clb 20005 . . . . . . . . . . . . . 14  |-  ( ( Y  e.  Ring  /\  T  e.  B )  ->  ( T  =/=  ( 0g `  S )  <->  ( D `  T )  e.  NN0 ) )
8032, 52, 79syl2anc 643 . . . . . . . . . . . . 13  |-  ( ph  ->  ( T  =/=  ( 0g `  S )  <->  ( D `  T )  e.  NN0 ) )
8178, 80mpbird 224 . . . . . . . . . . . 12  |-  ( ph  ->  T  =/=  ( 0g
`  S ) )
822, 3, 4, 5, 21, 22, 27, 52, 81fta1g 20082 . . . . . . . . . . 11  |-  ( ph  ->  ( # `  ( `' ( O `  T ) " {
( 0g `  Y
) } ) )  <_  ( D `  T ) )
8382, 77breqtrd 4228 . . . . . . . . . 10  |-  ( ph  ->  ( # `  ( `' ( O `  T ) " {
( 0g `  Y
) } ) )  <_  ( ( P  -  1 )  / 
2 ) )
84 hashfz1 11622 . . . . . . . . . . 11  |-  ( ( ( P  -  1 )  /  2 )  e.  NN0  ->  ( # `  ( 1 ... (
( P  -  1 )  /  2 ) ) )  =  ( ( P  -  1 )  /  2 ) )
8542, 84syl 16 . . . . . . . . . 10  |-  ( ph  ->  ( # `  (
1 ... ( ( P  -  1 )  / 
2 ) ) )  =  ( ( P  -  1 )  / 
2 ) )
8683, 85breqtrrd 4230 . . . . . . . . 9  |-  ( ph  ->  ( # `  ( `' ( O `  T ) " {
( 0g `  Y
) } ) )  <_  ( # `  (
1 ... ( ( P  -  1 )  / 
2 ) ) ) )
8718a1i 11 . . . . . . . . . . 11  |-  ( ph  ->  ( `' ( O `
 T ) " { ( 0g `  Y ) } )  e.  _V )
88 hashbnd 11616 . . . . . . . . . . 11  |-  ( ( ( `' ( O `
 T ) " { ( 0g `  Y ) } )  e.  _V  /\  (
( P  -  1 )  /  2 )  e.  NN0  /\  ( # `
 ( `' ( O `  T )
" { ( 0g
`  Y ) } ) )  <_  (
( P  -  1 )  /  2 ) )  ->  ( `' ( O `  T )
" { ( 0g
`  Y ) } )  e.  Fin )
8987, 42, 83, 88syl3anc 1184 . . . . . . . . . 10  |-  ( ph  ->  ( `' ( O `
 T ) " { ( 0g `  Y ) } )  e.  Fin )
90 fzfid 11304 . . . . . . . . . 10  |-  ( ph  ->  ( 1 ... (
( P  -  1 )  /  2 ) )  e.  Fin )
91 hashdom 11645 . . . . . . . . . 10  |-  ( ( ( `' ( O `
 T ) " { ( 0g `  Y ) } )  e.  Fin  /\  (
1 ... ( ( P  -  1 )  / 
2 ) )  e. 
Fin )  ->  (
( # `  ( `' ( O `  T
) " { ( 0g `  Y ) } ) )  <_ 
( # `  ( 1 ... ( ( P  -  1 )  / 
2 ) ) )  <-> 
( `' ( O `
 T ) " { ( 0g `  Y ) } )  ~<_  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )
9289, 90, 91syl2anc 643 . . . . . . . . 9  |-  ( ph  ->  ( ( # `  ( `' ( O `  T ) " {
( 0g `  Y
) } ) )  <_  ( # `  (
1 ... ( ( P  -  1 )  / 
2 ) ) )  <-> 
( `' ( O `
 T ) " { ( 0g `  Y ) } )  ~<_  ( 1 ... (
( P  -  1 )  /  2 ) ) ) )
9386, 92mpbid 202 . . . . . . . 8  |-  ( ph  ->  ( `' ( O `
 T ) " { ( 0g `  Y ) } )  ~<_  ( 1 ... (
( P  -  1 )  /  2 ) ) )
94 sbth 7219 . . . . . . . 8  |-  ( ( ( 1 ... (
( P  -  1 )  /  2 ) )  ~<_  ( `' ( O `  T )
" { ( 0g
`  Y ) } )  /\  ( `' ( O `  T
) " { ( 0g `  Y ) } )  ~<_  ( 1 ... ( ( P  -  1 )  / 
2 ) ) )  ->  ( 1 ... ( ( P  - 
1 )  /  2
) )  ~~  ( `' ( O `  T ) " {
( 0g `  Y
) } ) )
9520, 93, 94syl2anc 643 . . . . . . 7  |-  ( ph  ->  ( 1 ... (
( P  -  1 )  /  2 ) )  ~~  ( `' ( O `  T
) " { ( 0g `  Y ) } ) )
96 f1finf1o 7327 . . . . . . 7  |-  ( ( ( 1 ... (
( P  -  1 )  /  2 ) )  ~~  ( `' ( O `  T
) " { ( 0g `  Y ) } )  /\  ( `' ( O `  T ) " {
( 0g `  Y
) } )  e. 
Fin )  ->  ( G : ( 1 ... ( ( P  - 
1 )  /  2
) ) -1-1-> ( `' ( O `  T
) " { ( 0g `  Y ) } )  <->  G :
( 1 ... (
( P  -  1 )  /  2 ) ) -1-1-onto-> ( `' ( O `
 T ) " { ( 0g `  Y ) } ) ) )
9795, 89, 96syl2anc 643 . . . . . 6  |-  ( ph  ->  ( G : ( 1 ... ( ( P  -  1 )  /  2 ) )
-1-1-> ( `' ( O `
 T ) " { ( 0g `  Y ) } )  <-> 
G : ( 1 ... ( ( P  -  1 )  / 
2 ) ) -1-1-onto-> ( `' ( O `  T
) " { ( 0g `  Y ) } ) ) )
9814, 97mpbid 202 . . . . 5  |-  ( ph  ->  G : ( 1 ... ( ( P  -  1 )  / 
2 ) ) -1-1-onto-> ( `' ( O `  T
) " { ( 0g `  Y ) } ) )
99 f1ocnv 5679 . . . . 5  |-  ( G : ( 1 ... ( ( P  - 
1 )  /  2
) ) -1-1-onto-> ( `' ( O `
 T ) " { ( 0g `  Y ) } )  ->  `' G :
( `' ( O `
 T ) " { ( 0g `  Y ) } ) -1-1-onto-> ( 1 ... ( ( P  -  1 )  /  2 ) ) )
100 f1of 5666 . . . . 5  |-  ( `' G : ( `' ( O `  T
) " { ( 0g `  Y ) } ) -1-1-onto-> ( 1 ... (
( P  -  1 )  /  2 ) )  ->  `' G : ( `' ( O `  T )
" { ( 0g
`  Y ) } ) --> ( 1 ... ( ( P  - 
1 )  /  2
) ) )
10198, 99, 1003syl 19 . . . 4  |-  ( ph  ->  `' G : ( `' ( O `  T
) " { ( 0g `  Y ) } ) --> ( 1 ... ( ( P  -  1 )  / 
2 ) ) )
102 lgsqr.3 . . . . 5  |-  ( ph  ->  A  e.  ZZ )
103 lgsqr.4 . . . . 5  |-  ( ph  ->  ( A  / L P )  =  1 )
1041, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 102, 103lgsqrlem3 21119 . . . 4  |-  ( ph  ->  ( L `  A
)  e.  ( `' ( O `  T
) " { ( 0g `  Y ) } ) )
105101, 104ffvelrnd 5863 . . 3  |-  ( ph  ->  ( `' G `  ( L `  A ) )  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) ) )
106 elfzelz 11051 . . 3  |-  ( ( `' G `  ( L `
 A ) )  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  ( `' G `  ( L `
 A ) )  e.  ZZ )
107105, 106syl 16 . 2  |-  ( ph  ->  ( `' G `  ( L `  A ) )  e.  ZZ )
108 oveq1 6080 . . . . . . 7  |-  ( x  =  ( `' G `  ( L `  A
) )  ->  (
x ^ 2 )  =  ( ( `' G `  ( L `
 A ) ) ^ 2 ) )
109108fveq2d 5724 . . . . . 6  |-  ( x  =  ( `' G `  ( L `  A
) )  ->  ( L `  ( x ^ 2 ) )  =  ( L `  ( ( `' G `  ( L `  A
) ) ^ 2 ) ) )
110 oveq1 6080 . . . . . . . . 9  |-  ( y  =  x  ->  (
y ^ 2 )  =  ( x ^
2 ) )
111110fveq2d 5724 . . . . . . . 8  |-  ( y  =  x  ->  ( L `  ( y ^ 2 ) )  =  ( L `  ( x ^ 2 ) ) )
112111cbvmptv 4292 . . . . . . 7  |-  ( y  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  |->  ( L `
 ( y ^
2 ) ) )  =  ( x  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  |->  ( L `  ( x ^ 2 ) ) )
11313, 112eqtri 2455 . . . . . 6  |-  G  =  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( L `  (
x ^ 2 ) ) )
114 fvex 5734 . . . . . 6  |-  ( L `
 ( ( `' G `  ( L `
 A ) ) ^ 2 ) )  e.  _V
115109, 113, 114fvmpt 5798 . . . . 5  |-  ( ( `' G `  ( L `
 A ) )  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  ( G `  ( `' G `  ( L `  A ) ) )  =  ( L `  ( ( `' G `  ( L `  A
) ) ^ 2 ) ) )
116105, 115syl 16 . . . 4  |-  ( ph  ->  ( G `  ( `' G `  ( L `
 A ) ) )  =  ( L `
 ( ( `' G `  ( L `
 A ) ) ^ 2 ) ) )
117 f1ocnvfv2 6007 . . . . 5  |-  ( ( G : ( 1 ... ( ( P  -  1 )  / 
2 ) ) -1-1-onto-> ( `' ( O `  T
) " { ( 0g `  Y ) } )  /\  ( L `  A )  e.  ( `' ( O `
 T ) " { ( 0g `  Y ) } ) )  ->  ( G `  ( `' G `  ( L `  A ) ) )  =  ( L `  A ) )
11898, 104, 117syl2anc 643 . . . 4  |-  ( ph  ->  ( G `  ( `' G `  ( L `
 A ) ) )  =  ( L `
 A ) )
119116, 118eqtr3d 2469 . . 3  |-  ( ph  ->  ( L `  (
( `' G `  ( L `  A ) ) ^ 2 ) )  =  ( L `
 A ) )
120 prmnn 13074 . . . . . 6  |-  ( P  e.  Prime  ->  P  e.  NN )
12123, 120syl 16 . . . . 5  |-  ( ph  ->  P  e.  NN )
122121nnnn0d 10266 . . . 4  |-  ( ph  ->  P  e.  NN0 )
123 zsqcl 11444 . . . . 5  |-  ( ( `' G `  ( L `
 A ) )  e.  ZZ  ->  (
( `' G `  ( L `  A ) ) ^ 2 )  e.  ZZ )
124107, 123syl 16 . . . 4  |-  ( ph  ->  ( ( `' G `  ( L `  A
) ) ^ 2 )  e.  ZZ )
1251, 11zndvds 16822 . . . 4  |-  ( ( P  e.  NN0  /\  ( ( `' G `  ( L `  A
) ) ^ 2 )  e.  ZZ  /\  A  e.  ZZ )  ->  ( ( L `  ( ( `' G `  ( L `  A
) ) ^ 2 ) )  =  ( L `  A )  <-> 
P  ||  ( (
( `' G `  ( L `  A ) ) ^ 2 )  -  A ) ) )
126122, 124, 102, 125syl3anc 1184 . . 3  |-  ( ph  ->  ( ( L `  ( ( `' G `  ( L `  A
) ) ^ 2 ) )  =  ( L `  A )  <-> 
P  ||  ( (
( `' G `  ( L `  A ) ) ^ 2 )  -  A ) ) )
127119, 126mpbid 202 . 2  |-  ( ph  ->  P  ||  ( ( ( `' G `  ( L `  A ) ) ^ 2 )  -  A ) )
128108oveq1d 6088 . . . 4  |-  ( x  =  ( `' G `  ( L `  A
) )  ->  (
( x ^ 2 )  -  A )  =  ( ( ( `' G `  ( L `
 A ) ) ^ 2 )  -  A ) )
129128breq2d 4216 . . 3  |-  ( x  =  ( `' G `  ( L `  A
) )  ->  ( P  ||  ( ( x ^ 2 )  -  A )  <->  P  ||  (
( ( `' G `  ( L `  A
) ) ^ 2 )  -  A ) ) )
130129rspcev 3044 . 2  |-  ( ( ( `' G `  ( L `  A ) )  e.  ZZ  /\  P  ||  ( ( ( `' G `  ( L `
 A ) ) ^ 2 )  -  A ) )  ->  E. x  e.  ZZ  P  ||  ( ( x ^ 2 )  -  A ) )
131107, 127, 130syl2anc 643 1  |-  ( ph  ->  E. x  e.  ZZ  P  ||  ( ( x ^ 2 )  -  A ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 177    = wceq 1652    e. wcel 1725    =/= wne 2598   E.wrex 2698   _Vcvv 2948    \ cdif 3309   {csn 3806   class class class wbr 4204    e. cmpt 4258   `'ccnv 4869   "cima 4873   -->wf 5442   -1-1->wf1 5443   -1-1-onto->wf1o 5445   ` cfv 5446  (class class class)co 6073    ~~ cen 7098    ~<_ cdom 7099   Fincfn 7101   0cc0 8982   1c1 8983    < clt 9112    <_ cle 9113    - cmin 9283    / cdiv 9669   NNcn 9992   2c2 10041   NN0cn0 10213   ZZcz 10274   ...cfz 11035   ^cexp 11374   #chash 11610    || cdivides 12844   Primecprime 13071   Basecbs 13461   0gc0g 13715   Mndcmnd 14676   Grpcgrp 14677   -gcsg 14680  .gcmg 14681  mulGrpcmgp 15640   Ringcrg 15652   CRingccrg 15653   1rcur 15654  Fieldcfield 15828  NzRingcnzr 16320  Domncdomn 16332  IDomncidom 16333  algSccascl 16363  var1cv1 16562  Poly1cpl1 16563  eval1ce1 16565   ZRHomczrh 16770  ℤ/nczn 16773   deg1 cdg1 19969    / Lclgs 21070
This theorem is referenced by:  lgsqrlem5  21121
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1555  ax-5 1566  ax-17 1626  ax-9 1666  ax-8 1687  ax-13 1727  ax-14 1729  ax-6 1744  ax-7 1749  ax-11 1761  ax-12 1950  ax-ext 2416  ax-rep 4312  ax-sep 4322  ax-nul 4330  ax-pow 4369  ax-pr 4395  ax-un 4693  ax-inf2 7588  ax-cnex 9038  ax-resscn 9039  ax-1cn 9040  ax-icn 9041  ax-addcl 9042  ax-addrcl 9043  ax-mulcl 9044  ax-mulrcl 9045  ax-mulcom 9046  ax-addass 9047  ax-mulass 9048  ax-distr 9049  ax-i2m1 9050  ax-1ne0 9051  ax-1rid 9052  ax-rnegex 9053  ax-rrecex 9054  ax-cnre 9055  ax-pre-lttri 9056  ax-pre-lttrn 9057  ax-pre-ltadd 9058  ax-pre-mulgt0 9059  ax-pre-sup 9060  ax-addf 9061  ax-mulf 9062
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3or 937  df-3an 938  df-tru 1328  df-ex 1551  df-nf 1554  df-sb 1659  df-eu 2284  df-mo 2285  df-clab 2422  df-cleq 2428  df-clel 2431  df-nfc 2560  df-ne 2600  df-nel 2601  df-ral 2702  df-rex 2703  df-reu 2704  df-rmo 2705  df-rab 2706  df-v 2950  df-sbc 3154  df-csb 3244  df-dif 3315  df-un 3317  df-in 3319  df-ss 3326  df-pss 3328  df-nul 3621  df-if 3732  df-pw 3793  df-sn 3812  df-pr 3813  df-tp 3814  df-op 3815  df-uni 4008  df-int 4043  df-iun 4087  df-iin 4088  df-br 4205  df-opab 4259  df-mpt 4260  df-tr 4295  df-eprel 4486  df-id 4490  df-po 4495  df-so 4496  df-fr 4533  df-se 4534  df-we 4535  df-ord 4576  df-on 4577  df-lim 4578  df-suc 4579  df-om 4838  df-xp 4876  df-rel 4877  df-cnv 4878  df-co 4879  df-dm 4880  df-rn 4881  df-res 4882  df-ima 4883  df-iota 5410  df-fun 5448  df-fn 5449  df-f 5450  df-f1 5451  df-fo 5452  df-f1o 5453  df-fv 5454  df-isom 5455  df-ov 6076  df-oprab 6077  df-mpt2 6078  df-of 6297  df-ofr 6298  df-1st 6341  df-2nd 6342  df-tpos 6471  df-riota 6541  df-recs 6625  df-rdg 6660  df-1o 6716  df-2o 6717  df-oadd 6720  df-er 6897  df-ec 6899  df-qs 6903  df-map 7012  df-pm 7013  df-ixp 7056  df-en 7102  df-dom 7103  df-sdom 7104  df-fin 7105  df-sup 7438  df-oi 7471  df-card 7818  df-cda 8040  df-pnf 9114  df-mnf 9115  df-xr 9116  df-ltxr 9117  df-le 9118  df-sub 9285  df-neg 9286  df-div 9670  df-nn 9993  df-2 10050  df-3 10051  df-4 10052  df-5 10053  df-6 10054  df-7 10055  df-8 10056  df-9 10057  df-10 10058  df-n0 10214  df-z 10275  df-dec 10375  df-uz 10481  df-q 10567  df-rp 10605  df-fz 11036  df-fzo 11128  df-fl 11194  df-mod 11243  df-seq 11316  df-exp 11375  df-hash 11611  df-cj 11896  df-re 11897  df-im 11898  df-sqr 12032  df-abs 12033  df-dvds 12845  df-gcd 12999  df-prm 13072  df-phi 13147  df-pc 13203  df-struct 13463  df-ndx 13464  df-slot 13465  df-base 13466  df-sets 13467  df-ress 13468  df-plusg 13534  df-mulr 13535  df-starv 13536  df-sca 13537  df-vsca 13538  df-tset 13540  df-ple 13541  df-ds 13543  df-unif 13544  df-hom 13545  df-cco 13546  df-prds 13663  df-pws 13665  df-0g 13719  df-gsum 13720  df-imas 13726  df-divs 13727  df-mre 13803  df-mrc 13804  df-acs 13806  df-mnd 14682  df-mhm 14730  df-submnd 14731  df-grp 14804  df-minusg 14805  df-sbg 14806  df-mulg 14807  df-subg 14933  df-nsg 14934  df-eqg 14935  df-ghm 14996  df-cntz 15108  df-cmn 15406  df-abl 15407  df-mgp 15641  df-rng 15655  df-cring 15656  df-ur 15657  df-oppr 15720  df-dvdsr 15738  df-unit 15739  df-invr 15769  df-rnghom 15811  df-drng 15829  df-field 15830  df-subrg 15858  df-lmod 15944  df-lss 16001  df-lsp 16040  df-sra 16236  df-rgmod 16237  df-lidl 16238  df-rsp 16239  df-2idl 16295  df-nzr 16321  df-rlreg 16335  df-domn 16336  df-idom 16337  df-assa 16364  df-asp 16365  df-ascl 16366  df-psr 16409  df-mvr 16410  df-mpl 16411  df-evls 16412  df-evl 16413  df-opsr 16417  df-psr1 16568  df-vr1 16569  df-ply1 16570  df-evl1 16572  df-coe1 16573  df-cnfld 16696  df-zrh 16774  df-zn 16777  df-mdeg 19970  df-deg1 19971  df-mon1 20045  df-uc1p 20046  df-q1p 20047  df-r1p 20048  df-lgs 21071
  Copyright terms: Public domain W3C validator