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

Theorem lgseisenlem1 20604
Description: Lemma for lgseisen 20608. If  R ( u )  =  ( Q  x.  u )  mod  P and  M ( u )  =  ( -u
1 ^ R ( u ) )  x.  R ( u ), then for any even  1  <_  u  <_  P  -  1,  M ( u ) is also an even integer  1  <_  M
( u )  <_  P  -  1. To simplify these statements, we divide all the even numbers by  2, so that it becomes the statement that  M ( x  /  2 )  =  ( -u 1 ^ R ( x  / 
2 ) )  x.  R ( x  / 
2 )  /  2 is an integer between  1 and  ( P  -  1 )  / 
2. (Contributed by Mario Carneiro, 17-Jun-2015.)
Hypotheses
Ref Expression
lgseisen.1  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
lgseisen.2  |-  ( ph  ->  Q  e.  ( Prime  \  { 2 } ) )
lgseisen.3  |-  ( ph  ->  P  =/=  Q )
lgseisen.4  |-  R  =  ( ( Q  x.  ( 2  x.  x
) )  mod  P
)
lgseisen.5  |-  M  =  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) )
Assertion
Ref Expression
lgseisenlem1  |-  ( ph  ->  M : ( 1 ... ( ( P  -  1 )  / 
2 ) ) --> ( 1 ... ( ( P  -  1 )  /  2 ) ) )
Distinct variable groups:    x, P    ph, x    x, Q
Allowed substitution hints:    R( x)    M( x)

