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

Theorem lgsquadlem1 15598
Description: Lemma for lgsquad 15601. Count the members of  S with odd coordinates. (Contributed by Mario Carneiro, 19-Jun-2015.)
Hypotheses
Ref Expression
lgseisen.1  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
lgseisen.2  |-  ( ph  ->  Q  e.  ( Prime  \  { 2 } ) )
lgseisen.3  |-  ( ph  ->  P  =/=  Q )
lgsquad.4  |-  M  =  ( ( P  - 
1 )  /  2
)
lgsquad.5  |-  N  =  ( ( Q  - 
1 )  /  2
)
lgsquad.6  |-  S  =  { <. x ,  y
>.  |  ( (
x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N ) )  /\  ( y  x.  P )  <  (
x  x.  Q ) ) }
Assertion
Ref Expression
lgsquadlem1  |-  ( ph  ->  ( -u 1 ^
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) ) )  =  (
-u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) )
Distinct variable groups:    x, u, y, z, P    ph, u, x, y, z    u, M, y, z    u, N, x, y, z    u, Q, x, y, z    u, S, x, z    x, M   
y, S

Proof of Theorem lgsquadlem1
Dummy variables  n  v are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 neg1cn 9148 . . . 4  |-  -u 1  e.  CC
21a1i 9 . . 3  |-  ( ph  -> 
-u 1  e.  CC )
3 neg1ap0 9152 . . . 4  |-  -u 1 #  0
43a1i 9 . . 3  |-  ( ph  -> 
-u 1 #  0 )
5 lgseisen.1 . . . . . . . . . 10  |-  ( ph  ->  P  e.  ( Prime  \  { 2 } ) )
6 lgsquad.4 . . . . . . . . . 10  |-  M  =  ( ( P  - 
1 )  /  2
)
75, 6gausslemma2dlem0b 15571 . . . . . . . . 9  |-  ( ph  ->  M  e.  NN )
87nnzd 9501 . . . . . . . 8  |-  ( ph  ->  M  e.  ZZ )
9 2nn 9205 . . . . . . . 8  |-  2  e.  NN
10 znq 9752 . . . . . . . 8  |-  ( ( M  e.  ZZ  /\  2  e.  NN )  ->  ( M  /  2
)  e.  QQ )
118, 9, 10sylancl 413 . . . . . . 7  |-  ( ph  ->  ( M  /  2
)  e.  QQ )
1211flqcld 10427 . . . . . 6  |-  ( ph  ->  ( |_ `  ( M  /  2 ) )  e.  ZZ )
1312peano2zd 9505 . . . . 5  |-  ( ph  ->  ( ( |_ `  ( M  /  2
) )  +  1 )  e.  ZZ )
1413, 8fzfigd 10583 . . . 4  |-  ( ph  ->  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  e.  Fin )
15 lgseisen.2 . . . . . . . . 9  |-  ( ph  ->  Q  e.  ( Prime  \  { 2 } ) )
1615gausslemma2dlem0a 15570 . . . . . . . 8  |-  ( ph  ->  Q  e.  NN )
1716nnzd 9501 . . . . . . 7  |-  ( ph  ->  Q  e.  ZZ )
185gausslemma2dlem0a 15570 . . . . . . . 8  |-  ( ph  ->  P  e.  NN )
1918adantr 276 . . . . . . 7  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  NN )
20 znq 9752 . . . . . . 7  |-  ( ( Q  e.  ZZ  /\  P  e.  NN )  ->  ( Q  /  P
)  e.  QQ )
2117, 19, 20syl2an2r 595 . . . . . 6  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  P )  e.  QQ )
22 2z 9407 . . . . . . . 8  |-  2  e.  ZZ
23 elfzelz 10154 . . . . . . . . 9  |-  ( u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M )  ->  u  e.  ZZ )
2423adantl 277 . . . . . . . 8  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  u  e.  ZZ )
25 zmulcl 9433 . . . . . . . 8  |-  ( ( 2  e.  ZZ  /\  u  e.  ZZ )  ->  ( 2  x.  u
)  e.  ZZ )
2622, 24, 25sylancr 414 . . . . . . 7  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  ZZ )
27 zq 9754 . . . . . . 7  |-  ( ( 2  x.  u )  e.  ZZ  ->  (
2  x.  u )  e.  QQ )
2826, 27syl 14 . . . . . 6  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  QQ )
29 qmulcl 9765 . . . . . 6  |-  ( ( ( Q  /  P
)  e.  QQ  /\  ( 2  x.  u
)  e.  QQ )  ->  ( ( Q  /  P )  x.  ( 2  x.  u
) )  e.  QQ )
3021, 28, 29syl2anc 411 . . . . 5  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  ( 2  x.  u ) )  e.  QQ )
3130flqcld 10427 . . . 4  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  e.  ZZ )
3214, 31fsumzcl 11757 . . 3  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  e.  ZZ )
332, 4, 32expclzapd 10830 . 2  |-  ( ph  ->  ( -u 1 ^
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) ) )  e.  CC )
34 lgseisen.3 . . . . 5  |-  ( ph  ->  P  =/=  Q )
35 lgsquad.5 . . . . 5  |-  N  =  ( ( Q  - 
1 )  /  2
)
36 lgsquad.6 . . . . 5  |-  S  =  { <. x ,  y
>.  |  ( (
x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N ) )  /\  ( y  x.  P )  <  (
x  x.  Q ) ) }
375, 15, 34, 6, 35, 36lgsquadlemofi 15597 . . . 4  |-  ( ph  ->  { z  e.  S  |  -.  2  ||  ( 1st `  z ) }  e.  Fin )
38 hashcl 10933 . . . 4  |-  ( { z  e.  S  |  -.  2  ||  ( 1st `  z ) }  e.  Fin  ->  ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } )  e. 
NN0 )
3937, 38syl 14 . . 3  |-  ( ph  ->  ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } )  e. 
NN0 )
40 expcl 10709 . . 3  |-  ( (
-u 1  e.  CC  /\  ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } )  e. 
NN0 )  ->  ( -u 1 ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )  e.  CC )
411, 39, 40sylancr 414 . 2  |-  ( ph  ->  ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) )  e.  CC )
4239nn0zd 9500 . . 3  |-  ( ph  ->  ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } )  e.  ZZ )
432, 4, 42expap0d 10831 . 2  |-  ( ph  ->  ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) ) #  0 )
4441, 43recidapd 8863 . . . 4  |-  ( ph  ->  ( ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) )  x.  ( 1  / 
( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) ) )  =  1 )
45 1div1e1 8784 . . . . . . . . 9  |-  ( 1  /  1 )  =  1
4645negeqi 8273 . . . . . . . 8  |-  -u (
1  /  1 )  =  -u 1
47 ax-1cn 8025 . . . . . . . . 9  |-  1  e.  CC
48 1ap0 8670 . . . . . . . . 9  |-  1 #  0
49 divneg2ap 8816 . . . . . . . . 9  |-  ( ( 1  e.  CC  /\  1  e.  CC  /\  1 #  0 )  ->  -u (
1  /  1 )  =  ( 1  /  -u 1 ) )
5047, 47, 48, 49mp3an 1350 . . . . . . . 8  |-  -u (
1  /  1 )  =  ( 1  /  -u 1 )
5146, 50eqtr3i 2229 . . . . . . 7  |-  -u 1  =  ( 1  /  -u 1 )
5251oveq1i 5961 . . . . . 6  |-  ( -u
1 ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )  =  ( ( 1  /  -u 1
) ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )
532, 4, 42exprecapd 10833 . . . . . 6  |-  ( ph  ->  ( ( 1  /  -u 1 ) ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )  =  ( 1  /  ( -u
1 ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) ) )
5452, 53eqtrid 2251 . . . . 5  |-  ( ph  ->  ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) )  =  ( 1  / 
( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) ) )
5554oveq2d 5967 . . . 4  |-  ( ph  ->  ( ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) )  x.  ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) ) )  =  ( (
-u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )  x.  (
1  /  ( -u
1 ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) ) ) )
565, 15, 34, 6, 35, 36lgsquadlemsfi 15596 . . . . . . . . . . . . 13  |-  ( ph  ->  S  e.  Fin )
5756adantr 276 . . . . . . . . . . . 12  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  S  e.  Fin )
58 opabssxp 4753 . . . . . . . . . . . . . . . . . 18  |-  { <. x ,  y >.  |  ( ( x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N ) )  /\  ( y  x.  P )  < 
( x  x.  Q
) ) }  C_  ( ( 1 ... M )  X.  (
1 ... N ) )
5936, 58eqsstri 3226 . . . . . . . . . . . . . . . . 17  |-  S  C_  ( ( 1 ... M )  X.  (
1 ... N ) )
6059sseli 3190 . . . . . . . . . . . . . . . 16  |-  ( z  e.  S  ->  z  e.  ( ( 1 ... M )  X.  (
1 ... N ) ) )
61 xp1st 6258 . . . . . . . . . . . . . . . 16  |-  ( z  e.  ( ( 1 ... M )  X.  ( 1 ... N
) )  ->  ( 1st `  z )  e.  ( 1 ... M
) )
6260, 61syl 14 . . . . . . . . . . . . . . 15  |-  ( z  e.  S  ->  ( 1st `  z )  e.  ( 1 ... M
) )
6362elfzelzd 10155 . . . . . . . . . . . . . 14  |-  ( z  e.  S  ->  ( 1st `  z )  e.  ZZ )
6419nnzd 9501 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  ZZ )
6564, 26zsubcld 9507 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  e.  ZZ )
66 zdceq 9455 . . . . . . . . . . . . . 14  |-  ( ( ( 1st `  z
)  e.  ZZ  /\  ( P  -  (
2  x.  u ) )  e.  ZZ )  -> DECID 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) )
6763, 65, 66syl2anr 290 . . . . . . . . . . . . 13  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  z  e.  S )  -> DECID  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) )
6867ralrimiva 2580 . . . . . . . . . . . 12  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  A. z  e.  S DECID  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) )
6957, 68ssfirab 7040 . . . . . . . . . . 11  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u
) ) }  e.  Fin )
70 fveqeq2 5592 . . . . . . . . . . . . . . . . . . . 20  |-  ( z  =  v  ->  (
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) )  <->  ( 1st `  v )  =  ( P  -  ( 2  x.  u ) ) ) )
7170elrab 2930 . . . . . . . . . . . . . . . . . . 19  |-  ( v  e.  { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u ) ) }  <->  ( v  e.  S  /\  ( 1st `  v )  =  ( P  -  ( 2  x.  u ) ) ) )
7271simprbi 275 . . . . . . . . . . . . . . . . . 18  |-  ( v  e.  { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u ) ) }  ->  ( 1st `  v )  =  ( P  -  ( 2  x.  u ) ) )
7372ad2antll 491 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  ( 1st `  v )  =  ( P  -  (
2  x.  u ) ) )
7473oveq2d 5967 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  ( P  -  ( 1st `  v ) )  =  ( P  -  ( P  -  ( 2  x.  u ) ) ) )
7519nncnd 9057 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  CC )
7675adantrr 479 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  P  e.  CC )
7726zcnd 9503 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  CC )
7877adantrr 479 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  (
2  x.  u )  e.  CC )
7976, 78nncand 8395 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  ( P  -  ( P  -  ( 2  x.  u ) ) )  =  ( 2  x.  u ) )
8074, 79eqtrd 2239 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  ( P  -  ( 1st `  v ) )  =  ( 2  x.  u
) )
8180oveq1d 5966 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  (
( P  -  ( 1st `  v ) )  /  2 )  =  ( ( 2  x.  u )  /  2
) )
8224zcnd 9503 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  u  e.  CC )
8382adantrr 479 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  u  e.  CC )
84 2cnd 9116 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  2  e.  CC )
85 2ap0 9136 . . . . . . . . . . . . . . . 16  |-  2 #  0
8685a1i 9 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  2 #  0 )
8783, 84, 86divcanap3d 8875 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  (
( 2  x.  u
)  /  2 )  =  u )
8881, 87eqtrd 2239 . . . . . . . . . . . . 13  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  (
( P  -  ( 1st `  v ) )  /  2 )  =  u )
8988ralrimivva 2589 . . . . . . . . . . . 12  |-  ( ph  ->  A. u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) A. v  e.  {
z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) }  ( ( P  -  ( 1st `  v ) )  /  2 )  =  u )
90 invdisj 4040 . . . . . . . . . . . 12  |-  ( A. u  e.  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) A. v  e.  { z  e.  S  |  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) }  ( ( P  -  ( 1st `  v ) )  /  2 )  =  u  -> Disj  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u ) ) } )
9189, 90syl 14 . . . . . . . . . . 11  |-  ( ph  -> Disj  u  e.  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u
) ) } )
9214, 69, 91hashiun 11833 . . . . . . . . . 10  |-  ( ph  ->  ( `  U_ u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u ) ) } )  =  sum_ u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) ( `  {
z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )
93 iunrab 3977 . . . . . . . . . . . 12  |-  U_ u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u ) ) }  =  { z  e.  S  |  E. u  e.  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) ( 1st `  z )  =  ( P  -  ( 2  x.  u ) ) }
94 eldifsni 3764 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( P  e.  ( Prime  \  {
2 } )  ->  P  =/=  2 )
955, 94syl 14 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  P  =/=  2 )
9695necomd 2463 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  2  =/=  P )
9796neneqd 2398 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  -.  2  =  P )
9897ad2antrr 488 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  -.  2  =  P )
99 uzid 9669 . . . . . . . . . . . . . . . . . . . . 21  |-  ( 2  e.  ZZ  ->  2  e.  ( ZZ>= `  2 )
)
10022, 99ax-mp 5 . . . . . . . . . . . . . . . . . . . 20  |-  2  e.  ( ZZ>= `  2 )
1015eldifad 3178 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  P  e.  Prime )
102101ad2antrr 488 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  Prime )
103 dvdsprm 12503 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( 2  e.  ( ZZ>= ` 
2 )  /\  P  e.  Prime )  ->  (
2  ||  P  <->  2  =  P ) )
104100, 102, 103sylancr 414 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  ||  P  <->  2  =  P ) )
10598, 104mtbird 675 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  -.  2  ||  P )
10618ad2antrr 488 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  NN )
107106nncnd 9057 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  CC )
10826adantlr 477 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  ZZ )
109108zcnd 9503 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  CC )
110107, 109npcand 8394 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  +  ( 2  x.  u ) )  =  P )
111110breq2d 4059 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  ||  ( ( P  -  ( 2  x.  u ) )  +  ( 2  x.  u ) )  <->  2  ||  P ) )
112105, 111mtbird 675 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  -.  2  ||  ( ( P  -  ( 2  x.  u ) )  +  ( 2  x.  u
) ) )
11323adantl 277 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  u  e.  ZZ )
114 dvdsmul1 12168 . . . . . . . . . . . . . . . . . . 19  |-  ( ( 2  e.  ZZ  /\  u  e.  ZZ )  ->  2  ||  ( 2  x.  u ) )
11522, 113, 114sylancr 414 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  2  ||  ( 2  x.  u
) )
11622a1i 9 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  2  e.  ZZ )
117106nnzd 9501 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  ZZ )
118117, 108zsubcld 9507 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  e.  ZZ )
119 dvds2add 12180 . . . . . . . . . . . . . . . . . . 19  |-  ( ( 2  e.  ZZ  /\  ( P  -  (
2  x.  u ) )  e.  ZZ  /\  ( 2  x.  u
)  e.  ZZ )  ->  ( ( 2 
||  ( P  -  ( 2  x.  u
) )  /\  2  ||  ( 2  x.  u
) )  ->  2  ||  ( ( P  -  ( 2  x.  u
) )  +  ( 2  x.  u ) ) ) )
120116, 118, 108, 119syl3anc 1250 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  ||  ( P  -  ( 2  x.  u ) )  /\  2  ||  (
2  x.  u ) )  ->  2  ||  ( ( P  -  ( 2  x.  u
) )  +  ( 2  x.  u ) ) ) )
121115, 120mpan2d 428 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  ||  ( P  -  ( 2  x.  u ) )  -> 
2  ||  ( ( P  -  ( 2  x.  u ) )  +  ( 2  x.  u ) ) ) )
122112, 121mtod 665 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  -.  2  ||  ( P  -  ( 2  x.  u
) ) )
123 breq2 4051 . . . . . . . . . . . . . . . . 17  |-  ( ( 1st `  z )  =  ( P  -  ( 2  x.  u
) )  ->  (
2  ||  ( 1st `  z )  <->  2  ||  ( P  -  (
2  x.  u ) ) ) )
124123notbid 669 . . . . . . . . . . . . . . . 16  |-  ( ( 1st `  z )  =  ( P  -  ( 2  x.  u
) )  ->  ( -.  2  ||  ( 1st `  z )  <->  -.  2  ||  ( P  -  (
2  x.  u ) ) ) )
125122, 124syl5ibrcom 157 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) )  ->  -.  2  ||  ( 1st `  z ) ) )
126125rexlimdva 2624 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  z  e.  S )  ->  ( E. u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) )  ->  -.  2  ||  ( 1st `  z ) ) )
127 simpr 110 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  z  e.  S )  ->  z  e.  S )
12859, 127sselid 3192 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  z  e.  S )  ->  z  e.  ( ( 1 ... M )  X.  (
1 ... N ) ) )
129128, 61syl 14 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  z  e.  S )  ->  ( 1st `  z )  e.  ( 1 ... M
) )
130 elfzelz 10154 . . . . . . . . . . . . . . . 16  |-  ( ( 1st `  z )  e.  ( 1 ... M )  ->  ( 1st `  z )  e.  ZZ )
131 odd2np1 12228 . . . . . . . . . . . . . . . 16  |-  ( ( 1st `  z )  e.  ZZ  ->  ( -.  2  ||  ( 1st `  z )  <->  E. n  e.  ZZ  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )
132129, 130, 1313syl 17 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  z  e.  S )  ->  ( -.  2  ||  ( 1st `  z )  <->  E. n  e.  ZZ  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )
13311ad2antrr 488 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  e.  QQ )
134133flqcld 10427 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( |_ `  ( M  /  2
) )  e.  ZZ )
135134peano2zd 9505 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( |_
`  ( M  / 
2 ) )  +  1 )  e.  ZZ )
1367ad2antrr 488 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  M  e.  NN )
137136nnzd 9501 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  M  e.  ZZ )
138 simprl 529 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  n  e.  ZZ )
139137, 138zsubcld 9507 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  -  n )  e.  ZZ )
140134zred 9502 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( |_ `  ( M  /  2
) )  e.  RR )
1417nnred 9056 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  M  e.  RR )
142141ad2antrr 488 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  M  e.  RR )
143142rehalfcld 9291 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  e.  RR )
144139zred 9502 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  -  n )  e.  RR )
145 flqle 10428 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( M  /  2 )  e.  QQ  ->  ( |_ `  ( M  / 
2 ) )  <_ 
( M  /  2
) )
146133, 145syl 14 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( |_ `  ( M  /  2
) )  <_  ( M  /  2 ) )
147 zre 9383 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( n  e.  ZZ  ->  n  e.  RR )
148147ad2antrl 490 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  n  e.  RR )
149 simprr 531 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) )
150129adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 1st `  z
)  e.  ( 1 ... M ) )
151149, 150eqeltrd 2283 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( 2  x.  n )  +  1 )  e.  ( 1 ... M ) )
152 elfzle2 10157 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( 2  x.  n
)  +  1 )  e.  ( 1 ... M )  ->  (
( 2  x.  n
)  +  1 )  <_  M )
153151, 152syl 14 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( 2  x.  n )  +  1 )  <_  M
)
154 zmulcl 9433 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( 2  e.  ZZ  /\  n  e.  ZZ )  ->  ( 2  x.  n
)  e.  ZZ )
15522, 138, 154sylancr 414 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  n )  e.  ZZ )
156 zltp1le 9434 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( 2  x.  n
)  e.  ZZ  /\  M  e.  ZZ )  ->  ( ( 2  x.  n )  <  M  <->  ( ( 2  x.  n
)  +  1 )  <_  M ) )
157155, 137, 156syl2anc 411 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( 2  x.  n )  < 
M  <->  ( ( 2  x.  n )  +  1 )  <_  M
) )
158153, 157mpbird 167 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  n )  <  M
)
159 2re 9113 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  2  e.  RR
160159a1i 9 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  2  e.  RR )
161 2pos 9134 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  0  <  2
162161a1i 9 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  0  <  2
)
163 ltmuldiv2 8955 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( n  e.  RR  /\  M  e.  RR  /\  (
2  e.  RR  /\  0  <  2 ) )  ->  ( ( 2  x.  n )  < 
M  <->  n  <  ( M  /  2 ) ) )
164148, 142, 160, 162, 163syl112anc 1254 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( 2  x.  n )  < 
M  <->  n  <  ( M  /  2 ) ) )
165158, 164mpbid 147 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  n  <  ( M  /  2 ) )
166143recnd 8108 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  e.  CC )
1677nncnd 9057 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ph  ->  M  e.  CC )
168167ad2antrr 488 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  M  e.  CC )
1691682halvesd 9290 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( M  /  2 )  +  ( M  /  2
) )  =  M )
170166, 166, 169mvlraddd 8443 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  =  ( M  -  ( M  /  2 ) ) )
171165, 170breqtrd 4073 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  n  <  ( M  -  ( M  /  2 ) ) )
172148, 142, 143, 171ltsub13d 8631 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  <  ( M  -  n )
)
173140, 143, 144, 146, 172lelttrd 8204 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( |_ `  ( M  /  2
) )  <  ( M  -  n )
)
174 zltp1le 9434 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( |_ `  ( M  /  2 ) )  e.  ZZ  /\  ( M  -  n )  e.  ZZ )  ->  (
( |_ `  ( M  /  2 ) )  <  ( M  -  n )  <->  ( ( |_ `  ( M  / 
2 ) )  +  1 )  <_  ( M  -  n )
) )
175134, 139, 174syl2anc 411 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( |_
`  ( M  / 
2 ) )  < 
( M  -  n
)  <->  ( ( |_
`  ( M  / 
2 ) )  +  1 )  <_  ( M  -  n )
) )
176173, 175mpbid 147 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( |_
`  ( M  / 
2 ) )  +  1 )  <_  ( M  -  n )
)
177 2t0e0 9203 . . . . . . . . . . . . . . . . . . . . 21  |-  ( 2  x.  0 )  =  0
178 2cn 9114 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  2  e.  CC
179 zcn 9384 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( n  e.  ZZ  ->  n  e.  CC )
180179ad2antrl 490 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  n  e.  CC )
181 mulcl 8059 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( 2  e.  CC  /\  n  e.  CC )  ->  ( 2  x.  n
)  e.  CC )
182178, 180, 181sylancr 414 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  n )  e.  CC )
183 pncan 8285 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( 2  x.  n
)  e.  CC  /\  1  e.  CC )  ->  ( ( ( 2  x.  n )  +  1 )  -  1 )  =  ( 2  x.  n ) )
184182, 47, 183sylancl 413 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( ( 2  x.  n )  +  1 )  - 
1 )  =  ( 2  x.  n ) )
185 elfznn 10183 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( 2  x.  n
)  +  1 )  e.  ( 1 ... M )  ->  (
( 2  x.  n
)  +  1 )  e.  NN )
186 nnm1nn0 9343 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( 2  x.  n
)  +  1 )  e.  NN  ->  (
( ( 2  x.  n )  +  1 )  -  1 )  e.  NN0 )
187151, 185, 1863syl 17 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( ( 2  x.  n )  +  1 )  - 
1 )  e.  NN0 )
188184, 187eqeltrrd 2284 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  n )  e.  NN0 )
189188nn0ge0d 9358 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  0  <_  (
2  x.  n ) )
190177, 189eqbrtrid 4082 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  0 )  <_  (
2  x.  n ) )
191 0red 8080 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  0  e.  RR )
192 lemul2 8937 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( 0  e.  RR  /\  n  e.  RR  /\  (
2  e.  RR  /\  0  <  2 ) )  ->  ( 0  <_  n 
<->  ( 2  x.  0 )  <_  ( 2  x.  n ) ) )
193191, 148, 160, 162, 192syl112anc 1254 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 0  <_  n 
<->  ( 2  x.  0 )  <_  ( 2  x.  n ) ) )
194190, 193mpbird 167 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  0  <_  n
)
195142, 148subge02d 8617 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 0  <_  n 
<->  ( M  -  n
)  <_  M )
)
196194, 195mpbid 147 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  -  n )  <_  M
)
197135, 137, 139, 176, 196elfzd 10145 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  -  n )  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )
198101ad2antrr 488 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  P  e.  Prime )
199 prmnn 12476 . . . . . . . . . . . . . . . . . . . . 21  |-  ( P  e.  Prime  ->  P  e.  NN )
200198, 199syl 14 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  P  e.  NN )
201200nncnd 9057 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  P  e.  CC )
202 peano2cn 8214 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( 2  x.  n )  e.  CC  ->  (
( 2  x.  n
)  +  1 )  e.  CC )
203182, 202syl 14 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( 2  x.  n )  +  1 )  e.  CC )
204201, 203nncand 8395 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( P  -  ( P  -  (
( 2  x.  n
)  +  1 ) ) )  =  ( ( 2  x.  n
)  +  1 ) )
205 1cnd 8095 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  1  e.  CC )
206201, 182, 205sub32d 8422 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( P  -  ( 2  x.  n ) )  - 
1 )  =  ( ( P  -  1 )  -  ( 2  x.  n ) ) )
207201, 182, 205subsub4d 8421 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( P  -  ( 2  x.  n ) )  - 
1 )  =  ( P  -  ( ( 2  x.  n )  +  1 ) ) )
208 2cnd 9116 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  2  e.  CC )
209208, 168, 180subdid 8493 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  ( M  -  n
) )  =  ( ( 2  x.  M
)  -  ( 2  x.  n ) ) )
2106oveq2i 5962 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( 2  x.  M )  =  ( 2  x.  (
( P  -  1 )  /  2 ) )
21118nnzd 9501 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ph  ->  P  e.  ZZ )
212211ad2antrr 488 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  P  e.  ZZ )
213 peano2zm 9417 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( P  e.  ZZ  ->  ( P  -  1 )  e.  ZZ )
214212, 213syl 14 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( P  - 
1 )  e.  ZZ )
215214zcnd 9503 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( P  - 
1 )  e.  CC )
216160, 162gt0ap0d 8709 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  2 #  0 )
217215, 208, 216divcanap2d 8872 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  ( ( P  - 
1 )  /  2
) )  =  ( P  -  1 ) )
218210, 217eqtrid 2251 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  M )  =  ( P  -  1 ) )
219218oveq1d 5966 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( 2  x.  M )  -  ( 2  x.  n
) )  =  ( ( P  -  1 )  -  ( 2  x.  n ) ) )
220209, 219eqtr2d 2240 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( P  -  1 )  -  ( 2  x.  n
) )  =  ( 2  x.  ( M  -  n ) ) )
221206, 207, 2203eqtr3d 2247 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( P  -  ( ( 2  x.  n )  +  1 ) )  =  ( 2  x.  ( M  -  n ) ) )
222221oveq2d 5967 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( P  -  ( P  -  (
( 2  x.  n
)  +  1 ) ) )  =  ( P  -  ( 2  x.  ( M  -  n ) ) ) )
223204, 222, 1493eqtr3rd 2248 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 1st `  z
)  =  ( P  -  ( 2  x.  ( M  -  n
) ) ) )
224 oveq2 5959 . . . . . . . . . . . . . . . . . . 19  |-  ( u  =  ( M  -  n )  ->  (
2  x.  u )  =  ( 2  x.  ( M  -  n
) ) )
225224oveq2d 5967 . . . . . . . . . . . . . . . . . 18  |-  ( u  =  ( M  -  n )  ->  ( P  -  ( 2  x.  u ) )  =  ( P  -  ( 2  x.  ( M  -  n )
) ) )
226225rspceeqv 2896 . . . . . . . . . . . . . . . . 17  |-  ( ( ( M  -  n
)  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M )  /\  ( 1st `  z )  =  ( P  -  (
2  x.  ( M  -  n ) ) ) )  ->  E. u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) )
227197, 223, 226syl2anc 411 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  E. u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) )
228227rexlimdvaa 2625 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  z  e.  S )  ->  ( E. n  e.  ZZ  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z )  ->  E. u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) ) )
229132, 228sylbid 150 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  z  e.  S )  ->  ( -.  2  ||  ( 1st `  z )  ->  E. u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) ) )
230126, 229impbid 129 . . . . . . . . . . . . 13  |-  ( (
ph  /\  z  e.  S )  ->  ( E. u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) )  <->  -.  2  ||  ( 1st `  z
) ) )
231230rabbidva 2761 . . . . . . . . . . . 12  |-  ( ph  ->  { z  e.  S  |  E. u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) }  =  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } )
23293, 231eqtrid 2251 . . . . . . . . . . 11  |-  ( ph  ->  U_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) { z  e.  S  |  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) }  =  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } )
233232fveq2d 5587 . . . . . . . . . 10  |-  ( ph  ->  ( `  U_ u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u ) ) } )  =  ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )
234 ssrab2 3279 . . . . . . . . . . . . . . 15  |-  { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u
) ) }  C_  S
23536relopabiv 4805 . . . . . . . . . . . . . . 15  |-  Rel  S
236 relss 4766 . . . . . . . . . . . . . . 15  |-  ( { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } 
C_  S  ->  ( Rel  S  ->  Rel  { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u
) ) } ) )
237234, 235, 236mp2 16 . . . . . . . . . . . . . 14  |-  Rel  {
z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) }
238 relxp 4788 . . . . . . . . . . . . . 14  |-  Rel  ( { ( P  -  ( 2  x.  u
) ) }  X.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )
23936eleq2i 2273 . . . . . . . . . . . . . . . . . 18  |-  ( <.
x ,  y >.  e.  S  <->  <. x ,  y
>.  e.  { <. x ,  y >.  |  ( ( x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N ) )  /\  ( y  x.  P )  < 
( x  x.  Q
) ) } )
240 opabidw 4307 . . . . . . . . . . . . . . . . . 18  |-  ( <.
x ,  y >.  e.  { <. x ,  y
>.  |  ( (
x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N ) )  /\  ( y  x.  P )  <  (
x  x.  Q ) ) }  <->  ( (
x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N ) )  /\  ( y  x.  P )  <  (
x  x.  Q ) ) )
241239, 240bitri 184 . . . . . . . . . . . . . . . . 17  |-  ( <.
x ,  y >.  e.  S  <->  ( ( x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N
) )  /\  (
y  x.  P )  <  ( x  x.  Q ) ) )
242 anass 401 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( y  e.  NN  /\  y  <_  N )  /\  ( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q ) )  <-> 
( y  e.  NN  /\  ( y  <_  N  /\  ( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q ) ) ) )
24331peano2zd 9505 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  1 )  e.  ZZ )
244243zred 9502 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  1 )  e.  RR )
245244adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  1 )  e.  RR )
24616nnred 9056 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ph  ->  Q  e.  RR )
247246ad2antrr 488 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  Q  e.  RR )
248 nnre 9050 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( y  e.  NN  ->  y  e.  RR )
249248adantl 277 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  y  e.  RR )
250 lesub 8521 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  +  1 )  e.  RR  /\  Q  e.  RR  /\  y  e.  RR )  ->  (
( ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  +  1 )  <_  ( Q  -  y )  <->  y  <_  ( Q  -  ( ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) )  +  1 ) ) ) )
251245, 247, 249, 250syl3anc 1250 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  +  1 )  <_  ( Q  -  y )  <->  y  <_  ( Q  -  ( ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) )  +  1 ) ) ) )
252246adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  Q  e.  RR )
253252recnd 8108 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  Q  e.  CC )
25475, 253mulcomd 8101 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  x.  Q )  =  ( Q  x.  P ) )
25577, 253mulcomd 8101 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  u
)  x.  Q )  =  ( Q  x.  ( 2  x.  u
) ) )
25619nnap0d 9089 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P #  0 )
257253, 75, 256divcanap1d 8871 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  P )  =  Q )
258257oveq1d 5966 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( ( Q  /  P )  x.  P
)  x.  ( 2  x.  u ) )  =  ( Q  x.  ( 2  x.  u
) ) )
259246, 18nndivred 9093 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  |-  ( ph  ->  ( Q  /  P
)  e.  RR )
260259adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  P )  e.  RR )
261260recnd 8108 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  P )  e.  CC )
262261, 75, 77mul32d 8232 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( ( Q  /  P )  x.  P
)  x.  ( 2  x.  u ) )  =  ( ( ( Q  /  P )  x.  ( 2  x.  u ) )  x.  P ) )
263255, 258, 2623eqtr2d 2245 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  u
)  x.  Q )  =  ( ( ( Q  /  P )  x.  ( 2  x.  u ) )  x.  P ) )
264254, 263oveq12d 5969 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  x.  Q
)  -  ( ( 2  x.  u )  x.  Q ) )  =  ( ( Q  x.  P )  -  ( ( ( Q  /  P )  x.  ( 2  x.  u
) )  x.  P
) ) )
26575, 77, 253subdird 8494 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  x.  Q )  =  ( ( P  x.  Q )  -  ( ( 2  x.  u )  x.  Q
) ) )
26626zred 9502 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  RR )
267260, 266remulcld 8110 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  ( 2  x.  u ) )  e.  RR )
268267recnd 8108 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  ( 2  x.  u ) )  e.  CC )
269253, 268, 75subdird 8494 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  -  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  x.  P )  =  ( ( Q  x.  P )  -  ( ( ( Q  /  P )  x.  ( 2  x.  u
) )  x.  P
) ) )
270264, 265, 2693eqtr4d 2249 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  x.  Q )  =  ( ( Q  -  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  x.  P ) )
271270adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( P  -  (
2  x.  u ) )  x.  Q )  =  ( ( Q  -  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  x.  P ) )
272271breq2d 4059 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q )  <->  ( y  x.  P )  <  (
( Q  -  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  x.  P ) ) )
273267adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( Q  /  P
)  x.  ( 2  x.  u ) )  e.  RR )
274247, 273resubcld 8460 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  ( Q  -  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  e.  RR )
27519adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  P  e.  NN )
276275nnred 9056 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  P  e.  RR )
277275nngt0d 9087 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  0  <  P )
278 ltmul1 8672 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( y  e.  RR  /\  ( Q  -  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  e.  RR  /\  ( P  e.  RR  /\  0  <  P ) )  ->  ( y  <  ( Q  -  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  <->  ( y  x.  P )  <  (
( Q  -  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  x.  P ) ) )
279249, 274, 276, 277, 278syl112anc 1254 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
y  <  ( Q  -  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  <->  ( y  x.  P )  <  (
( Q  -  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  x.  P ) ) )
280 ltsub13 8523 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( y  e.  RR  /\  Q  e.  RR  /\  (
( Q  /  P
)  x.  ( 2  x.  u ) )  e.  RR )  -> 
( y  <  ( Q  -  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  <->  ( ( Q  /  P )  x.  ( 2  x.  u
) )  <  ( Q  -  y )
) )
281249, 247, 273, 280syl3anc 1250 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
y  <  ( Q  -  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  <->  ( ( Q  /  P )  x.  ( 2  x.  u
) )  <  ( Q  -  y )
) )
282272, 279, 2813bitr2d 216 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q )  <->  ( ( Q  /  P )  x.  ( 2  x.  u
) )  <  ( Q  -  y )
) )
28316adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  Q  e.  NN )
284283nnzd 9501 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  Q  e.  ZZ )
285 nnz 9398 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( y  e.  NN  ->  y  e.  ZZ )
286 zsubcl 9420 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( Q  e.  ZZ  /\  y  e.  ZZ )  ->  ( Q  -  y
)  e.  ZZ )
287284, 285, 286syl2an 289 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  ( Q  -  y )  e.  ZZ )
288 flqlt 10433 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ( Q  /  P )  x.  (
2  x.  u ) )  e.  QQ  /\  ( Q  -  y
)  e.  ZZ )  ->  ( ( ( Q  /  P )  x.  ( 2  x.  u ) )  < 
( Q  -  y
)  <->  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  <  ( Q  -  y )
) )
28930, 287, 288syl2an2r 595 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( ( Q  /  P )  x.  (
2  x.  u ) )  <  ( Q  -  y )  <->  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  <  ( Q  -  y )
) )
290 zltp1le 9434 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  e.  ZZ  /\  ( Q  -  y
)  e.  ZZ )  ->  ( ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  < 
( Q  -  y
)  <->  ( ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  +  1 )  <_  ( Q  -  y )
) )
29131, 287, 290syl2an2r 595 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  <  ( Q  -  y )  <->  ( ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  +  1 )  <_  ( Q  -  y )
) )
292282, 289, 2913bitrd 214 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q )  <->  ( ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  +  1 )  <_  ( Q  -  y )
) )
29335oveq2i 5962 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( 2  x.  N )  =  ( 2  x.  (
( Q  -  1 )  /  2 ) )
294 peano2rem 8346 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( Q  e.  RR  ->  ( Q  -  1 )  e.  RR )
295252, 294syl 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  -  1 )  e.  RR )
296295recnd 8108 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  -  1 )  e.  CC )
297 2cnd 9116 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  2  e.  CC )
29885a1i 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  2 #  0 )
299296, 297, 298divcanap2d 8872 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  ( ( Q  -  1 )  /  2 ) )  =  ( Q  - 
1 ) )
300293, 299eqtrid 2251 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  =  ( Q  - 
1 ) )
301300oveq1d 5966 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  =  ( ( Q  -  1 )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) )
302 1cnd 8095 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  1  e.  CC )
30331zcnd 9503 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  e.  CC )
304253, 302, 303sub32d 8422 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  -  1 )  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  =  ( ( Q  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) )  - 
1 ) )
305253, 303, 302subsub4d 8421 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  -  1 )  =  ( Q  -  (
( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  1 ) ) )
306301, 304, 3053eqtrd 2243 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  =  ( Q  -  ( ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  +  1 ) ) )
307306adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  =  ( Q  -  ( ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  +  1 ) ) )
308307breq2d 4059 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
y  <_  ( (
2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) )  <->  y  <_  ( Q  -  ( ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) )  +  1 ) ) ) )
309251, 292, 3083bitr4d 220 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q )  <->  y  <_  ( ( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )
310309anbi2d 464 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( y  <_  N  /\  ( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q ) )  <-> 
( y  <_  N  /\  y  <_  ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) ) ) ) )
31115, 35gausslemma2dlem0b 15571 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  N  e.  NN )
312 nnmulcl 9064 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ( 2  e.  NN  /\  N  e.  NN )  ->  ( 2  x.  N
)  e.  NN )
3139, 311, 312sylancr 414 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  ( 2  x.  N
)  e.  NN )
314313adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  e.  NN )
315314nnred 9056 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  e.  RR )
316311adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  e.  NN )
317316nnred 9056 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  e.  RR )
31831zred 9502 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  e.  RR )
319311nncnd 9057 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  N  e.  CC )
320319adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  e.  CC )
3213202timesd 9287 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  =  ( N  +  N ) )
322320, 320, 321mvrladdd 8446 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  N
)  -  N )  =  N )
323252rehalfcld 9291 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  2 )  e.  RR )
324252ltm1d 9012 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  -  1 )  <  Q )
325159a1i 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  2  e.  RR )
326161a1i 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  0  <  2 )
327 ltdiv1 8948 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( ( ( Q  -  1 )  e.  RR  /\  Q  e.  RR  /\  (
2  e.  RR  /\  0  <  2 ) )  ->  ( ( Q  -  1 )  < 
Q  <->  ( ( Q  -  1 )  / 
2 )  <  ( Q  /  2 ) ) )
328295, 252, 325, 326, 327syl112anc 1254 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  -  1 )  <  Q  <->  ( ( Q  -  1 )  /  2 )  < 
( Q  /  2
) ) )
329324, 328mpbid 147 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  -  1 )  /  2 )  <  ( Q  / 
2 ) )
33035, 329eqbrtrid 4082 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  <  ( Q  /  2
) )
331317, 323, 330ltled 8198 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  <_  ( Q  /  2
) )
332253, 297, 75, 298div32apd 8894 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  2
)  x.  P )  =  ( Q  x.  ( P  /  2
) ) )
333141adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  M  e.  RR )
334333rehalfcld 9291 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( M  /  2 )  e.  RR )
33513adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( |_ `  ( M  /  2 ) )  +  1 )  e.  ZZ )
336335zred 9502 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( |_ `  ( M  /  2 ) )  +  1 )  e.  RR )
33724zred 9502 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  u  e.  RR )
33811adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( M  /  2 )  e.  QQ )
339 flqltp1 10429 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  |-  ( ( M  /  2 )  e.  QQ  ->  ( M  /  2 )  < 
( ( |_ `  ( M  /  2
) )  +  1 ) )
340338, 339syl 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( M  /  2 )  < 
( ( |_ `  ( M  /  2
) )  +  1 ) )
341 elfzle1 10156 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  |-  ( u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M )  ->  (
( |_ `  ( M  /  2 ) )  +  1 )  <_  u )
342341adantl 277 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( |_ `  ( M  /  2 ) )  +  1 )  <_  u )
343334, 336, 337, 340, 342ltletrd 8503 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( M  /  2 )  < 
u )
344 ltdivmul 8956 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  |-  ( ( M  e.  RR  /\  u  e.  RR  /\  (
2  e.  RR  /\  0  <  2 ) )  ->  ( ( M  /  2 )  < 
u  <->  M  <  ( 2  x.  u ) ) )
345333, 337, 325, 326, 344syl112anc 1254 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( M  /  2
)  <  u  <->  M  <  ( 2  x.  u ) ) )
346343, 345mpbid 147 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  M  <  ( 2  x.  u
) )
3476, 346eqbrtrrid 4083 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  1 )  /  2 )  <  ( 2  x.  u ) )
34819nnred 9056 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  RR )
349 peano2rem 8346 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  |-  ( P  e.  RR  ->  ( P  -  1 )  e.  RR )
350348, 349syl 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  1 )  e.  RR )
351 ltdivmul 8956 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37  |-  ( ( ( P  -  1 )  e.  RR  /\  ( 2  x.  u
)  e.  RR  /\  ( 2  e.  RR  /\  0  <  2 ) )  ->  ( (
( P  -  1 )  /  2 )  <  ( 2  x.  u )  <->  ( P  -  1 )  < 
( 2  x.  (
2  x.  u ) ) ) )
352350, 266, 325, 326, 351syl112anc 1254 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( ( P  - 
1 )  /  2
)  <  ( 2  x.  u )  <->  ( P  -  1 )  < 
( 2  x.  (
2  x.  u ) ) ) )
353347, 352mpbid 147 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  1 )  <  ( 2  x.  ( 2  x.  u
) ) )
354 zmulcl 9433 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37  |-  ( ( 2  e.  ZZ  /\  ( 2  x.  u
)  e.  ZZ )  ->  ( 2  x.  ( 2  x.  u
) )  e.  ZZ )
35522, 26, 354sylancr 414 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  ( 2  x.  u ) )  e.  ZZ )
356 zlem1lt 9436 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36  |-  ( ( P  e.  ZZ  /\  ( 2  x.  (
2  x.  u ) )  e.  ZZ )  ->  ( P  <_ 
( 2  x.  (
2  x.  u ) )  <->  ( P  - 
1 )  <  (
2  x.  ( 2  x.  u ) ) ) )
357211, 355, 356syl2an2r 595 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  <_  ( 2  x.  ( 2  x.  u
) )  <->  ( P  -  1 )  < 
( 2  x.  (
2  x.  u ) ) ) )
358353, 357mpbird 167 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  <_  ( 2  x.  (
2  x.  u ) ) )
359 ledivmul 8957 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35  |-  ( ( P  e.  RR  /\  ( 2  x.  u
)  e.  RR  /\  ( 2  e.  RR  /\  0  <  2 ) )  ->  ( ( P  /  2 )  <_ 
( 2  x.  u
)  <->  P  <_  ( 2  x.  ( 2  x.  u ) ) ) )
360348, 266, 325, 326, 359syl112anc 1254 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  /  2
)  <_  ( 2  x.  u )  <->  P  <_  ( 2  x.  ( 2  x.  u ) ) ) )
361358, 360mpbird 167 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  /  2 )  <_ 
( 2  x.  u
) )
362348rehalfcld 9291 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  /  2 )  e.  RR )
363283nngt0d 9087 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  0  <  Q )
364 lemul2 8937 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  |-  ( ( ( P  /  2
)  e.  RR  /\  ( 2  x.  u
)  e.  RR  /\  ( Q  e.  RR  /\  0  <  Q ) )  ->  ( ( P  /  2 )  <_ 
( 2  x.  u
)  <->  ( Q  x.  ( P  /  2
) )  <_  ( Q  x.  ( 2  x.  u ) ) ) )
365362, 266, 252, 363, 364syl112anc 1254 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  /  2
)  <_  ( 2  x.  u )  <->  ( Q  x.  ( P  /  2
) )  <_  ( Q  x.  ( 2  x.  u ) ) ) )
366361, 365mpbid 147 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  x.  ( P  /  2 ) )  <_  ( Q  x.  ( 2  x.  u
) ) )
367332, 366eqbrtrd 4069 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  2
)  x.  P )  <_  ( Q  x.  ( 2  x.  u
) ) )
368252, 266remulcld 8110 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  x.  ( 2  x.  u ) )  e.  RR )
36919nngt0d 9087 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  0  <  P )
370 lemuldiv 8961 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( ( ( Q  /  2
)  e.  RR  /\  ( Q  x.  (
2  x.  u ) )  e.  RR  /\  ( P  e.  RR  /\  0  <  P ) )  ->  ( (
( Q  /  2
)  x.  P )  <_  ( Q  x.  ( 2  x.  u
) )  <->  ( Q  /  2 )  <_ 
( ( Q  x.  ( 2  x.  u
) )  /  P
) ) )
371323, 368, 348, 369, 370syl112anc 1254 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( ( Q  / 
2 )  x.  P
)  <_  ( Q  x.  ( 2  x.  u
) )  <->  ( Q  /  2 )  <_ 
( ( Q  x.  ( 2  x.  u
) )  /  P
) ) )
372367, 371mpbid 147 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  2 )  <_ 
( ( Q  x.  ( 2  x.  u
) )  /  P
) )
373253, 77, 75, 256div23apd 8908 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  x.  (
2  x.  u ) )  /  P )  =  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )
374372, 373breqtrd 4073 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  2 )  <_ 
( ( Q  /  P )  x.  (
2  x.  u ) ) )
375317, 323, 267, 331, 374letrd 8203 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  <_  ( ( Q  /  P )  x.  (
2  x.  u ) ) )
376311nnzd 9501 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  N  e.  ZZ )
377376adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  e.  ZZ )
378 flqge 10432 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ( ( ( Q  /  P )  x.  (
2  x.  u ) )  e.  QQ  /\  N  e.  ZZ )  ->  ( N  <_  (
( Q  /  P
)  x.  ( 2  x.  u ) )  <-> 
N  <_  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) ) )
37930, 377, 378syl2anc 411 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( N  <_  ( ( Q  /  P )  x.  ( 2  x.  u
) )  <->  N  <_  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) )
380375, 379mpbid 147 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  <_  ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) ) )
381322, 380eqbrtrd 4069 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  N
)  -  N )  <_  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) )
382315, 317, 318, 381subled 8628 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  <_  N )
383382adantr 276 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  <_  N )
384314nnzd 9501 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  e.  ZZ )
385384, 31zsubcld 9507 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  e.  ZZ )
386385adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  e.  ZZ )
387386zred 9502 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  e.  RR )
388311ad2antrr 488 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  N  e.  NN )
389388nnred 9056 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  N  e.  RR )
390 letr 8162 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( y  e.  RR  /\  ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  e.  RR  /\  N  e.  RR )  ->  (
( y  <_  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  /\  ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) )  <_  N )  ->  y  <_  N )
)
391249, 387, 389, 390syl3anc 1250 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( y  <_  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  /\  ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) )  <_  N )  ->  y  <_  N )
)
392383, 391mpan2d 428 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
y  <_  ( (
2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) )  -> 
y  <_  N )
)
393392pm4.71rd 394 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
y  <_  ( (
2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) )  <->  ( y  <_  N  /\  y  <_ 
( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
394310, 393bitr4d 191 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( y  <_  N  /\  ( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q ) )  <-> 
y  <_  ( (
2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) ) ) )
395394pm5.32da 452 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( y  e.  NN  /\  ( y  <_  N  /\  ( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q ) ) )  <->  ( y  e.  NN  /\  y  <_ 
( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
396395adantr 276 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( ( y  e.  NN  /\  ( y  <_  N  /\  (
y  x.  P )  <  ( ( P  -  ( 2  x.  u ) )  x.  Q ) ) )  <-> 
( y  e.  NN  /\  y  <_  ( (
2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) ) ) ) )
397242, 396bitrid 192 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( ( ( y  e.  NN  /\  y  <_  N )  /\  (
y  x.  P )  <  ( ( P  -  ( 2  x.  u ) )  x.  Q ) )  <->  ( y  e.  NN  /\  y  <_ 
( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
398 simpr 110 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  ->  x  =  ( P  -  ( 2  x.  u ) ) )
399211adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  ZZ )
400399, 26zsubcld 9507 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  e.  ZZ )
401 elfzle2 10157 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M )  ->  u  <_  M )
402401adantl 277 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  u  <_  M )
403402, 6breqtrdi 4088 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  u  <_  ( ( P  - 
1 )  /  2
) )
404 lemuldiv2 8962 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ( u  e.  RR  /\  ( P  -  1
)  e.  RR  /\  ( 2  e.  RR  /\  0  <  2 ) )  ->  ( (
2  x.  u )  <_  ( P  - 
1 )  <->  u  <_  ( ( P  -  1 )  /  2 ) ) )
405337, 350, 325, 326, 404syl112anc 1254 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  u
)  <_  ( P  -  1 )  <->  u  <_  ( ( P  -  1 )  /  2 ) ) )
406403, 405mpbird 167 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  <_  ( P  - 
1 ) )
407348ltm1d 9012 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  1 )  <  P )
408266, 350, 348, 406, 407lelttrd 8204 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  <  P )
409266, 348posdifd 8612 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  u
)  <  P  <->  0  <  ( P  -  ( 2  x.  u ) ) ) )
410408, 409mpbid 147 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  0  <  ( P  -  (
2  x.  u ) ) )
411 elnnz 9389 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( P  -  ( 2  x.  u ) )  e.  NN  <->  ( ( P  -  ( 2  x.  u ) )  e.  ZZ  /\  0  <  ( P  -  (
2  x.  u ) ) ) )
412400, 410, 411sylanbrc 417 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  e.  NN )
41375, 77, 302sub32d 8422 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  -  1 )  =  ( ( P  -  1 )  -  ( 2  x.  u
) ) )
4146, 6oveq12i 5963 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( M  +  M )  =  ( ( ( P  -  1 )  / 
2 )  +  ( ( P  -  1 )  /  2 ) )
41564, 213syl 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  1 )  e.  ZZ )
416415zcnd 9503 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  1 )  e.  CC )
4174162halvesd 9290 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( ( P  - 
1 )  /  2
)  +  ( ( P  -  1 )  /  2 ) )  =  ( P  - 
1 ) )
418414, 417eqtrid 2251 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( M  +  M )  =  ( P  - 
1 ) )
419418oveq1d 5966 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( M  +  M
)  -  M )  =  ( ( P  -  1 )  -  M ) )
420167adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  M  e.  CC )
421420, 420pncan2d 8392 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( M  +  M
)  -  M )  =  M )
422419, 421eqtr3d 2241 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  1 )  -  M )  =  M )
423422, 346eqbrtrd 4069 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  1 )  -  M )  <  ( 2  x.  u ) )
424350, 333, 266, 423ltsub23d 8630 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  1 )  -  ( 2  x.  u ) )  <  M )
425413, 424eqbrtrd 4069 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  -  1 )  <  M )
4267adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  M  e.  NN )
427426nnzd 9501 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  M  e.  ZZ )
428 zlem1lt 9436 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( P  -  (
2  x.  u ) )  e.  ZZ  /\  M  e.  ZZ )  ->  ( ( P  -  ( 2  x.  u
) )  <_  M  <->  ( ( P  -  (
2  x.  u ) )  -  1 )  <  M ) )
429400, 427, 428syl2anc 411 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  <_  M  <->  ( ( P  -  ( 2  x.  u ) )  -  1 )  < 
M ) )
430425, 429mpbird 167 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  <_  M )
431 fznn 10218 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( M  e.  ZZ  ->  (
( P  -  (
2  x.  u ) )  e.  ( 1 ... M )  <->  ( ( P  -  ( 2  x.  u ) )  e.  NN  /\  ( P  -  ( 2  x.  u ) )  <_  M ) ) )
432427, 431syl 14 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  e.  ( 1 ... M )  <->  ( ( P  -  ( 2  x.  u ) )  e.  NN  /\  ( P  -  ( 2  x.  u ) )  <_  M ) ) )
433412, 430, 432mpbir2and 947 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  e.  ( 1 ... M ) )
434433adantr 276 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( P  -  (
2  x.  u ) )  e.  ( 1 ... M ) )
435398, 434eqeltrd 2283 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  ->  x  e.  ( 1 ... M ) )
436435biantrurd 305 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( y  e.  ( 1 ... N )  <-> 
( x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N ) ) ) )
437376ad2antrr 488 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  ->  N  e.  ZZ )
438 fznn 10218 . . . . . . . . . . . . . . . . . . . . 21  |-  ( N  e.  ZZ  ->  (
y  e.  ( 1 ... N )  <->  ( y  e.  NN  /\  y  <_  N ) ) )
439437, 438syl 14 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( y  e.  ( 1 ... N )  <-> 
( y  e.  NN  /\  y  <_  N )
) )
440436, 439bitr3d 190 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( ( x  e.  ( 1 ... M
)  /\  y  e.  ( 1 ... N
) )  <->  ( y  e.  NN  /\  y  <_  N ) ) )
441398oveq1d 5966 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( x  x.  Q
)  =  ( ( P  -  ( 2  x.  u ) )  x.  Q ) )
442441breq2d 4059 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( ( y  x.  P )  <  (
x  x.  Q )  <-> 
( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q ) ) )
443440, 442anbi12d 473 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( ( ( x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N
) )  /\  (
y  x.  P )  <  ( x  x.  Q ) )  <->  ( (
y  e.  NN  /\  y  <_  N )  /\  ( y  x.  P
)  <  ( ( P  -  ( 2  x.  u ) )  x.  Q ) ) ) )
444385adantr 276 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  e.  ZZ )
445 fznn 10218 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  e.  ZZ  ->  (
y  e.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) )  <->  ( y  e.  NN  /\  y  <_ 
( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
446444, 445syl 14 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( y  e.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) ) )  <-> 
( y  e.  NN  /\  y  <_  ( (
2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) ) ) ) )
447397, 443, 4463bitr4d 220 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( ( ( x  e.  ( 1 ... M )  /\  y  e.  ( 1 ... N
) )  /\  (
y  x.  P )  <  ( x  x.  Q ) )  <->  y  e.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
448241, 447bitrid 192 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( <. x ,  y
>.  e.  S  <->  y  e.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
449448pm5.32da 452 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( x  =  ( P  -  ( 2  x.  u ) )  /\  <. x ,  y
>.  e.  S )  <->  ( x  =  ( P  -  ( 2  x.  u
) )  /\  y  e.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) ) )
450 vex 2776 . . . . . . . . . . . . . . . . . . 19  |-  x  e. 
_V
451 vex 2776 . . . . . . . . . . . . . . . . . . 19  |-  y  e. 
_V
452450, 451op1std 6241 . . . . . . . . . . . . . . . . . 18  |-  ( z  =  <. x ,  y
>.  ->  ( 1st `  z
)  =  x )
453452eqeq1d 2215 . . . . . . . . . . . . . . . . 17  |-  ( z  =  <. x ,  y
>.  ->  ( ( 1st `  z )  =  ( P  -  ( 2  x.  u ) )  <-> 
x  =  ( P  -  ( 2  x.  u ) ) ) )
454453elrab 2930 . . . . . . . . . . . . . . . 16  |-  ( <.
x ,  y >.  e.  { z  e.  S  |  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) }  <-> 
( <. x ,  y
>.  e.  S  /\  x  =  ( P  -  ( 2  x.  u
) ) ) )
455454biancomi 270 . . . . . . . . . . . . . . 15  |-  ( <.
x ,  y >.  e.  { z  e.  S  |  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) }  <-> 
( x  =  ( P  -  ( 2  x.  u ) )  /\  <. x ,  y
>.  e.  S ) )
456 opelxp 4709 . . . . . . . . . . . . . . . 16  |-  ( <.
x ,  y >.  e.  ( { ( P  -  ( 2  x.  u ) ) }  X.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )  <->  ( x  e.  { ( P  -  ( 2  x.  u
) ) }  /\  y  e.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) ) ) )
457 velsn 3651 . . . . . . . . . . . . . . . . 17  |-  ( x  e.  { ( P  -  ( 2  x.  u ) ) }  <-> 
x  =  ( P  -  ( 2  x.  u ) ) )
458457anbi1i 458 . . . . . . . . . . . . . . . 16  |-  ( ( x  e.  { ( P  -  ( 2  x.  u ) ) }  /\  y  e.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )  <->  ( x  =  ( P  -  ( 2  x.  u
) )  /\  y  e.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
459456, 458bitri 184 . . . . . . . . . . . . . . 15  |-  ( <.
x ,  y >.  e.  ( { ( P  -  ( 2  x.  u ) ) }  X.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )  <->  ( x  =  ( P  -  ( 2  x.  u
) )  /\  y  e.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
460449, 455, 4593bitr4g 223 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( <. x ,  y >.  e.  { z  e.  S  |  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) }  <->  <. x ,  y >.  e.  ( { ( P  -  ( 2  x.  u ) ) }  X.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) ) )
461237, 238, 460eqrelrdv 4775 . . . . . . . . . . . . 13  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u
) ) }  =  ( { ( P  -  ( 2  x.  u
) ) }  X.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
462461fveq2d 5587 . . . . . . . . . . . 12  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( `  { z  e.  S  |  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } )  =  ( `  ( { ( P  -  ( 2  x.  u
) ) }  X.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) ) )
463 1zzd 9406 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  1  e.  ZZ )
464463, 385fzfigd 10583 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) )  e.  Fin )
465 xpsnen2g 6931 . . . . . . . . . . . . . 14  |-  ( ( ( P  -  (
2  x.  u ) )  e.  ZZ  /\  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) )  e.  Fin )  ->  ( { ( P  -  ( 2  x.  u ) ) }  X.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )  ~~  (
1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) ) )
466400, 464, 465syl2anc 411 . . . . . . . . . . . . 13  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( { ( P  -  ( 2  x.  u
) ) }  X.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )  ~~  (
1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) ) )
467461, 69eqeltrrd 2284 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( { ( P  -  ( 2  x.  u
) ) }  X.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )  e.  Fin )
468 hashen 10936 . . . . . . . . . . . . . 14  |-  ( ( ( { ( P  -  ( 2  x.  u ) ) }  X.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )  e.  Fin  /\  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) )  e.  Fin )  ->  ( ( `  ( { ( P  -  ( 2  x.  u
) ) }  X.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )  =  ( `  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )  <->  ( {
( P  -  (
2  x.  u ) ) }  X.  (
1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) ) )  ~~  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
469467, 464, 468syl2anc 411 . . . . . . . . . . . . 13  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( `  ( { ( P  -  ( 2  x.  u ) ) }  X.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) ) ) )  =  ( `  (
1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) ) )  <->  ( {
( P  -  (
2  x.  u ) ) }  X.  (
1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) ) )  ~~  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
470466, 469mpbird 167 . . . . . . . . . . . 12  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( `  ( { ( P  -  ( 2  x.  u ) ) }  X.  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )  =  ( `  ( 1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) ) )
471 ltmul2 8936 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( 2  x.  u
)  e.  RR  /\  P  e.  RR  /\  ( Q  e.  RR  /\  0  <  Q ) )  -> 
( ( 2  x.  u )  <  P  <->  ( Q  x.  ( 2  x.  u ) )  <  ( Q  x.  P ) ) )
472266, 348, 252, 363, 471syl112anc 1254 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  u
)  <  P  <->  ( Q  x.  ( 2  x.  u
) )  <  ( Q  x.  P )
) )
473408, 472mpbid 147 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  x.  ( 2  x.  u ) )  <  ( Q  x.  P ) )
474 ltdivmul2 8958 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( Q  x.  (
2  x.  u ) )  e.  RR  /\  Q  e.  RR  /\  ( P  e.  RR  /\  0  <  P ) )  -> 
( ( ( Q  x.  ( 2  x.  u ) )  /  P )  <  Q  <->  ( Q  x.  ( 2  x.  u ) )  <  ( Q  x.  P ) ) )
475368, 252, 348, 369, 474syl112anc 1254 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( ( Q  x.  ( 2  x.  u
) )  /  P
)  <  Q  <->  ( Q  x.  ( 2  x.  u
) )  <  ( Q  x.  P )
) )
476473, 475mpbird 167 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  x.  (
2  x.  u ) )  /  P )  <  Q )
477373, 476eqbrtrrd 4071 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  ( 2  x.  u ) )  <  Q )
478 flqlt 10433 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( Q  /  P )  x.  (
2  x.  u ) )  e.  QQ  /\  Q  e.  ZZ )  ->  ( ( ( Q  /  P )  x.  ( 2  x.  u
) )  <  Q  <->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) )  <  Q ) )
47930, 284, 478syl2anc 411 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( ( Q  /  P )  x.  (
2  x.  u ) )  <  Q  <->  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  <  Q
) )
480477, 479mpbid 147 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  < 
Q )
481 zltlem1 9437 . . . . . . . . . . . . . . . . 17  |-  ( ( ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  e.  ZZ  /\  Q  e.  ZZ )  ->  ( ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  <  Q  <->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) )  <_  ( Q  - 
1 ) ) )
48231, 284, 481syl2anc 411 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  <  Q  <->  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  <_  ( Q  -  1 ) ) )
483480, 482mpbid 147 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  <_ 
( Q  -  1 ) )
484483, 300breqtrrd 4075 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  <_ 
( 2  x.  N
) )
485 eluz2 9661 . . . . . . . . . . . . . 14  |-  ( ( 2  x.  N )  e.  ( ZZ>= `  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  <-> 
( ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  e.  ZZ  /\  ( 2  x.  N
)  e.  ZZ  /\  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) )  <_  ( 2  x.  N ) ) )
48631, 384, 484, 485syl3anbrc 1184 . . . . . . . . . . . . 13  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  e.  ( ZZ>= `  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) )
487 uznn0sub 9687 . . . . . . . . . . . . 13  |-  ( ( 2  x.  N )  e.  ( ZZ>= `  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  ->  ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) )  e.  NN0 )
488 hashfz1 10935 . . . . . . . . . . . . 13  |-  ( ( ( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  e.  NN0  ->  ( `  (
1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) ) )  =  ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) )
489486, 487, 4883syl 17 . . . . . . . . . . . 12  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( `  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )  =  ( ( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) )
490462, 470, 4893eqtrd 2243 . . . . . . . . . . 11  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( `  { z  e.  S  |  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } )  =  ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) ) )
491490sumeq2dv 11723 . . . . . . . . . 10  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( `  { z  e.  S  |  ( 1st `  z )  =  ( P  -  (
2  x.  u ) ) } )  = 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) )
49292, 233, 4913eqtr3rd 2248 . . . . . . . . 9  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  =  ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )
493313nncnd 9057 . . . . . . . . . . 11  |-  ( ph  ->  ( 2  x.  N
)  e.  CC )
494493adantr 276 . . . . . . . . . 10  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  e.  CC )
49514, 494, 303fsumsub 11807 . . . . . . . . 9  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  =  ( sum_ u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) ( 2  x.  N )  -  sum_ u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) )
496492, 495eqtr3d 2241 . . . . . . . 8  |-  ( ph  ->  ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } )  =  ( sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  -  sum_ u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) ) )
497496oveq2d 5967 . . . . . . 7  |-  ( ph  ->  ( sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )  =  ( sum_ u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  +  ( sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  -  sum_ u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) ) ) )
49832zcnd 9503 . . . . . . . 8  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  e.  CC )
49914, 384fsumzcl 11757 . . . . . . . . 9  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  e.  ZZ )
500499zcnd 9503 . . . . . . . 8  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  e.  CC )
501498, 500pncan3d 8393 . . . . . . 7  |-  ( ph  ->  ( sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  ( sum_ u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) ( 2  x.  N )  -  sum_ u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) )  =  sum_ u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) ( 2  x.  N ) )
502 fsumconst 11809 . . . . . . . . 9  |-  ( ( ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  e.  Fin  /\  ( 2  x.  N
)  e.  CC )  ->  sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  =  ( ( `  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  x.  (
2  x.  N ) ) )
50314, 493, 502syl2anc 411 . . . . . . . 8  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  =  ( ( `  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  x.  (
2  x.  N ) ) )
504 hashcl 10933 . . . . . . . . . . 11  |-  ( ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M )  e.  Fin  ->  ( `  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  e.  NN0 )
50514, 504syl 14 . . . . . . . . . 10  |-  ( ph  ->  ( `  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  e. 
NN0 )
506505nn0cnd 9357 . . . . . . . . 9  |-  ( ph  ->  ( `  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  e.  CC )
507 2cnd 9116 . . . . . . . . 9  |-  ( ph  ->  2  e.  CC )
508506, 507, 319mul12d 8231 . . . . . . . 8  |-  ( ph  ->  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  ( 2  x.  N ) )  =  ( 2  x.  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) ) )
509503, 508eqtrd 2239 . . . . . . 7  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  =  ( 2  x.  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) ) )
510497, 501, 5093eqtrd 2243 . . . . . 6  |-  ( ph  ->  ( sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )  =  ( 2  x.  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) ) )
511510oveq2d 5967 . . . . 5  |-  ( ph  ->  ( -u 1 ^ ( sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) )  =  (
-u 1 ^ (
2  x.  ( ( `  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  x.  N
) ) ) )
51222a1i 9 . . . . . 6  |-  ( ph  ->  2  e.  ZZ )
513505nn0zd 9500 . . . . . . 7  |-  ( ph  ->  ( `  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  e.  ZZ )
514513, 376zmulcld 9508 . . . . . 6  |-  ( ph  ->  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N )  e.  ZZ )
515 expmulzap 10737 . . . . . 6  |-  ( ( ( -u 1  e.  CC  /\  -u 1 #  0 )  /\  (
2  e.  ZZ  /\  ( ( `  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  x.  N )  e.  ZZ ) )  ->  ( -u 1 ^ ( 2  x.  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) ) )  =  ( ( -u 1 ^ 2 ) ^ (
( `  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  x.  N ) ) )
5162, 4, 512, 514, 515syl22anc 1251 . . . . 5  |-  ( ph  ->  ( -u 1 ^ ( 2  x.  (
( `  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  x.  N ) ) )  =  ( ( -u
1 ^ 2 ) ^ ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) ) )
517 neg1sqe1 10786 . . . . . . 7  |-  ( -u
1 ^ 2 )  =  1
518517oveq1i 5961 . . . . . 6  |-  ( (
-u 1 ^ 2 ) ^ ( ( `  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  x.  N
) )  =  ( 1 ^ ( ( `  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  x.  N
) )
519 1exp 10720 . . . . . . 7  |-  ( ( ( `  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  x.  N )  e.  ZZ  ->  ( 1 ^ (
( `  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  x.  N ) )  =  1 )
520514, 519syl 14 . . . . . 6  |-  ( ph  ->  ( 1 ^ (
( `  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  x.  N ) )  =  1 )
521518, 520eqtrid 2251 . . . . 5  |-  ( ph  ->  ( ( -u 1 ^ 2 ) ^
( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) )  =  1 )
522511, 516, 5213eqtrd 2243 . . . 4  |-  ( ph  ->  ( -u 1 ^ ( sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) )  =  1 )
52344, 55, 5223eqtr4d 2249 . . 3  |-  ( ph  ->  ( ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) )  x.  ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) ) )  =  ( -u
1 ^ ( sum_ u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  +  ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) ) ) )
524 expaddzap 10735 . . . 4  |-  ( ( ( -u 1  e.  CC  /\  -u 1 #  0 )  /\  ( sum_ u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  e.  ZZ  /\  ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } )  e.  ZZ ) )  ->  ( -u 1 ^ ( sum_ u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) )  +  ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) )  =  ( ( -u 1 ^ sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) ) )  x.  ( -u 1 ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) ) )
5252, 4, 32, 42, 524syl22anc 1251 . . 3  |-  ( ph  ->  ( -u 1 ^ ( sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) )  =  ( ( -u 1 ^
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) ) )  x.  ( -u 1 ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) ) )
526523, 525eqtr2d 2240 . 2  |-  ( ph  ->  ( ( -u 1 ^ sum_ u  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) ) )  x.  ( -u 1 ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) )  =  ( ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) )  x.  ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) ) ) )
52733, 41, 41, 43, 526mulcanap2ad 8744 1  |-  ( ph  ->  ( -u 1 ^
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) ) )  =  (
-u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 104    <-> wb 105  DECID wdc 836    = wceq 1373    e. wcel 2177    =/= wne 2377   A.wral 2485   E.wrex 2486   {crab 2489    \ cdif 3164    C_ wss 3167   {csn 3634   <.cop 3637   U_ciun 3929  Disj wdisj 4023   class class class wbr 4047   {copab 4108    X. cxp 4677   Rel wrel 4684   ` cfv 5276  (class class class)co 5951   1stc1st 6231    ~~ cen 6832   Fincfn 6834   CCcc 7930   RRcr 7931   0cc0 7932   1c1 7933    + caddc 7935    x. cmul 7937    < clt 8114    <_ cle 8115    - cmin 8250   -ucneg 8251   # cap 8661    / cdiv 8752   NNcn 9043   2c2 9094   NN0cn0 9302   ZZcz 9379   ZZ>=cuz 9655   QQcq 9747   ...cfz 10137   |_cfl 10418   ^cexp 10690  ♯chash 10927   sum_csu 11708    || cdvds 12142   Primecprime 12473
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 615  ax-in2 616  ax-io 711  ax-5 1471  ax-7 1472  ax-gen 1473  ax-ie1 1517  ax-ie2 1518  ax-8 1528  ax-10 1529  ax-11 1530  ax-i12 1531  ax-bndl 1533  ax-4 1534  ax-17 1550  ax-i9 1554  ax-ial 1558  ax-i5r 1559  ax-13 2179  ax-14 2180  ax-ext 2188  ax-coll 4163  ax-sep 4166  ax-nul 4174  ax-pow 4222  ax-pr 4257  ax-un 4484  ax-setind 4589  ax-iinf 4640  ax-cnex 8023  ax-resscn 8024  ax-1cn 8025  ax-1re 8026  ax-icn 8027  ax-addcl 8028  ax-addrcl 8029  ax-mulcl 8030  ax-mulrcl 8031  ax-addcom 8032  ax-mulcom 8033  ax-addass 8034  ax-mulass 8035  ax-distr 8036  ax-i2m1 8037  ax-0lt1 8038  ax-1rid 8039  ax-0id 8040  ax-rnegex 8041  ax-precex 8042  ax-cnre 8043  ax-pre-ltirr 8044  ax-pre-ltwlin 8045  ax-pre-lttrn 8046  ax-pre-apti 8047  ax-pre-ltadd 8048  ax-pre-mulgt0 8049  ax-pre-mulext 8050  ax-arch 8051  ax-caucvg 8052
This theorem depends on definitions:  df-bi 117  df-dc 837  df-3or 982  df-3an 983  df-tru 1376  df-fal 1379  df-xor 1396  df-nf 1485  df-sb 1787  df-eu 2058  df-mo 2059  df-clab 2193  df-cleq 2199  df-clel 2202  df-nfc 2338  df-ne 2378  df-nel 2473  df-ral 2490  df-rex 2491  df-reu 2492  df-rmo 2493  df-rab 2494  df-v 2775  df-sbc 3000  df-csb 3095  df-dif 3169  df-un 3171  df-in 3173  df-ss 3180  df-nul 3462  df-if 3573  df-pw 3619  df-sn 3640  df-pr 3641  df-op 3643  df-uni 3853  df-int 3888  df-iun 3931  df-disj 4024  df-br 4048  df-opab 4110  df-mpt 4111  df-tr 4147  df-id 4344  df-po 4347  df-iso 4348  df-iord 4417  df-on 4419  df-ilim 4420  df-suc 4422  df-iom 4643  df-xp 4685  df-rel 4686  df-cnv 4687  df-co 4688  df-dm 4689  df-rn 4690  df-res 4691  df-ima 4692  df-iota 5237  df-fun 5278  df-fn 5279  df-f 5280  df-f1 5281  df-fo 5282  df-f1o 5283  df-fv 5284  df-isom 5285  df-riota 5906  df-ov 5954  df-oprab 5955  df-mpo 5956  df-1st 6233  df-2nd 6234  df-recs 6398  df-irdg 6463  df-frec 6484  df-1o 6509  df-2o 6510  df-oadd 6513  df-er 6627  df-en 6835  df-dom 6836  df-fin 6837  df-pnf 8116  df-mnf 8117  df-xr 8118  df-ltxr 8119  df-le 8120  df-sub 8252  df-neg 8253  df-reap 8655  df-ap 8662  df-div 8753  df-inn 9044  df-2 9102  df-3 9103  df-4 9104  df-n0 9303  df-z 9380  df-uz 9656  df-q 9748  df-rp 9783  df-fz 10138  df-fzo 10272  df-fl 10420  df-mod 10475  df-seqfrec 10600  df-exp 10691  df-ihash 10928  df-cj 11197  df-re 11198  df-im 11199  df-rsqrt 11353  df-abs 11354  df-clim 11634  df-sumdc 11709  df-dvds 12143  df-prm 12474
This theorem is referenced by:  lgsquadlem2  15599
  Copyright terms: Public domain W3C validator