Users' Mathboxes Mathbox for Stefan O'Rear < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  diophin Structured version   Visualization version   Unicode version

Theorem diophin 37336
Description: If two sets are Diophantine, so is their intersection. (Contributed by Stefan O'Rear, 9-Oct-2014.) (Revised by Stefan O'Rear, 6-May-2015.)
Assertion
Ref Expression
diophin  |-  ( ( A  e.  (Dioph `  N )  /\  B  e.  (Dioph `  N )
)  ->  ( A  i^i  B )  e.  (Dioph `  N ) )

Proof of Theorem diophin
Dummy variables  a 
b  c  d  e  f  g are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eldiophelnn0 37327 . . 3  |-  ( A  e.  (Dioph `  N
)  ->  N  e.  NN0 )
2 id 22 . . . . . 6  |-  ( N  e.  NN0  ->  N  e. 
NN0 )
3 zex 11386 . . . . . . 7  |-  ZZ  e.  _V
4 difexg 4808 . . . . . . 7  |-  ( ZZ  e.  _V  ->  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) )  e.  _V )
53, 4mp1i 13 . . . . . 6  |-  ( N  e.  NN0  ->  ( ZZ 
\  ( ZZ>= `  ( N  +  1 ) ) )  e.  _V )
6 ominf 8172 . . . . . . 7  |-  -.  om  e.  Fin
7 nn0z 11400 . . . . . . . 8  |-  ( N  e.  NN0  ->  N  e.  ZZ )
8 lzenom 37333 . . . . . . . 8  |-  ( N  e.  ZZ  ->  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) )  ~~  om )
9 enfi 8176 . . . . . . . 8  |-  ( ( ZZ  \  ( ZZ>= `  ( N  +  1
) ) )  ~~  om 
->  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  e.  Fin  <->  om  e.  Fin ) )
107, 8, 93syl 18 . . . . . . 7  |-  ( N  e.  NN0  ->  ( ( ZZ  \  ( ZZ>= `  ( N  +  1
) ) )  e. 
Fin 
<->  om  e.  Fin )
)
116, 10mtbiri 317 . . . . . 6  |-  ( N  e.  NN0  ->  -.  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) )  e.  Fin )
12 fz1eqin 37332 . . . . . . 7  |-  ( N  e.  NN0  ->  ( 1 ... N )  =  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) )
13 inss1 3833 . . . . . . 7  |-  ( ( ZZ  \  ( ZZ>= `  ( N  +  1
) ) )  i^i 
NN )  C_  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) )
1412, 13syl6eqss 3655 . . . . . 6  |-  ( N  e.  NN0  ->  ( 1 ... N )  C_  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )
15 eldioph2b 37326 . . . . . 6  |-  ( ( ( N  e.  NN0  /\  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) )  e.  _V )  /\  ( -.  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) )  e.  Fin  /\  ( 1 ... N
)  C_  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  -> 
( A  e.  (Dioph `  N )  <->  E. a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) A  =  { c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 ) } ) )
162, 5, 11, 14, 15syl22anc 1327 . . . . 5  |-  ( N  e.  NN0  ->  ( A  e.  (Dioph `  N
)  <->  E. a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) A  =  {
c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) } ) )
17 nnex 11026 . . . . . . 7  |-  NN  e.  _V
1817a1i 11 . . . . . 6  |-  ( N  e.  NN0  ->  NN  e.  _V )
19 1z 11407 . . . . . . 7  |-  1  e.  ZZ
20 nnuz 11723 . . . . . . . 8  |-  NN  =  ( ZZ>= `  1 )
2120uzinf 12764 . . . . . . 7  |-  ( 1  e.  ZZ  ->  -.  NN  e.  Fin )
2219, 21mp1i 13 . . . . . 6  |-  ( N  e.  NN0  ->  -.  NN  e.  Fin )
23 elfznn 12370 . . . . . . . 8  |-  ( a  e.  ( 1 ... N )  ->  a  e.  NN )
2423ssriv 3607 . . . . . . 7  |-  ( 1 ... N )  C_  NN
2524a1i 11 . . . . . 6  |-  ( N  e.  NN0  ->  ( 1 ... N )  C_  NN )
26 eldioph2b 37326 . . . . . 6  |-  ( ( ( N  e.  NN0  /\  NN  e.  _V )  /\  ( -.  NN  e.  Fin  /\  ( 1 ... N )  C_  NN ) )  ->  ( B  e.  (Dioph `  N
)  <->  E. b  e.  (mzPoly `  NN ) B  =  { c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) } ) )
272, 18, 22, 25, 26syl22anc 1327 . . . . 5  |-  ( N  e.  NN0  ->  ( B  e.  (Dioph `  N
)  <->  E. b  e.  (mzPoly `  NN ) B  =  { c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) } ) )
2816, 27anbi12d 747 . . . 4  |-  ( N  e.  NN0  ->  ( ( A  e.  (Dioph `  N )  /\  B  e.  (Dioph `  N )
)  <->  ( E. a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) A  =  { c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 ) }  /\  E. b  e.  (mzPoly `  NN ) B  =  {
c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  (
1 ... N ) )  /\  ( b `  e )  =  0 ) } ) ) )
29 reeanv 3107 . . . . 5  |-  ( E. a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) E. b  e.  (mzPoly `  NN )
( A  =  {
c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  /\  B  =  {
c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  (
1 ... N ) )  /\  ( b `  e )  =  0 ) } )  <->  ( E. a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) A  =  { c  |  E. d  e.  ( NN0  ^m  ( ZZ 
\  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  /\  E. b  e.  (mzPoly `  NN ) B  =  { c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) } ) )
30 inab 3895 . . . . . . . . 9  |-  ( { c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  i^i  { c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) } )  =  { c  |  ( E. d  e.  ( NN0  ^m  ( ZZ 
\  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  /\  E. e  e.  ( NN0 
^m  NN ) ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) }
31 reeanv 3107 . . . . . . . . . . 11  |-  ( E. d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) E. e  e.  ( NN0  ^m  NN ) ( ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) )  <->  ( E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  (
1 ... N ) )  /\  ( b `  e )  =  0 ) ) )
32 simplrl 800 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  d  e.  ( NN0  ^m  ( ZZ 
\  ( ZZ>= `  ( N  +  1 ) ) ) ) )
33 simplrr 801 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  e  e.  ( NN0  ^m  NN ) )
3412eqcomd 2628 . . . . . . . . . . . . . . . . . . . . 21  |-  ( N  e.  NN0  ->  ( ( ZZ  \  ( ZZ>= `  ( N  +  1
) ) )  i^i 
NN )  =  ( 1 ... N ) )
3534reseq2d 5396 . . . . . . . . . . . . . . . . . . . 20  |-  ( N  e.  NN0  ->  ( d  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) )  =  ( d  |`  ( 1 ... N
) ) )
3635ad3antrrr 766 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( d  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) )  =  ( d  |`  ( 1 ... N
) ) )
3734reseq2d 5396 . . . . . . . . . . . . . . . . . . . . 21  |-  ( N  e.  NN0  ->  ( e  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) )  =  ( e  |`  ( 1 ... N
) ) )
3837ad3antrrr 766 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( e  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) )  =  ( e  |`  ( 1 ... N
) ) )
39 simprrl 804 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  c  =  ( e  |`  (
1 ... N ) ) )
40 simprll 802 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  c  =  ( d  |`  (
1 ... N ) ) )
4138, 39, 403eqtr2d 2662 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( e  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) )  =  ( d  |`  ( 1 ... N
) ) )
4236, 41eqtr4d 2659 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( d  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) )  =  ( e  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) ) )
43 elmapresaun 37334 . . . . . . . . . . . . . . . . . 18  |-  ( ( d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN )  /\  ( d  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) )  =  ( e  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) ) )  ->  (
d  u.  e )  e.  ( NN0  ^m  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  u.  NN ) ) )
4432, 33, 42, 43syl3anc 1326 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( d  u.  e )  e.  ( NN0  ^m  ( ( ZZ  \  ( ZZ>= `  ( N  +  1
) ) )  u.  NN ) ) )
4520uneq2i 3764 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ZZ  \  ( ZZ>= `  ( N  +  1
) ) )  u.  NN )  =  ( ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) )  u.  ( ZZ>= `  1
) )
4619a1i 11 . . . . . . . . . . . . . . . . . . . . 21  |-  ( N  e.  NN0  ->  1  e.  ZZ )
47 nn0p1nn 11332 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( N  e.  NN0  ->  ( N  +  1 )  e.  NN )
4847nnge1d 11063 . . . . . . . . . . . . . . . . . . . . 21  |-  ( N  e.  NN0  ->  1  <_ 
( N  +  1 ) )
49 lzunuz 37331 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( N  e.  ZZ  /\  1  e.  ZZ  /\  1  <_  ( N  +  1 ) )  ->  (
( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) )  u.  ( ZZ>= `  1
) )  =  ZZ )
507, 46, 48, 49syl3anc 1326 . . . . . . . . . . . . . . . . . . . 20  |-  ( N  e.  NN0  ->  ( ( ZZ  \  ( ZZ>= `  ( N  +  1
) ) )  u.  ( ZZ>= `  1 )
)  =  ZZ )
5145, 50syl5eq 2668 . . . . . . . . . . . . . . . . . . 19  |-  ( N  e.  NN0  ->  ( ( ZZ  \  ( ZZ>= `  ( N  +  1
) ) )  u.  NN )  =  ZZ )
5251oveq2d 6666 . . . . . . . . . . . . . . . . . 18  |-  ( N  e.  NN0  ->  ( NN0 
^m  ( ( ZZ 
\  ( ZZ>= `  ( N  +  1 ) ) )  u.  NN ) )  =  ( NN0  ^m  ZZ ) )
5352ad3antrrr 766 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( NN0  ^m  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  u.  NN ) )  =  ( NN0 
^m  ZZ ) )
5444, 53eleqtrd 2703 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( d  u.  e )  e.  ( NN0  ^m  ZZ ) )
55 unidm 3756 . . . . . . . . . . . . . . . . . . 19  |-  ( c  u.  c )  =  c
5640, 39uneq12d 3768 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( c  u.  c )  =  ( ( d  |`  (
1 ... N ) )  u.  ( e  |`  ( 1 ... N
) ) ) )
5755, 56syl5eqr 2670 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  c  =  ( ( d  |`  ( 1 ... N
) )  u.  (
e  |`  ( 1 ... N ) ) ) )
58 resundir 5411 . . . . . . . . . . . . . . . . . 18  |-  ( ( d  u.  e )  |`  ( 1 ... N
) )  =  ( ( d  |`  (
1 ... N ) )  u.  ( e  |`  ( 1 ... N
) ) )
5957, 58syl6eqr 2674 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  c  =  ( ( d  u.  e )  |`  (
1 ... N ) ) )
60 uncom 3757 . . . . . . . . . . . . . . . . . . . . 21  |-  ( d  u.  e )  =  ( e  u.  d
)
6160reseq1i 5392 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( d  u.  e )  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  =  ( ( e  u.  d )  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )
62 incom 3805 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( NN 
i^i  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  =  ( ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) )  i^i  NN )
6362, 34syl5eq 2668 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( N  e.  NN0  ->  ( NN 
i^i  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  =  ( 1 ... N ) )
6463reseq2d 5396 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( N  e.  NN0  ->  ( e  |`  ( NN  i^i  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  ( e  |`  ( 1 ... N
) ) )
6564ad3antrrr 766 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( e  |`  ( NN  i^i  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  ( e  |`  ( 1 ... N
) ) )
6663reseq2d 5396 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( N  e.  NN0  ->  ( d  |`  ( NN  i^i  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  ( d  |`  ( 1 ... N
) ) )
6766ad3antrrr 766 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( d  |`  ( NN  i^i  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  ( d  |`  ( 1 ... N
) ) )
6867, 40, 393eqtr2d 2662 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( d  |`  ( NN  i^i  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  ( e  |`  ( 1 ... N
) ) )
6965, 68eqtr4d 2659 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( e  |`  ( NN  i^i  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  ( d  |`  ( NN  i^i  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ) )
70 elmapresaunres2 37335 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( e  e.  ( NN0 
^m  NN )  /\  d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  ( e  |`  ( NN  i^i  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  ( d  |`  ( NN  i^i  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ) )  ->  ( (
e  u.  d )  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  =  d )
7133, 32, 69, 70syl3anc 1326 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( (
e  u.  d )  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  =  d )
7261, 71syl5eq 2668 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( (
d  u.  e )  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  =  d )
7372fveq2d 6195 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( a `  ( ( d  u.  e )  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  ( a `  d ) )
74 simprlr 803 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( a `  d )  =  0 )
7573, 74eqtrd 2656 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( a `  ( ( d  u.  e )  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0 )
76 elmapresaunres2 37335 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN )  /\  ( d  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) )  =  ( e  |`  ( ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) )  i^i  NN ) ) )  ->  (
( d  u.  e
)  |`  NN )  =  e )
7732, 33, 42, 76syl3anc 1326 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( (
d  u.  e )  |`  NN )  =  e )
7877fveq2d 6195 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( b `  ( ( d  u.  e )  |`  NN ) )  =  ( b `
 e ) )