Proof of Theorem lgseisenlem1
StepHypRef Expression
1 neg1cn 9829 . . . . . . . . . . . . . . 15  |-  -u 1  e.  CC
21a1i 10 . . . . . . . . . . . . . 14  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  -u 1  e.  CC )
3 ax-1cn 8811 . . . . . . . . . . . . . . . 16  |-  1  e.  CC
4 ax-1ne0 8822 . . . . . . . . . . . . . . . 16  |-  1  =/=  0
53, 4negne0i 9137 . . . . . . . . . . . . . . 15  |-  -u 1  =/=  0
65a1i 10 . . . . . . . . . . . . . 14  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  -u 1  =/=  0 )
7 2z 10070 . . . . . . . . . . . . . . 15  |-  2  e.  ZZ
87a1i 10 . . . . . . . . . . . . . 14  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  2  e.  ZZ )
9 simpr 447 . . . . . . . . . . . . . 14  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  ( R  /  2 )  e.  ZZ )
10 expmulz 11164 . . . . . . . . . . . . . 14  |-  ( ( ( -u 1  e.  CC  /\  -u 1  =/=  0 )  /\  (
2  e.  ZZ  /\  ( R  /  2
)  e.  ZZ ) )  ->  ( -u 1 ^ ( 2  x.  ( R  /  2
) ) )  =  ( ( -u 1 ^ 2 ) ^
( R  /  2
) ) )
112, 6, 8, 9, 10syl22anc 1183 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  ( -u 1 ^ ( 2  x.  ( R  / 
2 ) ) )  =  ( ( -u
1 ^ 2 ) ^ ( R  / 
2 ) ) )
12 lgseisen.4 . . . . . . . . . . . . . . . . . . . 20  |-  R  =  ( ( Q  x.  ( 2  x.  x
) )  mod  P
)
13 lgseisen.2 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ph  ->  Q  e.  ( Prime  \  { 2 } ) )
1413adantr 451 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Q  e.  ( Prime  \  { 2 } ) )
15 eldifi 3311 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( Q  e.  ( Prime  \  {
2 } )  ->  Q  e.  Prime )
1614, 15syl 15 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Q  e.  Prime )
17 prmz 12778 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( Q  e.  Prime  ->  Q  e.  ZZ )
1816, 17syl 15 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  Q  e.  ZZ )
19 elfzelz 10814 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  e.  ZZ )
2019adantl 452 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  e.  ZZ )
21 zmulcl 10082 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( 2  e.  ZZ  /\  x  e.  ZZ )  ->  ( 2  x.  x
)  e.  ZZ )
227, 20, 21sylancr 644 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  ZZ )
2318, 22zmulcld 10139 . . . . . . . . . . . . . . . . . . . . 21  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( Q  x.  ( 2  x.  x ) )  e.  ZZ )
24 lgseisen.1 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
2524adantr 451 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  ( Prime  \  { 2 } ) )
26 eldifi 3311 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( P  e.  ( Prime  \  {
2 } )  ->  P  e.  Prime )
2725, 26syl 15 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  Prime )
28 prmnn 12777 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( P  e.  Prime  ->  P  e.  NN )
2927, 28syl 15 . . . . . . . . . . . . . . . . . . . . 21  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  NN )
30 zmodfz 11007 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( Q  x.  (
2  x.  x ) )  e.  ZZ  /\  P  e.  NN )  ->  ( ( Q  x.  ( 2  x.  x
) )  mod  P
)  e.  ( 0 ... ( P  - 
1 ) ) )
3123, 29, 30syl2anc 642 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( Q  x.  (
2  x.  x ) )  mod  P )  e.  ( 0 ... ( P  -  1 ) ) )
3212, 31syl5eqel 2380 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  ( 0 ... ( P  -  1 ) ) )
33 elfznn0 10838 . . . . . . . . . . . . . . . . . . 19  |-  ( R  e.  ( 0 ... ( P  -  1 ) )  ->  R  e.  NN0 )
3432, 33syl 15 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  NN0 )
3534nn0zd 10131 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  ZZ )
3635zcnd 10134 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  CC )
3736adantr 451 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  R  e.  CC )
38 2cn 9832 . . . . . . . . . . . . . . . 16  |-  2  e.  CC
3938a1i 10 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  2  e.  CC )
40 2ne0 9845 . . . . . . . . . . . . . . . 16  |-  2  =/=  0
4140a1i 10 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  2  =/=  0 )
4237, 39, 41divcan2d 9554 . . . . . . . . . . . . . 14  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
2  x.  ( R  /  2 ) )  =  R )
4342oveq2d 5890 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  ( -u 1 ^ ( 2  x.  ( R  / 
2 ) ) )  =  ( -u 1 ^ R ) )
44 sqneg 11180 . . . . . . . . . . . . . . . . 17  |-  ( 1  e.  CC  ->  ( -u 1 ^ 2 )  =  ( 1 ^ 2 ) )
453, 44ax-mp 8 . . . . . . . . . . . . . . . 16  |-  ( -u
1 ^ 2 )  =  ( 1 ^ 2 )
46 sq1 11214 . . . . . . . . . . . . . . . 16  |-  ( 1 ^ 2 )  =  1
4745, 46eqtri 2316 . . . . . . . . . . . . . . 15  |-  ( -u
1 ^ 2 )  =  1
4847oveq1i 5884 . . . . . . . . . . . . . 14  |-  ( (
-u 1 ^ 2 ) ^ ( R  /  2 ) )  =  ( 1 ^ ( R  /  2
) )
49 1exp 11147 . . . . . . . . . . . . . . 15  |-  ( ( R  /  2 )  e.  ZZ  ->  (
1 ^ ( R  /  2 ) )  =  1 )
5049adantl 452 . . . . . . . . . . . . . 14  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
1 ^ ( R  /  2 ) )  =  1 )
5148, 50syl5eq 2340 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
( -u 1 ^ 2 ) ^ ( R  /  2 ) )  =  1 )
5211, 43, 513eqtr3d 2336 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  ( -u 1 ^ R )  =  1 )
5352oveq1d 5889 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
( -u 1 ^ R
)  x.  R )  =  ( 1  x.  R ) )
5437mulid2d 8869 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
1  x.  R )  =  R )
5553, 54eqtrd 2328 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
( -u 1 ^ R
)  x.  R )  =  R )
5655oveq1d 5889 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  =  ( R  mod  P ) )
5734nn0red 10035 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  RR )
5829nnrpd 10405 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  RR+ )
5934nn0ge0d 10037 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  0  <_  R )
6023zred 10133 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( Q  x.  ( 2  x.  x ) )  e.  RR )
61 modlt 10997 . . . . . . . . . . . . 13  |-  ( ( ( Q  x.  (
2  x.  x ) )  e.  RR  /\  P  e.  RR+ )  -> 
( ( Q  x.  ( 2  x.  x
) )  mod  P
)  <  P )
6260, 58, 61syl2anc 642 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( Q  x.  (
2  x.  x ) )  mod  P )  <  P )
6312, 62syl5eqbr 4072 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  <  P )
64 modid 11009 . . . . . . . . . . 11  |-  ( ( ( R  e.  RR  /\  P  e.  RR+ )  /\  ( 0  <_  R  /\  R  <  P ) )  ->  ( R  mod  P )  =  R )
6557, 58, 59, 63, 64syl22anc 1183 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( R  mod  P )  =  R )
6665adantr 451 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  ( R  mod  P )  =  R )
6756, 66eqtrd 2328 . . . . . . . 8  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  =  R )
6867oveq1d 5889 . . . . . . 7  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  =  ( R  /  2 ) )
6968, 9eqeltrd 2370 . . . . . 6  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  ( R  /  2 )  e.  ZZ )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  e.  ZZ )
7029nncnd 9778 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  CC )
7170mulid2d 8869 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
1  x.  P )  =  P )
7271oveq2d 5890 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u R  +  ( 1  x.  P ) )  =  ( -u R  +  P ) )
7357renegcld 9226 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -u R  e.  RR )
7473recnd 8877 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -u R  e.  CC )
7570, 74addcomd 9030 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  +  -u R )  =  ( -u R  +  P ) )
7670, 36negsubd 9179 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  +  -u R )  =  ( P  -  R ) )
7772, 75, 763eqtr2d 2334 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u R  +  ( 1  x.  P ) )  =  ( P  -  R ) )
7877oveq1d 5889 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u R  +  ( 1  x.  P ) )  mod  P )  =  ( ( P  -  R )  mod 
P ) )
79 1z 10069 . . . . . . . . . . . . . 14  |-  1  e.  ZZ
8079a1i 10 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  1  e.  ZZ )
81 modcyc 11015 . . . . . . . . . . . . 13  |-  ( (
-u R  e.  RR  /\  P  e.  RR+  /\  1  e.  ZZ )  ->  (
( -u R  +  ( 1  x.  P ) )  mod  P )  =  ( -u R  mod  P ) )
8273, 58, 80, 81syl3anc 1182 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u R  +  ( 1  x.  P ) )  mod  P )  =  ( -u R  mod  P ) )
8329nnred 9777 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  RR )
8483, 57resubcld 9227 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  R )  e.  RR )
8557, 83, 63ltled 8983 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  <_  P )
8683, 57subge0d 9378 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
0  <_  ( P  -  R )  <->  R  <_  P ) )
8785, 86mpbird 223 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  0  <_  ( P  -  R
) )
88 2nn 9893 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  2  e.  NN
89 elfznn 10835 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  e.  NN )
9089adantl 452 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  e.  NN )
91 nnmulcl 9785 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( 2  e.  NN  /\  x  e.  NN )  ->  ( 2  x.  x
)  e.  NN )
9288, 90, 91sylancr 644 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  NN )
93 elfzle2 10816 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( x  e.  ( 1 ... ( ( P  - 
1 )  /  2
) )  ->  x  <_  ( ( P  - 
1 )  /  2
) )
9493adantl 452 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  <_  ( ( P  - 
1 )  /  2
) )
9590nnred 9777 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  x  e.  RR )
96 prmuz2 12792 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( P  e.  Prime  ->  P  e.  ( ZZ>= `  2 )
)
97 uz2m1nn 10308 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( P  e.  ( ZZ>= `  2
)  ->  ( P  -  1 )  e.  NN )
9827, 96, 973syl 18 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  NN )
9998nnred 9777 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  RR )
100 2re 9831 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  2  e.  RR
101100a1i 10 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  e.  RR )
102 2pos 9844 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  0  <  2
103102a1i 10 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  0  <  2 )
104 lemuldiv2 9652 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( x  e.  RR  /\  ( P  -  1
)  e.  RR  /\  ( 2  e.  RR  /\  0  <  2 ) )  ->  ( (
2  x.  x )  <_  ( P  - 
1 )  <->  x  <_  ( ( P  -  1 )  /  2 ) ) )
10595, 99, 101, 103, 104syl112anc 1186 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( 2  x.  x
)  <_  ( P  -  1 )  <->  x  <_  ( ( P  -  1 )  /  2 ) ) )
10694, 105mpbird 223 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  <_  ( P  - 
1 ) )
107 prmz 12778 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( P  e.  Prime  ->  P  e.  ZZ )
10827, 107syl 15 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  e.  ZZ )
109 peano2zm 10078 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( P  e.  ZZ  ->  ( P  -  1 )  e.  ZZ )
110108, 109syl 15 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  ZZ )
111 fznn 10868 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( P  -  1 )  e.  ZZ  ->  (
( 2  x.  x
)  e.  ( 1 ... ( P  - 
1 ) )  <->  ( (
2  x.  x )  e.  NN  /\  (
2  x.  x )  <_  ( P  - 
1 ) ) ) )
112110, 111syl 15 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( 2  x.  x
)  e.  ( 1 ... ( P  - 
1 ) )  <->  ( (
2  x.  x )  e.  NN  /\  (
2  x.  x )  <_  ( P  - 
1 ) ) ) )
11392, 106, 112mpbir2and 888 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  x.  x )  e.  ( 1 ... ( P  -  1 ) ) )
114 fzm1ndvds 12596 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( P  e.  NN  /\  ( 2  x.  x
)  e.  ( 1 ... ( P  - 
1 ) ) )  ->  -.  P  ||  (
2  x.  x ) )
11529, 113, 114syl2anc 642 . . . . . . . . . . . . . . . . . . . . 21  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  ||  ( 2  x.  x ) )
116 lgseisen.3 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ph  ->  P  =/=  Q )
117116adantr 451 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  P  =/=  Q )
118 prmrp 12796 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( P  e.  Prime  /\  Q  e.  Prime )  ->  (
( P  gcd  Q
)  =  1  <->  P  =/=  Q ) )
11927, 16, 118syl2anc 642 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  gcd  Q
)  =  1  <->  P  =/=  Q ) )
120117, 119mpbird 223 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  gcd  Q )  =  1 )
121 coprmdvds 12797 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( P  e.  ZZ  /\  Q  e.  ZZ  /\  (
2  x.  x )  e.  ZZ )  -> 
( ( P  ||  ( Q  x.  (
2  x.  x ) )  /\  ( P  gcd  Q )  =  1 )  ->  P  ||  ( 2  x.  x
) ) )
122108, 18, 22, 121syl3anc 1182 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  ||  ( Q  x.  ( 2  x.  x ) )  /\  ( P  gcd  Q )  =  1 )  ->  P  ||  (
2  x.  x ) ) )
123120, 122mpan2d 655 . . . . . . . . . . . . . . . . . . . . 21  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  ||  ( Q  x.  ( 2  x.  x
) )  ->  P  ||  ( 2  x.  x
) ) )
124115, 123mtod 168 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  ||  ( Q  x.  ( 2  x.  x
) ) )
125 dvdsval3 12551 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( P  e.  NN  /\  ( Q  x.  (
2  x.  x ) )  e.  ZZ )  ->  ( P  ||  ( Q  x.  (
2  x.  x ) )  <->  ( ( Q  x.  ( 2  x.  x ) )  mod 
P )  =  0 ) )
12629, 23, 125syl2anc 642 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  ||  ( Q  x.  ( 2  x.  x
) )  <->  ( ( Q  x.  ( 2  x.  x ) )  mod  P )  =  0 ) )
127124, 126mtbid 291 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  ( ( Q  x.  ( 2  x.  x
) )  mod  P
)  =  0 )
12812eqeq1i 2303 . . . . . . . . . . . . . . . . . . 19  |-  ( R  =  0  <->  ( ( Q  x.  ( 2  x.  x ) )  mod  P )  =  0 )
129127, 128sylnibr 296 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  R  =  0 )
13098nnnn0d 10034 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  NN0 )
131 nn0uz 10278 . . . . . . . . . . . . . . . . . . . . . 22  |-  NN0  =  ( ZZ>= `  0 )
132130, 131syl6eleq 2386 . . . . . . . . . . . . . . . . . . . . 21  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  ( ZZ>= `  0
) )
133 elfzp12 10877 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( P  -  1 )  e.  ( ZZ>= `  0
)  ->  ( R  e.  ( 0 ... ( P  -  1 ) )  <->  ( R  =  0  \/  R  e.  ( ( 0  +  1 ) ... ( P  -  1 ) ) ) ) )
134132, 133syl 15 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( R  e.  ( 0 ... ( P  - 
1 ) )  <->  ( R  =  0  \/  R  e.  ( ( 0  +  1 ) ... ( P  -  1 ) ) ) ) )
13532, 134mpbid 201 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( R  =  0  \/  R  e.  ( (
0  +  1 ) ... ( P  - 
1 ) ) ) )
136135ord 366 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -.  R  =  0  ->  R  e.  ( ( 0  +  1 ) ... ( P  - 
1 ) ) ) )
137129, 136mpd 14 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  ( ( 0  +  1 ) ... ( P  -  1 ) ) )
138 1e0p1 10168 . . . . . . . . . . . . . . . . . 18  |-  1  =  ( 0  +  1 )
139138oveq1i 5884 . . . . . . . . . . . . . . . . 17  |-  ( 1 ... ( P  - 
1 ) )  =  ( ( 0  +  1 ) ... ( P  -  1 ) )
140137, 139syl6eleqr 2387 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  ( 1 ... ( P  -  1 ) ) )
141 elfznn 10835 . . . . . . . . . . . . . . . 16  |-  ( R  e.  ( 1 ... ( P  -  1 ) )  ->  R  e.  NN )
142140, 141syl 15 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  NN )
143142nnrpd 10405 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  R  e.  RR+ )
14483, 143ltsubrpd 10434 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  R )  <  P )
145 modid 11009 . . . . . . . . . . . . 13  |-  ( ( ( ( P  -  R )  e.  RR  /\  P  e.  RR+ )  /\  ( 0  <_  ( P  -  R )  /\  ( P  -  R
)  <  P )
)  ->  ( ( P  -  R )  mod  P )  =  ( P  -  R ) )
14684, 58, 87, 144, 145syl22anc 1183 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  -  R
)  mod  P )  =  ( P  -  R ) )
14778, 82, 1463eqtr3d 2336 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u R  mod  P )  =  ( P  -  R ) )
148147adantr 451 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( -u R  mod  P
)  =  ( P  -  R ) )
1493a1i 10 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
1  e.  CC )
150142adantr 451 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  ->  R  e.  NN )
1517a1i 10 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  e.  ZZ )
15240a1i 10 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  2  =/=  0 )
15335peano2zd 10136 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( R  +  1 )  e.  ZZ )
154 dvdsval2 12550 . . . . . . . . . . . . . . . . . 18  |-  ( ( 2  e.  ZZ  /\  2  =/=  0  /\  ( R  +  1 )  e.  ZZ )  -> 
( 2  ||  ( R  +  1 )  <-> 
( ( R  + 
1 )  /  2
)  e.  ZZ ) )
155151, 152, 153, 154syl3anc 1182 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
2  ||  ( R  +  1 )  <->  ( ( R  +  1 )  /  2 )  e.  ZZ ) )
156155biimpar 471 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
2  ||  ( R  +  1 ) )
15735adantr 451 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  ->  R  e.  ZZ )
15888a1i 10 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
2  e.  NN )
159 1lt2 9902 . . . . . . . . . . . . . . . . . 18  |-  1  <  2
160159a1i 10 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
1  <  2 )
161 ndvdsp1 12624 . . . . . . . . . . . . . . . . 17  |-  ( ( R  e.  ZZ  /\  2  e.  NN  /\  1  <  2 )  ->  (
2  ||  R  ->  -.  2  ||  ( R  +  1 ) ) )
162157, 158, 160, 161syl3anc 1182 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( 2  ||  R  ->  -.  2  ||  ( R  +  1 ) ) )
163156, 162mt2d 109 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  ->  -.  2  ||  R )
164 oexpneg 12606 . . . . . . . . . . . . . . 15  |-  ( ( 1  e.  CC  /\  R  e.  NN  /\  -.  2  ||  R )  -> 
( -u 1 ^ R
)  =  -u (
1 ^ R ) )
165149, 150, 163, 164syl3anc 1182 . . . . . . . . . . . . . 14  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( -u 1 ^ R
)  =  -u (
1 ^ R ) )
166 1exp 11147 . . . . . . . . . . . . . . . 16  |-  ( R  e.  ZZ  ->  (
1 ^ R )  =  1 )
167157, 166syl 15 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( 1 ^ R
)  =  1 )
168167negeqd 9062 . . . . . . . . . . . . . 14  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  ->  -u ( 1 ^ R
)  =  -u 1
)
169165, 168eqtrd 2328 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( -u 1 ^ R
)  =  -u 1
)
170169oveq1d 5889 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( -u 1 ^ R )  x.  R
)  =  ( -u
1  x.  R ) )
17136adantr 451 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  ->  R  e.  CC )
172171mulm1d 9247 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( -u 1  x.  R
)  =  -u R
)
173170, 172eqtrd 2328 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( -u 1 ^ R )  x.  R
)  =  -u R
)
174173oveq1d 5889 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  =  (
-u R  mod  P
) )
17570adantr 451 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  ->  P  e.  CC )
176175, 171, 149pnpcan2d 9211 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( P  + 
1 )  -  ( R  +  1 ) )  =  ( P  -  R ) )
177148, 174, 1763eqtr4d 2338 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  =  ( ( P  +  1 )  -  ( R  +  1 ) ) )
178177oveq1d 5889 . . . . . . . 8  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 )  =  ( ( ( P  + 
1 )  -  ( R  +  1 ) )  /  2 ) )
179 peano2cn 9000 . . . . . . . . . 10  |-  ( P  e.  CC  ->  ( P  +  1 )  e.  CC )
180175, 179syl 15 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( P  +  1 )  e.  CC )
181 peano2cn 9000 . . . . . . . . . 10  |-  ( R  e.  CC  ->  ( R  +  1 )  e.  CC )
182171, 181syl 15 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( R  +  1 )  e.  CC )
18338a1i 10 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
2  e.  CC )
18440a1i 10 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
2  =/=  0 )
185180, 182, 183, 184divsubdird 9591 . . . . . . . 8  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( P  +  1 )  -  ( R  +  1
) )  /  2
)  =  ( ( ( P  +  1 )  /  2 )  -  ( ( R  +  1 )  / 
2 ) ) )
186178, 185eqtrd 2328 . . . . . . 7  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 )  =  ( ( ( P  + 
1 )  /  2
)  -  ( ( R  +  1 )  /  2 ) ) )
187175, 149, 183subadd23d 9195 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( P  - 
1 )  +  2 )  =  ( P  +  ( 2  -  1 ) ) )
188 1p1e2 9856 . . . . . . . . . . . . . 14  |-  ( 1  +  1 )  =  2
18938, 3, 3, 188subaddrii 9151 . . . . . . . . . . . . 13  |-  ( 2  -  1 )  =  1
190189oveq2i 5885 . . . . . . . . . . . 12  |-  ( P  +  ( 2  -  1 ) )  =  ( P  +  1 )
191187, 190syl6req 2345 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( P  +  1 )  =  ( ( P  -  1 )  +  2 ) )
192191oveq1d 5889 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( P  + 
1 )  /  2
)  =  ( ( ( P  -  1 )  +  2 )  /  2 ) )
19398nncnd 9778 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  -  1 )  e.  CC )
194193adantr 451 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( P  -  1 )  e.  CC )
195194, 183, 183, 184divdird 9590 . . . . . . . . . . 11  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( P  -  1 )  +  2 )  /  2
)  =  ( ( ( P  -  1 )  /  2 )  +  ( 2  / 
2 ) ) )
19638, 40dividi 9509 . . . . . . . . . . . 12  |-  ( 2  /  2 )  =  1
197196oveq2i 5885 . . . . . . . . . . 11  |-  ( ( ( P  -  1 )  /  2 )  +  ( 2  / 
2 ) )  =  ( ( ( P  -  1 )  / 
2 )  +  1 )
198195, 197syl6eq 2344 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( P  -  1 )  +  2 )  /  2
)  =  ( ( ( P  -  1 )  /  2 )  +  1 ) )
199192, 198eqtrd 2328 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( P  + 
1 )  /  2
)  =  ( ( ( P  -  1 )  /  2 )  +  1 ) )
200 oddprm 12884 . . . . . . . . . . . . 13  |-  ( P  e.  ( Prime  \  {
2 } )  -> 
( ( P  - 
1 )  /  2
)  e.  NN )
20125, 200syl 15 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  -  1 )  /  2 )  e.  NN )
202201nnzd 10132 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( P  -  1 )  /  2 )  e.  ZZ )
203202adantr 451 . . . . . . . . . 10  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( P  - 
1 )  /  2
)  e.  ZZ )
204203peano2zd 10136 . . . . . . . . 9  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( P  -  1 )  / 
2 )  +  1 )  e.  ZZ )
205199, 204eqeltrd 2370 . . . . . . . 8  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( P  + 
1 )  /  2
)  e.  ZZ )
206 simpr 447 . . . . . . . 8  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( R  + 
1 )  /  2
)  e.  ZZ )
207205, 206zsubcld 10138 . . . . . . 7  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( P  +  1 )  / 
2 )  -  (
( R  +  1 )  /  2 ) )  e.  ZZ )
208186, 207eqeltrd 2370 . . . . . 6  |-  ( ( ( ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  /\  (
( R  +  1 )  /  2 )  e.  ZZ )  -> 
( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 )  e.  ZZ )
209 zeo 10113 . . . . . . 7  |-  ( R  e.  ZZ  ->  (
( R  /  2
)  e.  ZZ  \/  ( ( R  + 
1 )  /  2
)  e.  ZZ ) )
21035, 209syl 15 . . . . . 6  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( R  /  2
)  e.  ZZ  \/  ( ( R  + 
1 )  /  2
)  e.  ZZ ) )
21169, 208, 210mpjaodan 761 . . . . 5  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  e.  ZZ )
212 m1expcl 11142 . . . . . . . . . . 11  |-  ( R  e.  ZZ  ->  ( -u 1 ^ R )  e.  ZZ )
21335, 212syl 15 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u 1 ^ R )  e.  ZZ )
214213, 35zmulcld 10139 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  R )  e.  ZZ )
215 zmodfz 11007 . . . . . . . . 9  |-  ( ( ( ( -u 1 ^ R )  x.  R
)  e.  ZZ  /\  P  e.  NN )  ->  ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  e.  ( 0 ... ( P  -  1 ) ) )
216214, 29, 215syl2anc 642 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  ( 0 ... ( P  -  1 ) ) )
217 elfznn0 10838 . . . . . . . 8  |-  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  ( 0 ... ( P  -  1 ) )  ->  ( (
( -u 1 ^ R
)  x.  R )  mod  P )  e. 
NN0 )
218216, 217syl 15 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  NN0 )
219218nn0red 10035 . . . . . 6  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  RR )
220 fzm1ndvds 12596 . . . . . . . . . . . 12  |-  ( ( P  e.  NN  /\  R  e.  ( 1 ... ( P  - 
1 ) ) )  ->  -.  P  ||  R
)
22129, 140, 220syl2anc 642 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  ||  R )
222 divneg2 9500 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( 1  e.  CC  /\  1  e.  CC  /\  1  =/=  0 )  ->  -u (
1  /  1 )  =  ( 1  /  -u 1 ) )
2233, 3, 4, 222mp3an 1277 . . . . . . . . . . . . . . . . . . 19  |-  -u (
1  /  1 )  =  ( 1  /  -u 1 )
2243, 4dividi 9509 . . . . . . . . . . . . . . . . . . . 20  |-  ( 1  /  1 )  =  1
225224negeqi 9061 . . . . . . . . . . . . . . . . . . 19  |-  -u (
1  /  1 )  =  -u 1
226223, 225eqtr3i 2318 . . . . . . . . . . . . . . . . . 18  |-  ( 1  /  -u 1 )  = 
-u 1
227226oveq1i 5884 . . . . . . . . . . . . . . . . 17  |-  ( ( 1  /  -u 1
) ^ R )  =  ( -u 1 ^ R )
2281a1i 10 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -u 1  e.  CC )
2295a1i 10 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -u 1  =/=  0 )
230228, 229, 35exprecd 11269 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( 1  /  -u 1
) ^ R )  =  ( 1  / 
( -u 1 ^ R
) ) )
231227, 230syl5eqr 2342 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u 1 ^ R )  =  ( 1  / 
( -u 1 ^ R
) ) )
232231oveq2d 5890 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  ( -u
1 ^ R ) )  =  ( (
-u 1 ^ R
)  x.  ( 1  /  ( -u 1 ^ R ) ) ) )
233213zcnd 10134 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u 1 ^ R )  e.  CC )
234228, 229, 35expne0d 11267 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -u 1 ^ R )  =/=  0 )
235233, 234recidd 9547 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  ( 1  /  ( -u 1 ^ R ) ) )  =  1 )
236232, 235eqtrd 2328 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  ( -u
1 ^ R ) )  =  1 )
237236oveq1d 5889 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  ( -u 1 ^ R ) )  x.  R )  =  ( 1  x.  R ) )
238233, 233, 36mulassd 8874 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  ( -u 1 ^ R ) )  x.  R )  =  ( ( -u
1 ^ R )  x.  ( ( -u
1 ^ R )  x.  R ) ) )
23936mulid2d 8869 . . . . . . . . . . . . 13  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
1  x.  R )  =  R )
240237, 238, 2393eqtr3d 2336 . . . . . . . . . . . 12  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( -u 1 ^ R
)  x.  ( (
-u 1 ^ R
)  x.  R ) )  =  R )
241240breq2d 4051 . . . . . . . . . . 11  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  ||  ( ( -u
1 ^ R )  x.  ( ( -u
1 ^ R )  x.  R ) )  <-> 
P  ||  R )
)
242221, 241mtbird 292 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  ||  ( ( -u
1 ^ R )  x.  ( ( -u
1 ^ R )  x.  R ) ) )
243 dvdsmultr2 12580 . . . . . . . . . . 11  |-  ( ( P  e.  ZZ  /\  ( -u 1 ^ R
)  e.  ZZ  /\  ( ( -u 1 ^ R )  x.  R
)  e.  ZZ )  ->  ( P  ||  ( ( -u 1 ^ R )  x.  R
)  ->  P  ||  (
( -u 1 ^ R
)  x.  ( (
-u 1 ^ R
)  x.  R ) ) ) )
244108, 213, 214, 243syl3anc 1182 . . . . . . . . . 10  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  ||  ( ( -u
1 ^ R )  x.  R )  ->  P  ||  ( ( -u
1 ^ R )  x.  ( ( -u
1 ^ R )  x.  R ) ) ) )
245242, 244mtod 168 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  P  ||  ( ( -u
1 ^ R )  x.  R ) )
246 dvdsval3 12551 . . . . . . . . . 10  |-  ( ( P  e.  NN  /\  ( ( -u 1 ^ R )  x.  R
)  e.  ZZ )  ->  ( P  ||  ( ( -u 1 ^ R )  x.  R
)  <->  ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  =  0 ) )
24729, 214, 246syl2anc 642 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( P  ||  ( ( -u
1 ^ R )  x.  R )  <->  ( (
( -u 1 ^ R
)  x.  R )  mod  P )  =  0 ) )
248245, 247mtbid 291 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  -.  ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  =  0 )
249 elnn0 9983 . . . . . . . . . 10  |-  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  NN0  <->  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  NN  \/  ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  =  0 ) )
250218, 249sylib 188 . . . . . . . . 9  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  e.  NN  \/  ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  =  0 ) )
251250ord 366 . . . . . . . 8  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  ( -.  ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  e.  NN  ->  ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  =  0 ) )
252248, 251mt3d 117 . . . . . . 7  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  NN )
253252nngt0d 9805 . . . . . 6  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  0  <  ( ( ( -u
1 ^ R )  x.  R )  mod 
P ) )
254219, 101, 253, 103divgt0d 9708 . . . . 5  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  0  <  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) )
255 elnnz 10050 . . . . 5  |-  ( ( ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  e.  NN  <->  ( (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  e.  ZZ  /\  0  <  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 ) ) )
256211, 254, 255sylanbrc 645 . . . 4  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  e.  NN )
257256nnge1d 9804 . . 3  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  1  <_  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) )
258 elfzle2 10816 . . . . 5  |-  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  e.  ( 0 ... ( P  -  1 ) )  ->  ( (
( -u 1 ^ R
)  x.  R )  mod  P )  <_ 
( P  -  1 ) )
259216, 258syl 15 . . . 4  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( -u 1 ^ R )  x.  R
)  mod  P )  <_  ( P  -  1 ) )
260 lediv1 9637 . . . . 5  |-  ( ( ( ( ( -u
1 ^ R )  x.  R )  mod 
P )  e.  RR  /\  ( P  -  1 )  e.  RR  /\  ( 2  e.  RR  /\  0  <  2 ) )  ->  ( (
( ( -u 1 ^ R )  x.  R
)  mod  P )  <_  ( P  -  1 )  <->  ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 )  <_ 
( ( P  - 
1 )  /  2
) ) )
261219, 99, 101, 103, 260syl112anc 1186 . . . 4  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  <_  ( P  -  1 )  <-> 
( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 )  <_  (
( P  -  1 )  /  2 ) ) )
262259, 261mpbid 201 . . 3  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  <_  ( ( P  -  1 )  /  2 ) )
263 elfz 10804 . . . 4  |-  ( ( ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 )  e.  ZZ  /\  1  e.  ZZ  /\  ( ( P  - 
1 )  /  2
)  e.  ZZ )  ->  ( ( ( ( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 )  e.  ( 1 ... (
( P  -  1 )  /  2 ) )  <->  ( 1  <_ 
( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 )  /\  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  <_  ( ( P  -  1 )  /  2 ) ) ) )
264211, 80, 202, 263syl3anc 1182 . . 3  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 )  e.  ( 1 ... ( ( P  -  1 )  /  2 ) )  <-> 
( 1  <_  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  /\  ( (
( ( -u 1 ^ R )  x.  R
)  mod  P )  /  2 )  <_ 
( ( P  - 
1 )  /  2
) ) ) )
265257, 262, 264mpbir2and 888 . 2  |-  ( (
ph  /\  x  e.  ( 1 ... (
( P  -  1 )  /  2 ) ) )  ->  (
( ( ( -u
1 ^ R )  x.  R )  mod 
P )  /  2
)  e.  ( 1 ... ( ( P  -  1 )  / 
2 ) ) )
266 lgseisen.5 . 2  |-  M  =  ( x  e.  ( 1 ... ( ( P  -  1 )  /  2 ) ) 
|->  ( ( ( (
-u 1 ^ R
)  x.  R )  mod  P )  / 
2 ) )
267265, 266fmptd 5700 1  |-  ( ph  ->  M : ( 1 ... ( ( P  -  1 )  / 
2 ) ) --> ( 1 ... ( ( P  -  1 )  /  2 ) ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 176    \/ wo 357    /\ wa 358    = wceq 1632    e. wcel 1696    =/= wne 2459    \ cdif 3162   {csn 3653   class class class wbr 4039    e. cmpt 4093   -->wf 5267   ` cfv 5271  (class class class)co 5874   CCcc 8751   RRcr 8752   0cc0 8753   1c1 8754    + caddc 8756    x. cmul 8758    < clt 8883    <_ cle 8884    - cmin 9053   -ucneg 9054    / cdiv 9439   NNcn 9762   2c2 9811   NN0cn0 9981   ZZcz 10040   ZZ>=cuz 10246   RR+crp 10370   ...cfz 10798    mod cmo 10989   ^cexp 11120    || cdivides 12547    gcd cgcd 12701   Primecprime 12774
This theorem is referenced by:  lgseisenlem2  20605  lgseisenlem3  20606
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1536  ax-5 1547  ax-17 1606  ax-9 1644  ax-8 1661  ax-13 1698  ax-14 1700  ax-6 1715  ax-7 1720  ax-11 1727  ax-12 1878  ax-ext 2277  ax-sep 4157  ax-nul 4165  ax-pow 4204  ax-pr 4230  ax-un 4528  ax-cnex 8809  ax-resscn 8810  ax-1cn 8811  ax-icn 8812  ax-addcl 8813  ax-addrcl 8814  ax-mulcl 8815  ax-mulrcl 8816  ax-mulcom 8817  ax-addass 8818  ax-mulass 8819  ax-distr 8820  ax-i2m1 8821  ax-1ne0 8822  ax-1rid 8823  ax-rnegex 8824  ax-rrecex 8825  ax-cnre 8826  ax-pre-lttri 8827  ax-pre-lttrn 8828  ax-pre-ltadd 8829  ax-pre-mulgt0 8830  ax-pre-sup 8831
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-tru 1310  df-ex 1532  df-nf 1535  df-sb 1639  df-eu 2160  df-mo 2161  df-clab 2283  df-cleq 2289  df-clel 2292  df-nfc 2421  df-ne 2461  df-nel 2462  df-ral 2561  df-rex 2562  df-reu 2563  df-rmo 2564  df-rab 2565  df-v 2803  df-sbc 3005  df-csb 3095  df-dif 3168  df-un 3170  df-in 3172  df-ss 3179  df-pss 3181  df-nul 3469  df-if 3579  df-pw 3640  df-sn 3659  df-pr 3660  df-tp 3661  df-op 3662  df-uni 3844  df-int 3879  df-iun 3923  df-br 4040  df-opab 4094  df-mpt 4095  df-tr 4130  df-eprel 4321  df-id 4325  df-po 4330  df-so 4331  df-fr 4368  df-we 4370  df-ord 4411  df-on 4412  df-lim 4413  df-suc 4414  df-om 4673  df-xp 4711  df-rel 4712  df-cnv 4713  df-co 4714  df-dm 4715  df-rn 4716  df-res 4717  df-ima 4718  df-iota 5235  df-fun 5273  df-fn 5274  df-f 5275  df-f1 5276  df-fo 5277  df-f1o 5278  df-fv 5279  df-ov 5877  df-oprab 5878  df-mpt2 5879  df-1st 6138  df-2nd 6139  df-riota 6320  df-recs 6404  df-rdg 6439  df-1o 6495  df-2o 6496  df-oadd 6499  df-er 6676  df-en 6880  df-dom 6881  df-sdom 6882  df-fin 6883  df-sup 7210  df-pnf 8885  df-mnf 8886  df-xr 8887  df-ltxr 8888  df-le 8889  df-sub 9055  df-neg 9056  df-div 9440  df-nn 9763  df-2 9820  df-3 9821  df-n0 9982  df-z 10041  df-uz 10247  df-rp 10371  df-fz 10799  df-fl 10941  df-mod 10990  df-seq 11063  df-exp 11121  df-cj 11600  df-re 11601  df-im 11602  df-sqr 11736  df-abs 11737  df-dvds 12548  df-gcd 12702  df-prm 12775
  Copyright terms: Public domain W3C validator