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

Theorem lgsquadlem1 16179
Description: Lemma for lgsquad 16182. 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 9392 . . . 4  |-  -u 1  e.  CC
21a1i 9 . . 3  |-  ( ph  -> 
-u 1  e.  CC )
3 neg1ap0 9396 . . . 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 16152 . . . . . . . . 9  |-  ( ph  ->  M  e.  NN )
87nnzd 9750 . . . . . . . 8  |-  ( ph  ->  M  e.  ZZ )
9 2nn 9449 . . . . . . . 8  |-  2  e.  NN
10 znq 10007 . . . . . . . 8  |-  ( ( M  e.  ZZ  /\  2  e.  NN )  ->  ( M  /  2
)  e.  QQ )
118, 9, 10sylancl 417 . . . . . . 7  |-  ( ph  ->  ( M  /  2
)  e.  QQ )
1211flqcld 10695 . . . . . 6  |-  ( ph  ->  ( |_ `  ( M  /  2 ) )  e.  ZZ )
1312peano2zd 9754 . . . . 5  |-  ( ph  ->  ( ( |_ `  ( M  /  2
) )  +  1 )  e.  ZZ )
1413, 8fzfigd 10851 . . . 4  |-  ( ph  ->  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  e.  Fin )
15 lgseisen.2 . . . . . . . . 9  |-  ( ph  ->  Q  e.  ( Prime  \  { 2 } ) )
1615gausslemma2dlem0a 16151 . . . . . . . 8  |-  ( ph  ->  Q  e.  NN )
1716nnzd 9750 . . . . . . 7  |-  ( ph  ->  Q  e.  ZZ )
185gausslemma2dlem0a 16151 . . . . . . . 8  |-  ( ph  ->  P  e.  NN )
1918adantr 276 . . . . . . 7  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  NN )
20 znq 10007 . . . . . . 7  |-  ( ( Q  e.  ZZ  /\  P  e.  NN )  ->  ( Q  /  P
)  e.  QQ )
2117, 19, 20syl2an2r 603 . . . . . 6  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  P )  e.  QQ )
22 2z 9655 . . . . . . . 8  |-  2  e.  ZZ
23 elfzelz 10411 . . . . . . . . 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 9681 . . . . . . . 8  |-  ( ( 2  e.  ZZ  /\  u  e.  ZZ )  ->  ( 2  x.  u
)  e.  ZZ )
2622, 24, 25sylancr 418 . . . . . . 7  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  ZZ )
27 zq 10009 . . . . . . 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 10020 . . . . . 6  |-  ( ( ( Q  /  P
)  e.  QQ  /\  ( 2  x.  u
)  e.  QQ )  ->  ( ( Q  /  P )  x.  ( 2  x.  u
) )  e.  QQ )
3021, 28, 29syl2anc 415 . . . . 5  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  ( 2  x.  u ) )  e.  QQ )
3130flqcld 10695 . . . 4  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  e.  ZZ )
3214, 31fsumzcl 12152 . . 3  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  e.  ZZ )
332, 4, 32expclzapd 11099 . 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 16178 . . . 4  |-  ( ph  ->  { z  e.  S  |  -.  2  ||  ( 1st `  z ) }  e.  Fin )
38 hashcl 11203 . . . 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 10977 . . 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 418 . 2  |-  ( ph  ->  ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) )  e.  CC )
4239nn0zd 9749 . . 3  |-  ( ph  ->  ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } )  e.  ZZ )
432, 4, 42expap0d 11100 . 2  |-  ( ph  ->  ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) ) #  0 )
4441, 43recidapd 9107 . . . 4  |-  ( ph  ->  ( ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) )  x.  ( 1  / 
( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) ) )  =  1 )
45 1div1e1 9028 . . . . . . . . 9  |-  ( 1  /  1 )  =  1
4645negeqi 8514 . . . . . . . 8  |-  -u (
1  /  1 )  =  -u 1
47 ax-1cn 8266 . . . . . . . . 9  |-  1  e.  CC
48 1ap0 8912 . . . . . . . . 9  |-  1 #  0
49 divneg2ap 9060 . . . . . . . . 9  |-  ( ( 1  e.  CC  /\  1  e.  CC  /\  1 #  0 )  ->  -u (
1  /  1 )  =  ( 1  /  -u 1 ) )
5047, 47, 48, 49mp3an 1378 . . . . . . . 8  |-  -u (
1  /  1 )  =  ( 1  /  -u 1 )
5146, 50eqtr3i 2261 . . . . . . 7  |-  -u 1  =  ( 1  /  -u 1 )
5251oveq1i 6089 . . . . . 6  |-  ( -u
1 ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )  =  ( ( 1  /  -u 1
) ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )
532, 4, 42exprecapd 11102 . . . . . 6  |-  ( ph  ->  ( ( 1  /  -u 1 ) ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) )  =  ( 1  /  ( -u
1 ^ ( `  {
z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) ) )
5452, 53eqtrid 2283 . . . . 5  |-  ( ph  ->  ( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z
) } ) )  =  ( 1  / 
( -u 1 ^ ( `  { z  e.  S  |  -.  2  ||  ( 1st `  z ) } ) ) ) )
5554oveq2d 6095 . . . 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 16177 . . . . . . . . . . . . 13  |-  ( ph  ->  S  e.  Fin )
5756adantr 276 . . . . . . . . . . . 12  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  S  e.  Fin )
58 opabssxp 4847 . . . . . . . . . . . . . . . . . 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 3280 . . . . . . . . . . . . . . . . 17  |-  S  C_  ( ( 1 ... M )  X.  (
1 ... N ) )
6059sseli 3244 . . . . . . . . . . . . . . . 16  |-  ( z  e.  S  ->  z  e.  ( ( 1 ... M )  X.  (
1 ... N ) ) )
61 xp1st 6393 . . . . . . . . . . . . . . . 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 10412 . . . . . . . . . . . . . 14  |-  ( z  e.  S  ->  ( 1st `  z )  e.  ZZ )
6419nnzd 9750 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  ZZ )
6564, 26zsubcld 9756 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  e.  ZZ )
66 zdceq 9703 . . . . . . . . . . . . . 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 2623 . . . . . . . . . . . 12  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  A. z  e.  S DECID  ( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) )
6957, 68ssfirab 7238 . . . . . . . . . . 11  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u
) ) }  e.  Fin )
70 fveqeq2 5702 . . . . . . . . . . . . . . . . . . . 20  |-  ( z  =  v  ->  (
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) )  <->  ( 1st `  v )  =  ( P  -  ( 2  x.  u ) ) ) )
7170elrab 2982 . . . . . . . . . . . . . . . . . . 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 495 . . . . . . . . . . . . . . . . 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 6095 . . . . . . . . . . . . . . . 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 9301 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  CC )
7675adantrr 483 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  P  e.  CC )
7726zcnd 9752 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  CC )
7877adantrr 483 . . . . . . . . . . . . . . . . 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 8636 . . . . . . . . . . . . . . . 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 2271 . . . . . . . . . . . . . . 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 6094 . . . . . . . . . . . . . 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 9752 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  u  e.  CC )
8382adantrr 483 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  u  e.  CC )
84 2cnd 9360 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  ( u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
)  /\  v  e.  { z  e.  S  | 
( 1st `  z
)  =  ( P  -  ( 2  x.  u ) ) } ) )  ->  2  e.  CC )
85 2ap0 9380 . . . . . . . . . . . . . . . 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 9119 . . . . . . . . . . . . . 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 2271 . . . . . . . . . . . . 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 2632 . . . . . . . . . . . 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 4121 . . . . . . . . . . . 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 12228 . . . . . . . . . 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 4058 . . . . . . . . . . . 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 3841 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( P  e.  ( Prime  \  {
2 } )  ->  P  =/=  2 )
955, 94syl 14 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  P  =/=  2 )
9695necomd 2506 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  2  =/=  P )
9796neneqd 2441 . . . . . . . . . . . . . . . . . . . 20  |-  ( ph  ->  -.  2  =  P )
9897ad2antrr 492 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  -.  2  =  P )
99 uzid 9919 . . . . . . . . . . . . . . . . . . . . 21  |-  ( 2  e.  ZZ  ->  2  e.  ( ZZ>= `  2 )
)
10022, 99ax-mp 5 . . . . . . . . . . . . . . . . . . . 20  |-  2  e.  ( ZZ>= `  2 )
1015eldifad 3231 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ph  ->  P  e.  Prime )
102101ad2antrr 492 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  Prime )
103 dvdsprm 12898 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( 2  e.  ( ZZ>= ` 
2 )  /\  P  e.  Prime )  ->  (
2  ||  P  <->  2  =  P ) )
104100, 102, 103sylancr 418 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  ||  P  <->  2  =  P ) )
10598, 104mtbird 684 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  -.  2  ||  P )
10618ad2antrr 492 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  NN )
107106nncnd 9301 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  CC )
10826adantlr 481 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  ZZ )
109108zcnd 9752 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  CC )
110107, 109npcand 8635 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  +  ( 2  x.  u ) )  =  P )
111110breq2d 4140 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  ||  ( ( P  -  ( 2  x.  u ) )  +  ( 2  x.  u ) )  <->  2  ||  P ) )
112105, 111mtbird 684 . . . . . . . . . . . . . . . . 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 12563 . . . . . . . . . . . . . . . . . . 19  |-  ( ( 2  e.  ZZ  /\  u  e.  ZZ )  ->  2  ||  ( 2  x.  u ) )
11522, 113, 114sylancr 418 . . . . . . . . . . . . . . . . . 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 9750 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  ZZ )
118117, 108zsubcld 9756 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  e.  ZZ )
119 dvds2add 12575 . . . . . . . . . . . . . . . . . . 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 1278 . . . . . . . . . . . . . . . . . 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 432 . . . . . . . . . . . . . . . . 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 673 . . . . . . . . . . . . . . . 16  |-  ( ( ( ph  /\  z  e.  S )  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  -.  2  ||  ( P  -  ( 2  x.  u
) ) )
123 breq2 4132 . . . . . . . . . . . . . . . . 17  |-  ( ( 1st `  z )  =  ( P  -  ( 2  x.  u
) )  ->  (
2  ||  ( 1st `  z )  <->  2  ||  ( P  -  (
2  x.  u ) ) ) )
124123notbid 677 . . . . . . . . . . . . . . . 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 2668 . . . . . . . . . . . . . 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 3246 . . . . . . . . . . . . . . . . 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 10411 . . . . . . . . . . . . . . . 16  |-  ( ( 1st `  z )  e.  ( 1 ... M )  ->  ( 1st `  z )  e.  ZZ )
131 odd2np1 12623 . . . . . . . . . . . . . . . 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 492 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  e.  QQ )
134133flqcld 10695 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( |_ `  ( M  /  2
) )  e.  ZZ )
135134peano2zd 9754 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( |_
`  ( M  / 
2 ) )  +  1 )  e.  ZZ )
1367ad2antrr 492 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  M  e.  NN )
137136nnzd 9750 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  M  e.  ZZ )
138 simprl 535 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  n  e.  ZZ )
139137, 138zsubcld 9756 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  -  n )  e.  ZZ )
140134zred 9751 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( |_ `  ( M  /  2
) )  e.  RR )
1417nnred 9300 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ph  ->  M  e.  RR )
142141ad2antrr 492 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  M  e.  RR )
143142rehalfcld 9535 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  e.  RR )
144139zred 9751 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  -  n )  e.  RR )
145 flqle 10696 . . . . . . . . . . . . . . . . . . . . 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 9631 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( n  e.  ZZ  ->  n  e.  RR )
148147ad2antrl 494 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  n  e.  RR )
149 simprr 537 . . . . . . . . . . . . . . . . . . . . . . . . . 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 2315 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( 2  x.  n )  +  1 )  e.  ( 1 ... M ) )
152 elfzle2 10415 . . . . . . . . . . . . . . . . . . . . . . . . 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 9681 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( 2  e.  ZZ  /\  n  e.  ZZ )  ->  ( 2  x.  n
)  e.  ZZ )
15522, 138, 154sylancr 418 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  n )  e.  ZZ )
156 zltp1le 9682 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( 2  x.  n
)  e.  ZZ  /\  M  e.  ZZ )  ->  ( ( 2  x.  n )  <  M  <->  ( ( 2  x.  n
)  +  1 )  <_  M ) )
157155, 137, 156syl2anc 415 . . . . . . . . . . . . . . . . . . . . . . . 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 9357 . . . . . . . . . . . . . . . . . . . . . . . . 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 9378 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  0  <  2
162161a1i 9 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  0  <  2
)
163 ltmuldiv2 9199 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( n  e.  RR  /\  M  e.  RR  /\  (
2  e.  RR  /\  0  <  2 ) )  ->  ( ( 2  x.  n )  < 
M  <->  n  <  ( M  /  2 ) ) )
164148, 142, 160, 162, 163syl112anc 1282 . . . . . . . . . . . . . . . . . . . . . . 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 8348 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  e.  CC )
1677nncnd 9301 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ph  ->  M  e.  CC )
168167ad2antrr 492 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  M  e.  CC )
1691682halvesd 9534 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( M  /  2 )  +  ( M  /  2
) )  =  M )
170166, 166, 169mvlraddd 8684 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  =  ( M  -  ( M  /  2 ) ) )
171165, 170breqtrd 4154 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  n  <  ( M  -  ( M  /  2 ) ) )
172148, 142, 143, 171ltsub13d 8873 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  / 
2 )  <  ( M  -  n )
)
173140, 143, 144, 146, 172lelttrd 8445 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( |_ `  ( M  /  2
) )  <  ( M  -  n )
)
174 zltp1le 9682 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( |_ `  ( M  /  2 ) )  e.  ZZ  /\  ( M  -  n )  e.  ZZ )  ->  (
( |_ `  ( M  /  2 ) )  <  ( M  -  n )  <->  ( ( |_ `  ( M  / 
2 ) )  +  1 )  <_  ( M  -  n )
) )
175134, 139, 174syl2anc 415 . . . . . . . . . . . . . . . . . . 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 9447 . . . . . . . . . . . . . . . . . . . . 21  |-  ( 2  x.  0 )  =  0
178 2cn 9358 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  2  e.  CC
179 zcn 9632 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( n  e.  ZZ  ->  n  e.  CC )
180179ad2antrl 494 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  n  e.  CC )
181 mulcl 8300 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( 2  e.  CC  /\  n  e.  CC )  ->  ( 2  x.  n
)  e.  CC )
182178, 180, 181sylancr 418 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  n )  e.  CC )
183 pncan 8526 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( 2  x.  n
)  e.  CC  /\  1  e.  CC )  ->  ( ( ( 2  x.  n )  +  1 )  -  1 )  =  ( 2  x.  n ) )
184182, 47, 183sylancl 417 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( ( ( 2  x.  n )  +  1 )  - 
1 )  =  ( 2  x.  n ) )
185 elfznn 10443 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( 2  x.  n
)  +  1 )  e.  ( 1 ... M )  ->  (
( 2  x.  n
)  +  1 )  e.  NN )
186 nnm1nn0 9587 . . . . . . . . . . . . . . . . . . . . . . . 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 2316 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  n )  e.  NN0 )
189188nn0ge0d 9606 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  0  <_  (
2  x.  n ) )
190177, 189eqbrtrid 4163 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  0 )  <_  (
2  x.  n ) )
191 0red 8321 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  0  e.  RR )
192 lemul2 9181 . . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . . 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 8859 . . . . . . . . . . . . . . . . . . 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 10402 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( M  -  n )  e.  ( ( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )
198101ad2antrr 492 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  P  e.  Prime )
199 prmnn 12871 . . . . . . . . . . . . . . . . . . . . 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 9301 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  P  e.  CC )
202 peano2cn 8455 . . . . . . . . . . . . . . . . . . . 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 8636 . . . . . . . . . . . . . . . . . 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 8336 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  1  e.  CC )
206201, 182, 205sub32d 8663 . . . . . . . . . . . . . . . . . . . 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 8662 . . . . . . . . . . . . . . . . . . . 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 9360 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  2  e.  CC )
209208, 168, 180subdid 8735 . . . . . . . . . . . . . . . . . . . . 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 6090 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( 2  x.  M )  =  ( 2  x.  (
( P  -  1 )  /  2 ) )
21118nnzd 9750 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ph  ->  P  e.  ZZ )
212211ad2antrr 492 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  P  e.  ZZ )
213 peano2zm 9665 . . . . . . . . . . . . . . . . . . . . . . . . . 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 9752 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( P  - 
1 )  e.  CC )
216160, 162gt0ap0d 8951 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  2 #  0 )
217215, 208, 216divcanap2d 9116 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  ( ( P  - 
1 )  /  2
) )  =  ( P  -  1 ) )
218210, 217eqtrid 2283 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 2  x.  M )  =  ( P  -  1 ) )
219218oveq1d 6094 . . . . . . . . . . . . . . . . . . . . 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 2272 . . . . . . . . . . . . . . . . . . . 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 2279 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( P  -  ( ( 2  x.  n )  +  1 ) )  =  ( 2  x.  ( M  -  n ) ) )
222221oveq2d 6095 . . . . . . . . . . . . . . . . . 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 2280 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ph  /\  z  e.  S )  /\  (
n  e.  ZZ  /\  ( ( 2  x.  n )  +  1 )  =  ( 1st `  z ) ) )  ->  ( 1st `  z
)  =  ( P  -  ( 2  x.  ( M  -  n
) ) ) )
224 oveq2 6087 . . . . . . . . . . . . . . . . . . 19  |-  ( u  =  ( M  -  n )  ->  (
2  x.  u )  =  ( 2  x.  ( M  -  n
) ) )
225224oveq2d 6095 . . . . . . . . . . . . . . . . . 18  |-  ( u  =  ( M  -  n )  ->  ( P  -  ( 2  x.  u ) )  =  ( P  -  ( 2  x.  ( M  -  n )
) ) )
226225rspceeqv 2948 . . . . . . . . . . . . . . . . 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 415 . . . . . . . . . . . . . . . 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 2669 . . . . . . . . . . . . . . 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 2809 . . . . . . . . . . . 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 2283 . . . . . . . . . . 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 5697 . . . . . . . . . 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 3333 . . . . . . . . . . . . . . 15  |-  { z  e.  S  |  ( 1st `  z )  =  ( P  -  ( 2  x.  u
) ) }  C_  S
23536relopabiv 4901 . . . . . . . . . . . . . . 15  |-  Rel  S
236 relss 4860 . . . . . . . . . . . . . . 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 4882 . . . . . . . . . . . . . 14  |-  Rel  ( { ( P  -  ( 2  x.  u
) ) }  X.  ( 1 ... (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) ) )
23936eleq2i 2305 . . . . . . . . . . . . . . . . . 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 4397 . . . . . . . . . . . . . . . . . 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 405 . . . . . . . . . . . . . . . . . . 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 9754 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  +  1 )  e.  ZZ )
244243zred 9751 . . . . . . . . . . . . . . . . . . . . . . . . . 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 9300 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ph  ->  Q  e.  RR )
247246ad2antrr 492 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  Q  e.  RR )
248 nnre 9294 . . . . . . . . . . . . . . . . . . . . . . . . . 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 8763 . . . . . . . . . . . . . . . . . . . . . . . . 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 1278 . . . . . . . . . . . . . . . . . . . . . . . 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 8348 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  Q  e.  CC )
25475, 253mulcomd 8341 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  x.  Q )  =  ( Q  x.  P ) )
25577, 253mulcomd 8341 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  u
)  x.  Q )  =  ( Q  x.  ( 2  x.  u
) ) )
25619nnap0d 9333 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P #  0 )
257253, 75, 256divcanap1d 9115 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  P )  =  Q )
258257oveq1d 6094 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( ( Q  /  P )  x.  P
)  x.  ( 2  x.  u ) )  =  ( Q  x.  ( 2  x.  u
) ) )
259246, 18nndivred 9337 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  |-  ( ph  ->  ( Q  /  P
)  e.  RR )
260259adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  P )  e.  RR )
261260recnd 8348 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  P )  e.  CC )
262261, 75, 77mul32d 8473 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 2277 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  u
)  x.  Q )  =  ( ( ( Q  /  P )  x.  ( 2  x.  u ) )  x.  P ) )
264254, 263oveq12d 6097 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 8736 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  x.  Q )  =  ( ( P  x.  Q )  -  ( ( 2  x.  u )  x.  Q
) ) )
26626zred 9751 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  e.  RR )
267260, 266remulcld 8350 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  ( 2  x.  u ) )  e.  RR )
268267recnd 8348 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  ( 2  x.  u ) )  e.  CC )
269253, 268, 75subdird 8736 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 2281 . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 4140 . . . . . . . . . . . . . . . . . . . . . . . . . 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 8702 . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9300 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  P  e.  RR )
277275nngt0d 9331 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  0  <  P )
278 ltmul1 8914 . . . . . . . . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . . . . . . . . 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 8765 . . . . . . . . . . . . . . . . . . . . . . . . . . 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 1278 . . . . . . . . . . . . . . . . . . . . . . . . . 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 9750 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  Q  e.  ZZ )
285 nnz 9646 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( y  e.  NN  ->  y  e.  ZZ )
286 zsubcl 9668 . . . . . . . . . . . . . . . . . . . . . . . . . . 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 10701 . . . . . . . . . . . . . . . . . . . . . . . . . 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 603 . . . . . . . . . . . . . . . . . . . . . . . . 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 9682 . . . . . . . . . . . . . . . . . . . . . . . . . 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 603 . . . . . . . . . . . . . . . . . . . . . . . . 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 6090 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( 2  x.  N )  =  ( 2  x.  (
( Q  -  1 )  /  2 ) )
294 peano2rem 8587 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( Q  e.  RR  ->  ( Q  -  1 )  e.  RR )
295252, 294syl 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  -  1 )  e.  RR )
296295recnd 8348 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  -  1 )  e.  CC )
297 2cnd 9360 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9116 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  ( ( Q  -  1 )  /  2 ) )  =  ( Q  - 
1 ) )
300293, 299eqtrid 2283 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  =  ( Q  - 
1 ) )
301300oveq1d 6094 . . . . . . . . . . . . . . . . . . . . . . . . . . 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 8336 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  1  e.  CC )
30331zcnd 9752 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  e.  CC )
304253, 302, 303sub32d 8663 . . . . . . . . . . . . . . . . . . . . . . . . . . 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 8662 . . . . . . . . . . . . . . . . . . . . . . . . . . 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 2275 . . . . . . . . . . . . . . . . . . . . . . . . . 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 4140 . . . . . . . . . . . . . . . . . . . . . . . 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 468 . . . . . . . . . . . . . . . . . . . . . 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 16152 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  N  e.  NN )
312 nnmulcl 9308 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ( 2  e.  NN  /\  N  e.  NN )  ->  ( 2  x.  N
)  e.  NN )
3139, 311, 312sylancr 418 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ph  ->  ( 2  x.  N
)  e.  NN )
314313adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  e.  NN )
315314nnred 9300 . . . . . . . . . . . . . . . . . . . . . . . . . 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 9300 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  e.  RR )
31831zred 9751 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  e.  RR )
319311nncnd 9301 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ph  ->  N  e.  CC )
320319adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  e.  CC )
3213202timesd 9531 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  =  ( N  +  N ) )
322320, 320, 321mvrladdd 8687 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  N
)  -  N )  =  N )
323252rehalfcld 9535 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  2 )  e.  RR )
324252ltm1d 9256 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9192 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 4163 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  <  ( Q  /  2
) )
331317, 323, 330ltled 8439 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  <_  ( Q  /  2
) )
332253, 297, 75, 298div32apd 9138 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9535 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9751 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( |_ `  ( M  /  2 ) )  +  1 )  e.  RR )
33724zred 9751 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 10697 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 10414 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 8745 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( M  /  2 )  < 
u )
344 ltdivmul 9200 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39  |-  ( ( M  e.  RR  /\  u  e.  RR  /\  (
2  e.  RR  /\  0  <  2 ) )  ->  ( ( M  /  2 )  < 
u  <->  M  <  ( 2  x.  u ) ) )
345333, 337, 325, 326, 344syl112anc 1282 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 4164 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  1 )  /  2 )  <  ( 2  x.  u ) )
34819nnred 9300 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  P  e.  RR )
349 peano2rem 8587 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9200 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9681 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37  |-  ( ( 2  e.  ZZ  /\  ( 2  x.  u
)  e.  ZZ )  ->  ( 2  x.  ( 2  x.  u
) )  e.  ZZ )
35522, 26, 354sylancr 418 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  ( 2  x.  u ) )  e.  ZZ )
356 zlem1lt 9684 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 603 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9201 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9535 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  /  2 )  e.  RR )
363283nngt0d 9331 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  0  <  Q )
364 lemul2 9181 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 4150 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  2
)  x.  P )  <_  ( Q  x.  ( 2  x.  u
) ) )
368252, 266remulcld 8350 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  x.  ( 2  x.  u ) )  e.  RR )
36919nngt0d 9331 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  0  <  P )
370 lemuldiv 9205 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9152 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  x.  (
2  x.  u ) )  /  P )  =  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )
374372, 373breqtrd 4154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( Q  /  2 )  <_ 
( ( Q  /  P )  x.  (
2  x.  u ) ) )
375317, 323, 267, 331, 374letrd 8444 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  <_  ( ( Q  /  P )  x.  (
2  x.  u ) ) )
376311nnzd 9750 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ph  ->  N  e.  ZZ )
377376adantr 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  N  e.  ZZ )
378 flqge 10700 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 415 . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 4150 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( 2  x.  N
)  -  N )  <_  ( |_ `  ( ( Q  /  P )  x.  (
2  x.  u ) ) ) )
382315, 317, 318, 381subled 8870 . . . . . . . . . . . . . . . . . . . . . . . . 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 9750 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  e.  ZZ )
385384, 31zsubcld 9756 . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9751 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  (
( 2  x.  N
)  -  ( |_
`  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) )  e.  RR )
388311ad2antrr 492 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  N  e.  NN )
389388nnred 9300 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  y  e.  NN )  ->  N  e.  RR )
390 letr 8402 . . . . . . . . . . . . . . . . . . . . . . . . 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 1278 . . . . . . . . . . . . . . . . . . . . . . . 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 432 . . . . . . . . . . . . . . . . . . . . . . 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 398 . . . . . . . . . . . . . . . . . . . . . 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 456 . . . . . . . . . . . . . . . . . . . 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 9756 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  e.  ZZ )
401 elfzle2 10415 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( u  e.  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M )  ->  u  <_  M )
402401adantl 277 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  u  <_  M )
403402, 6breqtrdi 4169 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  u  <_  ( ( P  - 
1 )  /  2
) )
404 lemuldiv2 9206 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9256 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  1 )  <  P )
408266, 350, 348, 406, 407lelttrd 8445 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  u )  <  P )
409266, 348posdifd 8854 . . . . . . . . . . . . . . . . . . . . . . . . . 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 9637 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( P  -  ( 2  x.  u ) )  e.  NN  <->  ( ( P  -  ( 2  x.  u ) )  e.  ZZ  /\  0  <  ( P  -  (
2  x.  u ) ) ) )
412400, 410, 411sylanbrc 421 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  ( 2  x.  u ) )  e.  NN )
41375, 77, 302sub32d 8663 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  (
2  x.  u ) )  -  1 )  =  ( ( P  -  1 )  -  ( 2  x.  u
) ) )
4146, 6oveq12i 6091 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 9752 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( P  -  1 )  e.  CC )
4174162halvesd 9534 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( ( P  - 
1 )  /  2
)  +  ( ( P  -  1 )  /  2 ) )  =  ( P  - 
1 ) )
418414, 417eqtrid 2283 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( M  +  M )  =  ( P  - 
1 ) )
419418oveq1d 6094 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 8633 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( M  +  M
)  -  M )  =  M )
422419, 421eqtr3d 2273 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  1 )  -  M )  =  M )
423422, 346eqbrtrd 4150 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  1 )  -  M )  <  ( 2  x.  u ) )
424350, 333, 266, 423ltsub23d 8872 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( P  -  1 )  -  ( 2  x.  u ) )  <  M )
425413, 424eqbrtrd 4150 . . . . . . . . . . . . . . . . . . . . . . . . 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 9750 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  M  e.  ZZ )
428 zlem1lt 9684 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( P  -  (
2  x.  u ) )  e.  ZZ  /\  M  e.  ZZ )  ->  ( ( P  -  ( 2  x.  u
) )  <_  M  <->  ( ( P  -  (
2  x.  u ) )  -  1 )  <  M ) )
429400, 427, 428syl2anc 415 . . . . . . . . . . . . . . . . . . . . . . . . 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 10479 . . . . . . . . . . . . . . . . . . . . . . . . 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 957 . . . . . . . . . . . . . . . . . . . . . . 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 2315 . . . . . . . . . . . . . . . . . . . . 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 492 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  ->  N  e.  ZZ )
438 fznn 10479 . . . . . . . . . . . . . . . . . . . . 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 6094 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  /\  x  =  ( P  -  ( 2  x.  u
) ) )  -> 
( x  x.  Q
)  =  ( ( P  -  ( 2  x.  u ) )  x.  Q ) )
442441breq2d 4140 . . . . . . . . . . . . . . . . . . 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 477 . . . . . . . . . . . . . . . . . 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 10479 . . . . . . . . . . . . . . . . . . 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 456 . . . . . . . . . . . . . . 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 2824 . . . . . . . . . . . . . . . . . . 19  |-  x  e. 
_V
451 vex 2824 . . . . . . . . . . . . . . . . . . 19  |-  y  e. 
_V
452450, 451op1std 6376 . . . . . . . . . . . . . . . . . 18  |-  ( z  =  <. x ,  y
>.  ->  ( 1st `  z
)  =  x )
453452eqeq1d 2247 . . . . . . . . . . . . . . . . 17  |-  ( z  =  <. x ,  y
>.  ->  ( ( 1st `  z )  =  ( P  -  ( 2  x.  u ) )  <-> 
x  =  ( P  -  ( 2  x.  u ) ) ) )
454453elrab 2982 . . . . . . . . . . . . . . . 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 4802 . . . . . . . . . . . . . . . 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 3725 . . . . . . . . . . . . . . . . 17  |-  ( x  e.  { ( P  -  ( 2  x.  u ) ) }  <-> 
x  =  ( P  -  ( 2  x.  u ) ) )
458457anbi1i 462 . . . . . . . . . . . . . . . 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 4869 . . . . . . . . . . . . 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 5697 . . . . . . . . . . . 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 9654 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  1  e.  ZZ )
464463, 385fzfigd 10851 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
1 ... ( ( 2  x.  N )  -  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u ) ) ) ) )  e.  Fin )
465 xpsnen2g 7121 . . . . . . . . . . . . . 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 415 . . . . . . . . . . . . 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 2316 . . . . . . . . . . . . . 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 11206 . . . . . . . . . . . . . 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 415 . . . . . . . . . . . . 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 9180 . . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . . 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 9202 . . . . . . . . . . . . . . . . . . . 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 1282 . . . . . . . . . . . . . . . . . . 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 4152 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
( Q  /  P
)  x.  ( 2  x.  u ) )  <  Q )
478 flqlt 10701 . . . . . . . . . . . . . . . . . 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 415 . . . . . . . . . . . . . . . . 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 9685 . . . . . . . . . . . . . . . . 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 415 . . . . . . . . . . . . . . . 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 4156 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) )  <_ 
( 2  x.  N
) )
485 eluz2 9910 . . . . . . . . . . . . . 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 1212 . . . . . . . . . . . . 13  |-  ( (
ph  /\  u  e.  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  ->  (
2  x.  N )  e.  ( ZZ>= `  ( |_ `  ( ( Q  /  P )  x.  ( 2  x.  u
) ) ) ) )
487 uznn0sub 9937 . . . . . . . . . . . . 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 11205 . . . . . . . . . . . . 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 2275 . . . . . . . . . . 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 12117 . . . . . . . . . 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 2280 . . . . . . . . 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 9301 . . . . . . . . . . 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 12202 . . . . . . . . 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 2273 . . . . . . . 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 6095 . . . . . . 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 9752 . . . . . . . 8  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( |_ `  (
( Q  /  P
)  x.  ( 2  x.  u ) ) )  e.  CC )
49914, 384fsumzcl 12152 . . . . . . . . 9  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  e.  ZZ )
500499zcnd 9752 . . . . . . . 8  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  e.  CC )
501498, 500pncan3d 8634 . . . . . . 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 12204 . . . . . . . . 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 415 . . . . . . . 8  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  =  ( ( `  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  x.  (
2  x.  N ) ) )
504 hashcl 11203 . . . . . . . . . . 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 9605 . . . . . . . . 9  |-  ( ph  ->  ( `  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  e.  CC )
507 2cnd 9360 . . . . . . . . 9  |-  ( ph  ->  2  e.  CC )
508506, 507, 319mul12d 8472 . . . . . . . 8  |-  ( ph  ->  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  ( 2  x.  N ) )  =  ( 2  x.  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) ) )
509503, 508eqtrd 2271 . . . . . . 7  |-  ( ph  -> 
sum_ u  e.  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) ( 2  x.  N
)  =  ( 2  x.  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) ) )
510497, 501, 5093eqtrd 2275 . . . . . 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 6095 . . . . 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 9749 . . . . . . 7  |-  ( ph  ->  ( `  ( (
( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  e.  ZZ )
514513, 376zmulcld 9757 . . . . . 6  |-  ( ph  ->  ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N )  e.  ZZ )
515 expmulzap 11005 . . . . . 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 1279 . . . . 5  |-  ( ph  ->  ( -u 1 ^ ( 2  x.  (
( `  ( ( ( |_ `  ( M  /  2 ) )  +  1 ) ... M ) )  x.  N ) ) )  =  ( ( -u
1 ^ 2 ) ^ ( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) ) )
517 neg1sqe1 11054 . . . . . . 7  |-  ( -u
1 ^ 2 )  =  1
518517oveq1i 6089 . . . . . 6  |-  ( (
-u 1 ^ 2 ) ^ ( ( `  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  x.  N
) )  =  ( 1 ^ ( ( `  ( ( ( |_
`  ( M  / 
2 ) )  +  1 ) ... M
) )  x.  N
) )
519 1exp 10988 . . . . . . 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 2283 . . . . 5  |-  ( ph  ->  ( ( -u 1 ^ 2 ) ^
( ( `  (
( ( |_ `  ( M  /  2
) )  +  1 ) ... M ) )  x.  N ) )  =  1 )
522511, 516, 5213eqtrd 2275 . . . 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 2281 . . 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 11003 . . . 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 1279 . . 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 2272 . 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 8986 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 846    = wceq 1402    e. wcel 2209    =/= wne 2420   A.wral 2528   E.wrex 2529   {crab 2532    \ cdif 3217    C_ wss 3220   {csn 3708   <.cop 3711   U_ciun 4010  Disj wdisj 4104   class class class wbr 4128   {copab 4189    X. cxp 4770   Rel wrel 4777   ` cfv 5375  (class class class)co 6079   1stc1st 6366    ~~ cen 7014   Fincfn 7016   CCcc 8171   RRcr 8172   0cc0 8173   1c1 8174    + caddc 8176    x. cmul 8178    < clt 8354    <_ cle 8355    - cmin 8491   -ucneg 8492   # cap 8903    / cdiv 8996   NNcn 9287   2c2 9338   NN0cn0 9546   ZZcz 9627   ZZ>=cuz 9904   QQcq 10002   ...cfz 10394   |_cfl 10686   ^cexp 10958  ♯chash 11197   sum_csu 12102    || cdvds 12537   Primecprime 12868
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 623  ax-in2 624  ax-io 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-coll 4244  ax-sep 4247  ax-nul 4257  ax-pow 4309  ax-pr 4344  ax-un 4576  ax-setind 4682  ax-iinf 4733  ax-cnex 8264  ax-resscn 8265  ax-1cn 8266  ax-1re 8267  ax-icn 8268  ax-addcl 8269  ax-addrcl 8270  ax-mulcl 8271  ax-mulrcl 8272  ax-addcom 8273  ax-mulcom 8274  ax-addass 8275  ax-mulass 8276  ax-distr 8277  ax-i2m1 8278  ax-0lt1 8279  ax-1rid 8280  ax-0id 8281  ax-rnegex 8282  ax-precex 8283  ax-cnre 8284  ax-pre-ltirr 8285  ax-pre-ltwlin 8286  ax-pre-lttrn 8287  ax-pre-apti 8288  ax-pre-ltadd 8289  ax-pre-mulgt0 8290  ax-pre-mulext 8291  ax-arch 8292  ax-caucvg 8293
This theorem depends on definitions:  df-bi 117  df-dc 847  df-3or 1010  df-3an 1011  df-tru 1405  df-fal 1408  df-xor 1425  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ne 2421  df-nel 2516  df-ral 2533  df-rex 2534  df-reu 2535  df-rmo 2536  df-rab 2537  df-v 2823  df-sbc 3052  df-csb 3148  df-dif 3222  df-un 3224  df-in 3226  df-ss 3233  df-nul 3521  df-if 3639  df-pw 3690  df-sn 3714  df-pr 3715  df-op 3717  df-uni 3934  df-int 3969  df-iun 4012  df-disj 4105  df-br 4129  df-opab 4191  df-mpt 4192  df-tr 4228  df-id 4436  df-po 4439  df-iso 4440  df-iord 4509  df-on 4511  df-ilim 4512  df-suc 4514  df-iom 4736  df-xp 4778  df-rel 4779  df-cnv 4780  df-co 4781  df-dm 4782  df-rn 4783  df-res 4784  df-ima 4785  df-iota 5335  df-fun 5377  df-fn 5378  df-f 5379  df-f1 5380  df-fo 5381  df-f1o 5382  df-fv 5383  df-isom 5384  df-riota 6032  df-ov 6082  df-oprab 6083  df-mpo 6084  df-1st 6368  df-2nd 6369  df-recs 6570  df-irdg 6635  df-frec 6656  df-1o 6681  df-2o 6682  df-oadd 6685  df-er 6801  df-en 7017  df-dom 7018  df-fin 7019  df-pnf 8356  df-mnf 8357  df-xr 8358  df-ltxr 8359  df-le 8360  df-sub 8493  df-neg 8494  df-reap 8897  df-ap 8904  df-div 8997  df-inn 9288  df-2 9346  df-3 9347  df-4 9348  df-n0 9547  df-z 9628  df-uz 9905  df-q 10003  df-rp 10038  df-fz 10395  df-fzo 10533  df-fl 10688  df-mod 10743  df-seqfrec 10868  df-exp 10959  df-ihash 11198  df-cj 11590  df-re 11591  df-im 11592  df-rsqrt 11747  df-abs 11748  df-clim 12028  df-sumdc 12103  df-dvds 12538  df-prm 12869
This theorem is referenced by:  lgsquadlem2  16180
  Copyright terms: Public domain W3C validator