79 simprrr 805 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( b `  e )  =  0 )
8078, 79eqtrd 2656 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( b `  ( ( d  u.  e )  |`  NN ) )  =  0 )
8159, 75, 80jca32 558 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  ( c  =  ( ( d  u.  e )  |`  ( 1 ... N
) )  /\  (
( a `  (
( d  u.  e
)  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( ( d  u.  e )  |`  NN ) )  =  0 ) ) )
82 reseq1 5390 . . . . . . . . . . . . . . . . . . 19  |-  ( f  =  ( d  u.  e )  ->  (
f  |`  ( 1 ... N ) )  =  ( ( d  u.  e )  |`  (
1 ... N ) ) )
8382eqeq2d 2632 . . . . . . . . . . . . . . . . . 18  |-  ( f  =  ( d  u.  e )  ->  (
c  =  ( f  |`  ( 1 ... N
) )  <->  c  =  ( ( d  u.  e )  |`  (
1 ... N ) ) ) )
84 reseq1 5390 . . . . . . . . . . . . . . . . . . . . 21  |-  ( f  =  ( d  u.  e )  ->  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  =  ( ( d  u.  e
)  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )
8584fveq2d 6195 . . . . . . . . . . . . . . . . . . . 20  |-  ( f  =  ( d  u.  e )  ->  (
a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  ( a `  ( ( d  u.  e )  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) )
8685eqeq1d 2624 . . . . . . . . . . . . . . . . . . 19  |-  ( f  =  ( d  u.  e )  ->  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  <->  ( a `  ( ( d  u.  e )  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0 ) )
87 reseq1 5390 . . . . . . . . . . . . . . . . . . . . 21  |-  ( f  =  ( d  u.  e )  ->  (
f  |`  NN )  =  ( ( d  u.  e )  |`  NN ) )
8887fveq2d 6195 . . . . . . . . . . . . . . . . . . . 20  |-  ( f  =  ( d  u.  e )  ->  (
b `  ( f  |`  NN ) )  =  ( b `  (
( d  u.  e
)  |`  NN ) ) )
8988eqeq1d 2624 . . . . . . . . . . . . . . . . . . 19  |-  ( f  =  ( d  u.  e )  ->  (
( b `  (
f  |`  NN ) )  =  0  <->  ( b `  ( ( d  u.  e )  |`  NN ) )  =  0 ) )
9086, 89anbi12d 747 . . . . . . . . . . . . . . . . . 18  |-  ( f  =  ( d  u.  e )  ->  (
( ( a `  ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  (
b `  ( f  |`  NN ) )  =  0 )  <->  ( (
a `  ( (
d  u.  e )  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( ( d  u.  e )  |`  NN ) )  =  0 ) ) )
9183, 90anbi12d 747 . . . . . . . . . . . . . . . . 17  |-  ( f  =  ( d  u.  e )  ->  (
( c  =  ( f  |`  ( 1 ... N ) )  /\  ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( f  |`  NN ) )  =  0 ) )  <->  ( c  =  ( ( d  u.  e )  |`  (
1 ... N ) )  /\  ( ( a `
 ( ( d  u.  e )  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( ( d  u.  e )  |`  NN ) )  =  0 ) ) ) )
9291rspcev 3309 . . . . . . . . . . . . . . . 16  |-  ( ( ( d  u.  e
)  e.  ( NN0 
^m  ZZ )  /\  ( c  =  ( ( d  u.  e
)  |`  ( 1 ... N ) )  /\  ( ( a `  ( ( d  u.  e )  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  (
b `  ( (
d  u.  e )  |`  NN ) )  =  0 ) ) )  ->  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  ( 1 ... N ) )  /\  ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( f  |`  NN ) )  =  0 ) ) )
9354, 81, 92syl2anc 693 . . . . . . . . . . . . . . 15  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  /\  ( ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )  ->  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( f  |`  NN ) )  =  0 ) ) )
9493ex 450 . . . . . . . . . . . . . 14  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  (
d  e.  ( NN0 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  /\  e  e.  ( NN0  ^m  NN ) ) )  -> 
( ( ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) )  ->  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( f  |`  NN ) )  =  0 ) ) ) )
9594rexlimdvva 3038 . . . . . . . . . . . . 13  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ( E. d  e.  ( NN0  ^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) E. e  e.  ( NN0  ^m  NN ) ( ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) )  ->  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( f  |`  NN ) )  =  0 ) ) ) )
96 simpr 477 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  f  e.  ( NN0  ^m  ZZ ) )
97 difss 3737 . . . . . . . . . . . . . . . . . 18  |-  ( ZZ 
\  ( ZZ>= `  ( N  +  1 ) ) )  C_  ZZ
98 elmapssres 7882 . . . . . . . . . . . . . . . . . 18  |-  ( ( f  e.  ( NN0 
^m  ZZ )  /\  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) 
C_  ZZ )  -> 
( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )
9996, 97, 98sylancl 694 . . . . . . . . . . . . . . . . 17  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  e.  ( NN0  ^m  ( ZZ 
\  ( ZZ>= `  ( N  +  1 ) ) ) ) )
10099adantr 481 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )
101 nnssz 11397 . . . . . . . . . . . . . . . . . 18  |-  NN  C_  ZZ
102 elmapssres 7882 . . . . . . . . . . . . . . . . . 18  |-  ( ( f  e.  ( NN0 
^m  ZZ )  /\  NN  C_  ZZ )  -> 
( f  |`  NN )  e.  ( NN0  ^m  NN ) )
10396, 101, 102sylancl 694 . . . . . . . . . . . . . . . . 17  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
f  |`  NN )  e.  ( NN0  ^m  NN ) )
104103adantr 481 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
( f  |`  NN )  e.  ( NN0  ^m  NN ) )
105 simprl 794 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
c  =  ( f  |`  ( 1 ... N
) ) )
10614ad3antrrr 766 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
( 1 ... N
)  C_  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )
107106resabs1d 5428 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
( ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  |`  ( 1 ... N ) )  =  ( f  |`  ( 1 ... N
) ) )
108105, 107eqtr4d 2659 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
c  =  ( ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  |`  (
1 ... N ) ) )
109 simprrl 804 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0 )
110108, 109jca 554 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
( c  =  ( ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  |`  ( 1 ... N
) )  /\  (
a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0 ) )
111 resabs1 5427 . . . . . . . . . . . . . . . . . . 19  |-  ( ( 1 ... N ) 
C_  NN  ->  ( ( f  |`  NN )  |`  ( 1 ... N
) )  =  ( f  |`  ( 1 ... N ) ) )
11224, 111mp1i 13 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
( ( f  |`  NN )  |`  ( 1 ... N ) )  =  ( f  |`  ( 1 ... N
) ) )
113105, 112eqtr4d 2659 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
c  =  ( ( f  |`  NN )  |`  ( 1 ... N
) ) )
114 simprrr 805 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
( b `  (
f  |`  NN ) )  =  0 )
115110, 113, 114jca32 558 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  -> 
( ( c  =  ( ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  |`  ( 1 ... N ) )  /\  ( a `  ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0 )  /\  ( c  =  ( ( f  |`  NN )  |`  ( 1 ... N
) )  /\  (
b `  ( f  |`  NN ) )  =  0 ) ) )
116 reseq1 5390 . . . . . . . . . . . . . . . . . . . 20  |-  ( d  =  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  ->  ( d  |`  ( 1 ... N
) )  =  ( ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  |`  ( 1 ... N
) ) )
117116eqeq2d 2632 . . . . . . . . . . . . . . . . . . 19  |-  ( d  =  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  ->  ( c  =  ( d  |`  ( 1 ... N
) )  <->  c  =  ( ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  |`  ( 1 ... N ) ) ) )
118 fveq2 6191 . . . . . . . . . . . . . . . . . . . 20  |-  ( d  =  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  ->  ( a `  d )  =  ( a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) )
119118eqeq1d 2624 . . . . . . . . . . . . . . . . . . 19  |-  ( d  =  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  ->  ( (
a `  d )  =  0  <->  ( a `  ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0 ) )
120117, 119anbi12d 747 . . . . . . . . . . . . . . . . . 18  |-  ( d  =  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  ->  ( (
c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  <->  ( c  =  ( ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  |`  ( 1 ... N ) )  /\  ( a `  ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0 ) ) )
121120anbi1d 741 . . . . . . . . . . . . . . . . 17  |-  ( d  =  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  ->  ( (
( c  =  ( d  |`  ( 1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) )  <-> 
( ( c  =  ( ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  |`  ( 1 ... N ) )  /\  ( a `  ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) ) ) )
122 reseq1 5390 . . . . . . . . . . . . . . . . . . . 20  |-  ( e  =  ( f  |`  NN )  ->  ( e  |`  ( 1 ... N
) )  =  ( ( f  |`  NN )  |`  ( 1 ... N
) ) )
123122eqeq2d 2632 . . . . . . . . . . . . . . . . . . 19  |-  ( e  =  ( f  |`  NN )  ->  ( c  =  ( e  |`  ( 1 ... N
) )  <->  c  =  ( ( f  |`  NN )  |`  ( 1 ... N ) ) ) )
124 fveq2 6191 . . . . . . . . . . . . . . . . . . . 20  |-  ( e  =  ( f  |`  NN )  ->  ( b `
 e )  =  ( b `  (
f  |`  NN ) ) )
125124eqeq1d 2624 . . . . . . . . . . . . . . . . . . 19  |-  ( e  =  ( f  |`  NN )  ->  ( ( b `  e )  =  0  <->  ( b `  ( f  |`  NN ) )  =  0 ) )
126123, 125anbi12d 747 . . . . . . . . . . . . . . . . . 18  |-  ( e  =  ( f  |`  NN )  ->  ( ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 )  <->  ( c  =  ( ( f  |`  NN )  |`  (
1 ... N ) )  /\  ( b `  ( f  |`  NN ) )  =  0 ) ) )
127126anbi2d 740 . . . . . . . . . . . . . . . . 17  |-  ( e  =  ( f  |`  NN )  ->  ( ( ( c  =  ( ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  |`  ( 1 ... N
) )  /\  (
a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) )  <-> 
( ( c  =  ( ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  |`  ( 1 ... N ) )  /\  ( a `  ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0 )  /\  ( c  =  ( ( f  |`  NN )  |`  ( 1 ... N
) )  /\  (
b `  ( f  |`  NN ) )  =  0 ) ) ) )
128121, 127rspc2ev 3324 . . . . . . . . . . . . . . . 16  |-  ( ( ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  ( f  |`  NN )  e.  ( NN0  ^m  NN )  /\  (
( c  =  ( ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  |`  ( 1 ... N
) )  /\  (
a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0 )  /\  ( c  =  ( ( f  |`  NN )  |`  (
1 ... N ) )  /\  ( b `  ( f  |`  NN ) )  =  0 ) ) )  ->  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) E. e  e.  ( NN0 
^m  NN ) ( ( c  =  ( d  |`  ( 1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) )
129100, 104, 115, 128syl3anc 1326 . . . . . . . . . . . . . . 15  |-  ( ( ( ( N  e. 
NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  /\  (
c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) ) )  ->  E. d  e.  ( NN0  ^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) E. e  e.  ( NN0  ^m  NN ) ( ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) ) )
130129ex 450 . . . . . . . . . . . . . 14  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
( c  =  ( f  |`  ( 1 ... N ) )  /\  ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( f  |`  NN ) )  =  0 ) )  ->  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) E. e  e.  ( NN0 
^m  NN ) ( ( c  =  ( d  |`  ( 1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) ) )
131130rexlimdva 3031 . . . . . . . . . . . . 13  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ( E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) )  ->  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) E. e  e.  ( NN0 
^m  NN ) ( ( c  =  ( d  |`  ( 1 ... N ) )  /\  ( a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) ) )
13295, 131impbid 202 . . . . . . . . . . . 12  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ( E. d  e.  ( NN0  ^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) E. e  e.  ( NN0  ^m  NN ) ( ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) )  <->  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( f  |`  NN ) )  =  0 ) ) ) )
133 simplrl 800 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )
134 mzpf 37299 . . . . . . . . . . . . . . . . . . 19  |-  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  -> 
a : ( ZZ 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) --> ZZ )
135133, 134syl 17 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  a : ( ZZ  ^m  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) --> ZZ )
136 nn0ssz 11398 . . . . . . . . . . . . . . . . . . . . . 22  |-  NN0  C_  ZZ
137 mapss 7900 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ZZ  e.  _V  /\  NN0  C_  ZZ )  ->  ( NN0  ^m  ZZ )  C_  ( ZZ  ^m  ZZ ) )
1383, 136, 137mp2an 708 . . . . . . . . . . . . . . . . . . . . 21  |-  ( NN0 
^m  ZZ )  C_  ( ZZ  ^m  ZZ )
139138sseli 3599 . . . . . . . . . . . . . . . . . . . 20  |-  ( f  e.  ( NN0  ^m  ZZ )  ->  f  e.  ( ZZ  ^m  ZZ ) )
140 elmapssres 7882 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( f  e.  ( ZZ 
^m  ZZ )  /\  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) 
C_  ZZ )  -> 
( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) )  e.  ( ZZ  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )
141139, 97, 140sylancl 694 . . . . . . . . . . . . . . . . . . 19  |-  ( f  e.  ( NN0  ^m  ZZ )  ->  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  e.  ( ZZ 
^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )
142141adantl 482 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  e.  ( ZZ  ^m  ( ZZ 
\  ( ZZ>= `  ( N  +  1 ) ) ) ) )
143135, 142ffvelrnd 6360 . . . . . . . . . . . . . . . . 17  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  e.  ZZ )
144143zred 11482 . . . . . . . . . . . . . . . 16  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  e.  RR )
145 simplrr 801 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  b  e.  (mzPoly `  NN )
)
146 mzpf 37299 . . . . . . . . . . . . . . . . . . 19  |-  ( b  e.  (mzPoly `  NN )  ->  b : ( ZZ  ^m  NN ) --> ZZ )
147145, 146syl 17 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  b : ( ZZ  ^m  NN ) --> ZZ )
148 elmapssres 7882 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( f  e.  ( ZZ 
^m  ZZ )  /\  NN  C_  ZZ )  -> 
( f  |`  NN )  e.  ( ZZ  ^m  NN ) )
149139, 101, 148sylancl 694 . . . . . . . . . . . . . . . . . . 19  |-  ( f  e.  ( NN0  ^m  ZZ )  ->  ( f  |`  NN )  e.  ( ZZ  ^m  NN ) )
150149adantl 482 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
f  |`  NN )  e.  ( ZZ  ^m  NN ) )
151147, 150ffvelrnd 6360 . . . . . . . . . . . . . . . . 17  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
b `  ( f  |`  NN ) )  e.  ZZ )
152151zred 11482 . . . . . . . . . . . . . . . 16  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
b `  ( f  |`  NN ) )  e.  RR )
153 sumsqeq0 12942 . . . . . . . . . . . . . . . 16  |-  ( ( ( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  e.  RR  /\  ( b `
 ( f  |`  NN ) )  e.  RR )  ->  ( ( ( a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( f  |`  NN ) )  =  0 )  <-> 
( ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( f  |`  NN ) ) ^
2 ) )  =  0 ) )
154144, 152, 153syl2anc 693 . . . . . . . . . . . . . . 15  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
( ( a `  ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  (
b `  ( f  |`  NN ) )  =  0 )  <->  ( (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
f  |`  NN ) ) ^ 2 ) )  =  0 ) )
155139adantl 482 . . . . . . . . . . . . . . . . 17  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  f  e.  ( ZZ  ^m  ZZ ) )
156 reseq1 5390 . . . . . . . . . . . . . . . . . . . . 21  |-  ( g  =  f  ->  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) )  =  ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )
157156fveq2d 6195 . . . . . . . . . . . . . . . . . . . 20  |-  ( g  =  f  ->  (
a `  ( g  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  ( a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) )
158157oveq1d 6665 . . . . . . . . . . . . . . . . . . 19  |-  ( g  =  f  ->  (
( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  =  ( ( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 ) )
159 reseq1 5390 . . . . . . . . . . . . . . . . . . . . 21  |-  ( g  =  f  ->  (
g  |`  NN )  =  ( f  |`  NN ) )
160159fveq2d 6195 . . . . . . . . . . . . . . . . . . . 20  |-  ( g  =  f  ->  (
b `  ( g  |`  NN ) )  =  ( b `  (
f  |`  NN ) ) )
161160oveq1d 6665 . . . . . . . . . . . . . . . . . . 19  |-  ( g  =  f  ->  (
( b `  (
g  |`  NN ) ) ^ 2 )  =  ( ( b `  ( f  |`  NN ) ) ^ 2 ) )
162158, 161oveq12d 6668 . . . . . . . . . . . . . . . . . 18  |-  ( g  =  f  ->  (
( ( a `  ( g  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^ 2 ) )  =  ( ( ( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
f  |`  NN ) ) ^ 2 ) ) )
163 eqid 2622 . . . . . . . . . . . . . . . . . 18  |-  ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
g  |`  NN ) ) ^ 2 ) ) )  =  ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
g  |`  NN ) ) ^ 2 ) ) )
164 ovex 6678 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
f  |`  NN ) ) ^ 2 ) )  e.  _V
165162, 163, 164fvmpt 6282 . . . . . . . . . . . . . . . . 17  |-  ( f  e.  ( ZZ  ^m  ZZ )  ->  ( ( g  e.  ( ZZ 
^m  ZZ )  |->  ( ( ( a `  ( g  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^ 2 ) ) ) `  f
)  =  ( ( ( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
f  |`  NN ) ) ^ 2 ) ) )
166155, 165syl 17 . . . . . . . . . . . . . . . 16  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
( g  e.  ( ZZ  ^m  ZZ ) 
|->  ( ( ( a `
 ( g  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^
2 ) ) ) `
 f )  =  ( ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( f  |`  NN ) ) ^
2 ) ) )
167166eqeq1d 2624 . . . . . . . . . . . . . . 15  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
( ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( ( a `  ( g  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^
2 ) ) ) `
 f )  =  0  <->  ( ( ( a `  ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( f  |`  NN ) ) ^
2 ) )  =  0 ) )
168154, 167bitr4d 271 . . . . . . . . . . . . . 14  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
( ( a `  ( f  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  (
b `  ( f  |`  NN ) )  =  0 )  <->  ( (
g  e.  ( ZZ 
^m  ZZ )  |->  ( ( ( a `  ( g  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^ 2 ) ) ) `  f
)  =  0 ) )
169168anbi2d 740 . . . . . . . . . . . . 13  |-  ( ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  /\  f  e.  ( NN0  ^m  ZZ ) )  ->  (
( c  =  ( f  |`  ( 1 ... N ) )  /\  ( ( a `
 ( f  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) )  =  0  /\  ( b `  ( f  |`  NN ) )  =  0 ) )  <->  ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
g  |`  NN ) ) ^ 2 ) ) ) `  f )  =  0 ) ) )
170169rexbidva 3049 . . . . . . . . . . . 12  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ( E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  ( 1 ... N
) )  /\  (
( a `  (
f  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) )  =  0  /\  ( b `
 ( f  |`  NN ) )  =  0 ) )  <->  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
g  |`  NN ) ) ^ 2 ) ) ) `  f )  =  0 ) ) )
171132, 170bitrd 268 . . . . . . . . . . 11  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ( E. d  e.  ( NN0  ^m  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) E. e  e.  ( NN0  ^m  NN ) ( ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  /\  ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) )  <->  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
g  |`  NN ) ) ^ 2 ) ) ) `  f )  =  0 ) ) )
17231, 171syl5bbr 274 . . . . . . . . . 10  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  (
( E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  /\  E. e  e.  ( NN0 
^m  NN ) ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) )  <->  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  ( 1 ... N
) )  /\  (
( g  e.  ( ZZ  ^m  ZZ ) 
|->  ( ( ( a `
 ( g  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^
2 ) ) ) `
 f )  =  0 ) ) )
173172abbidv 2741 . . . . . . . . 9  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  { c  |  ( E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 )  /\  E. e  e.  ( NN0 
^m  NN ) ( c  =  ( e  |`  ( 1 ... N
) )  /\  (
b `  e )  =  0 ) ) }  =  { c  |  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
g  |`  NN ) ) ^ 2 ) ) ) `  f )  =  0 ) } )
17430, 173syl5eq 2668 . . . . . . . 8  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ( { c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 ) }  i^i  {
c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  (
1 ... N ) )  /\  ( b `  e )  =  0 ) } )  =  { c  |  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  ( 1 ... N
) )  /\  (
( g  e.  ( ZZ  ^m  ZZ ) 
|->  ( ( ( a `
 ( g  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^
2 ) ) ) `
 f )  =  0 ) } )
175 simpl 473 . . . . . . . . 9  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  N  e.  NN0 )
176 fzssuz 12382 . . . . . . . . . . . 12  |-  ( 1 ... N )  C_  ( ZZ>= `  1 )
177 uzssz 11707 . . . . . . . . . . . 12  |-  ( ZZ>= ` 
1 )  C_  ZZ
178176, 177sstri 3612 . . . . . . . . . . 11  |-  ( 1 ... N )  C_  ZZ
1793, 178pm3.2i 471 . . . . . . . . . 10  |-  ( ZZ  e.  _V  /\  (
1 ... N )  C_  ZZ )
180179a1i 11 . . . . . . . . 9  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ( ZZ  e.  _V  /\  (
1 ... N )  C_  ZZ ) )
1813a1i 11 . . . . . . . . . . . 12  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ZZ  e.  _V )
18297a1i 11 . . . . . . . . . . . 12  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) )  C_  ZZ )
183 simprl 794 . . . . . . . . . . . 12  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )
184 mzpresrename 37313 . . . . . . . . . . . 12  |-  ( ( ZZ  e.  _V  /\  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) 
C_  ZZ  /\  a  e.  (mzPoly `  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) )  -> 
( g  e.  ( ZZ  ^m  ZZ ) 
|->  ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) )  e.  (mzPoly `  ZZ ) )
185181, 182, 183, 184syl3anc 1326 . . . . . . . . . . 11  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  (
g  e.  ( ZZ 
^m  ZZ )  |->  ( a `  ( g  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) )  e.  (mzPoly `  ZZ )
)
186 2nn0 11309 . . . . . . . . . . 11  |-  2  e.  NN0
187 mzpexpmpt 37308 . . . . . . . . . . 11  |-  ( ( ( g  e.  ( ZZ  ^m  ZZ ) 
|->  ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) )  e.  (mzPoly `  ZZ )  /\  2  e.  NN0 )  ->  ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( a `
 ( g  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 ) )  e.  (mzPoly `  ZZ ) )
188185, 186, 187sylancl 694 . . . . . . . . . 10  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  (
g  e.  ( ZZ 
^m  ZZ )  |->  ( ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 ) )  e.  (mzPoly `  ZZ )
)
189101a1i 11 . . . . . . . . . . . 12  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  NN  C_  ZZ )
190 simprr 796 . . . . . . . . . . . 12  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  b  e.  (mzPoly `  NN )
)
191 mzpresrename 37313 . . . . . . . . . . . 12  |-  ( ( ZZ  e.  _V  /\  NN  C_  ZZ  /\  b  e.  (mzPoly `  NN )
)  ->  ( g  e.  ( ZZ  ^m  ZZ )  |->  ( b `  ( g  |`  NN ) ) )  e.  (mzPoly `  ZZ ) )
192181, 189, 190, 191syl3anc 1326 . . . . . . . . . . 11  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  (
g  e.  ( ZZ 
^m  ZZ )  |->  ( b `  ( g  |`  NN ) ) )  e.  (mzPoly `  ZZ ) )
193 mzpexpmpt 37308 . . . . . . . . . . 11  |-  ( ( ( g  e.  ( ZZ  ^m  ZZ ) 
|->  ( b `  (
g  |`  NN ) ) )  e.  (mzPoly `  ZZ )  /\  2  e.  NN0 )  ->  (
g  e.  ( ZZ 
^m  ZZ )  |->  ( ( b `  (
g  |`  NN ) ) ^ 2 ) )  e.  (mzPoly `  ZZ ) )
194192, 186, 193sylancl 694 . . . . . . . . . 10  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  (
g  e.  ( ZZ 
^m  ZZ )  |->  ( ( b `  (
g  |`  NN ) ) ^ 2 ) )  e.  (mzPoly `  ZZ ) )
195 mzpaddmpt 37304 . . . . . . . . . 10  |-  ( ( ( g  e.  ( ZZ  ^m  ZZ ) 
|->  ( ( a `  ( g  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ) ^ 2 ) )  e.  (mzPoly `  ZZ )  /\  ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( b `
 ( g  |`  NN ) ) ^ 2 ) )  e.  (mzPoly `  ZZ ) )  -> 
( g  e.  ( ZZ  ^m  ZZ ) 
|->  ( ( ( a `
 ( g  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^
2 ) ) )  e.  (mzPoly `  ZZ ) )
196188, 194, 195syl2anc 693 . . . . . . . . 9  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  (
g  e.  ( ZZ 
^m  ZZ )  |->  ( ( ( a `  ( g  |`  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^ 2 ) ) )  e.  (mzPoly `  ZZ ) )
197 eldioph2 37325 . . . . . . . . 9  |-  ( ( N  e.  NN0  /\  ( ZZ  e.  _V  /\  ( 1 ... N
)  C_  ZZ )  /\  ( g  e.  ( ZZ  ^m  ZZ ) 
|->  ( ( ( a `
 ( g  |`  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ) ^ 2 )  +  ( ( b `  ( g  |`  NN ) ) ^
2 ) ) )  e.  (mzPoly `  ZZ ) )  ->  { c  |  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
g  |`  NN ) ) ^ 2 ) ) ) `  f )  =  0 ) }  e.  (Dioph `  N
) )
198175, 180, 196, 197syl3anc 1326 . . . . . . . 8  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  { c  |  E. f  e.  ( NN0  ^m  ZZ ) ( c  =  ( f  |`  (
1 ... N ) )  /\  ( ( g  e.  ( ZZ  ^m  ZZ )  |->  ( ( ( a `  (
g  |`  ( ZZ  \ 
( ZZ>= `  ( N  +  1 ) ) ) ) ) ^
2 )  +  ( ( b `  (
g  |`  NN ) ) ^ 2 ) ) ) `  f )  =  0 ) }  e.  (Dioph `  N
) )
199174, 198eqeltrd 2701 . . . . . . 7  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  ( { c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) ( c  =  ( d  |`  (
1 ... N ) )  /\  ( a `  d )  =  0 ) }  i^i  {
c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  (
1 ... N ) )  /\  ( b `  e )  =  0 ) } )  e.  (Dioph `  N )
)
200 ineq12 3809 . . . . . . . 8  |-  ( ( A  =  { c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  /\  B  =  {
c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  (
1 ... N ) )  /\  ( b `  e )  =  0 ) } )  -> 
( A  i^i  B
)  =  ( { c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  i^i  { c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) } ) )
201200eleq1d 2686 . . . . . . 7  |-  ( ( A  =  { c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  /\  B  =  {
c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  (
1 ... N ) )  /\  ( b `  e )  =  0 ) } )  -> 
( ( A  i^i  B )  e.  (Dioph `  N )  <->  ( {
c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  i^i  { c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) } )  e.  (Dioph `  N )
) )
202199, 201syl5ibrcom 237 . . . . . 6  |-  ( ( N  e.  NN0  /\  ( a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) )  /\  b  e.  (mzPoly `  NN )
) )  ->  (
( A  =  {
c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  /\  B  =  {
c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  (
1 ... N ) )  /\  ( b `  e )  =  0 ) } )  -> 
( A  i^i  B
)  e.  (Dioph `  N ) ) )
203202rexlimdvva 3038 . . . . 5  |-  ( N  e.  NN0  ->  ( E. a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) E. b  e.  (mzPoly `  NN )
( A  =  {
c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  /\  B  =  {
c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  (
1 ... N ) )  /\  ( b `  e )  =  0 ) } )  -> 
( A  i^i  B
)  e.  (Dioph `  N ) ) )
20429, 203syl5bir 233 . . . 4  |-  ( N  e.  NN0  ->  ( ( E. a  e.  (mzPoly `  ( ZZ  \  ( ZZ>=
`  ( N  + 
1 ) ) ) ) A  =  {
c  |  E. d  e.  ( NN0  ^m  ( ZZ  \  ( ZZ>= `  ( N  +  1 ) ) ) ) ( c  =  ( d  |`  ( 1 ... N
) )  /\  (
a `  d )  =  0 ) }  /\  E. b  e.  (mzPoly `  NN ) B  =  { c  |  E. e  e.  ( NN0  ^m  NN ) ( c  =  ( e  |`  ( 1 ... N ) )  /\  ( b `  e )  =  0 ) } )  -> 
( A  i^i  B
)  e.  (Dioph `  N ) ) )
20528, 204sylbid 230 . . 3  |-  ( N  e.  NN0  ->  ( ( A  e.  (Dioph `  N )  /\  B  e.  (Dioph `  N )
)  ->  ( A  i^i  B )  e.  (Dioph `  N ) ) )
2061, 205syl 17 . 2  |-  ( A  e.  (Dioph `  N
)  ->  ( ( A  e.  (Dioph `  N
)  /\  B  e.  (Dioph `  N ) )  ->  ( A  i^i  B )  e.  (Dioph `  N ) ) )
207206anabsi5 858 1  |-  ( ( A  e.  (Dioph `  N )  /\  B  e.  (Dioph `  N )
)  ->  ( A  i^i  B )  e.  (Dioph `  N ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 196    /\ wa 384    = wceq 1483    e. wcel 1990   {cab 2608   E.wrex 2913   _Vcvv 3200    \ cdif 3571    u. cun 3572    i^i cin 3573    C_ wss 3574   class class class wbr 4653    |-> cmpt 4729    |` cres 5116   -->wf 5884   ` cfv 5888  (class class class)co 6650   omcom 7065    ^m cmap 7857    ~~ cen 7952   Fincfn 7955   RRcr 9935   0cc0 9936   1c1 9937    + caddc 9939    <_ cle 10075   NNcn 11020   2c2 11070   NN0cn0 11292   ZZcz 11377   ZZ>=cuz 11687   ...cfz 12326   ^cexp 12860  mzPolycmzp 37285  Diophcdioph 37318
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-rep 4771  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949  ax-inf2 8538  ax-cnex 9992  ax-resscn 9993  ax-1cn 9994  ax-icn 9995  ax-addcl 9996  ax-addrcl 9997  ax-mulcl 9998  ax-mulrcl 9999  ax-mulcom 10000  ax-addass 10001  ax-mulass 10002  ax-distr 10003  ax-i2m1 10004  ax-1ne0 10005  ax-1rid 10006  ax-rnegex 10007  ax-rrecex 10008  ax-cnre 10009  ax-pre-lttri 10010  ax-pre-lttrn 10011  ax-pre-ltadd 10012  ax-pre-mulgt0 10013
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1038  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-nel 2898  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-pss 3590  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-tp 4182  df-op 4184  df-uni 4437  df-int 4476  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-tr 4753  df-id 5024  df-eprel 5029  df-po 5035  df-so 5036  df-fr 5073  df-we 5075  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-pred 5680  df-ord 5726  df-on 5727  df-lim 5728  df-suc 5729  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-riota 6611  df-ov 6653  df-oprab 6654  df-mpt2 6655  df-of 6897  df-om 7066  df-1st 7168  df-2nd 7169  df-wrecs 7407  df-recs 7468  df-rdg 7506  df-1o 7560  df-oadd 7564  df-er 7742  df-map 7859  df-en 7956  df-dom 7957  df-sdom 7958  df-fin 7959  df-card 8765  df-cda 8990  df-pnf 10076  df-mnf 10077  df-xr 10078  df-ltxr 10079  df-le 10080  df-sub 10268  df-neg 10269  df-nn 11021  df-2 11079  df-n0 11293  df-z 11378  df-uz 11688  df-fz 12327  df-seq 12802  df-exp 12861  df-hash 13118  df-mzpcl 37286  df-mzp 37287  df-dioph 37319
This theorem is referenced by:  anrabdioph  37344
  Copyright terms: Public domain W3C validator