Metamath Proof Explorer


Theorem coeidlem

Description: Lemma for coeid . (Contributed by Mario Carneiro, 22-Jul-2014)

Ref Expression
Hypotheses dgrub.1 โŠข ๐ด = ( coeff โ€˜ ๐น )
dgrub.2 โŠข ๐‘ = ( deg โ€˜ ๐น )
coeid.3 โŠข ( ๐œ‘ โ†’ ๐น โˆˆ ( Poly โ€˜ ๐‘† ) )
coeid.4 โŠข ( ๐œ‘ โ†’ ๐‘€ โˆˆ โ„•0 )
coeid.5 โŠข ( ๐œ‘ โ†’ ๐ต โˆˆ ( ( ๐‘† โˆช { 0 } ) โ†‘m โ„•0 ) )
coeid.6 โŠข ( ๐œ‘ โ†’ ( ๐ต โ€œ ( โ„คโ‰ฅ โ€˜ ( ๐‘€ + 1 ) ) ) = { 0 } )
coeid.7 โŠข ( ๐œ‘ โ†’ ๐น = ( ๐‘ง โˆˆ โ„‚ โ†ฆ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) ( ( ๐ต โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) ) )
Assertion coeidlem ( ๐œ‘ โ†’ ๐น = ( ๐‘ง โˆˆ โ„‚ โ†ฆ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘ ) ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) ) )

Proof

Step Hyp Ref Expression
1 dgrub.1 โŠข ๐ด = ( coeff โ€˜ ๐น )
2 dgrub.2 โŠข ๐‘ = ( deg โ€˜ ๐น )
3 coeid.3 โŠข ( ๐œ‘ โ†’ ๐น โˆˆ ( Poly โ€˜ ๐‘† ) )
4 coeid.4 โŠข ( ๐œ‘ โ†’ ๐‘€ โˆˆ โ„•0 )
5 coeid.5 โŠข ( ๐œ‘ โ†’ ๐ต โˆˆ ( ( ๐‘† โˆช { 0 } ) โ†‘m โ„•0 ) )
6 coeid.6 โŠข ( ๐œ‘ โ†’ ( ๐ต โ€œ ( โ„คโ‰ฅ โ€˜ ( ๐‘€ + 1 ) ) ) = { 0 } )
7 coeid.7 โŠข ( ๐œ‘ โ†’ ๐น = ( ๐‘ง โˆˆ โ„‚ โ†ฆ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) ( ( ๐ต โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) ) )
8 plybss โŠข ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ๐‘† โІ โ„‚ )
9 3 8 syl โŠข ( ๐œ‘ โ†’ ๐‘† โІ โ„‚ )
10 0cnd โŠข ( ๐œ‘ โ†’ 0 โˆˆ โ„‚ )
11 10 snssd โŠข ( ๐œ‘ โ†’ { 0 } โІ โ„‚ )
12 9 11 unssd โŠข ( ๐œ‘ โ†’ ( ๐‘† โˆช { 0 } ) โІ โ„‚ )
13 cnex โŠข โ„‚ โˆˆ V
14 ssexg โŠข ( ( ( ๐‘† โˆช { 0 } ) โІ โ„‚ โˆง โ„‚ โˆˆ V ) โ†’ ( ๐‘† โˆช { 0 } ) โˆˆ V )
15 12 13 14 sylancl โŠข ( ๐œ‘ โ†’ ( ๐‘† โˆช { 0 } ) โˆˆ V )
16 nn0ex โŠข โ„•0 โˆˆ V
17 elmapg โŠข ( ( ( ๐‘† โˆช { 0 } ) โˆˆ V โˆง โ„•0 โˆˆ V ) โ†’ ( ๐ต โˆˆ ( ( ๐‘† โˆช { 0 } ) โ†‘m โ„•0 ) โ†” ๐ต : โ„•0 โŸถ ( ๐‘† โˆช { 0 } ) ) )
18 15 16 17 sylancl โŠข ( ๐œ‘ โ†’ ( ๐ต โˆˆ ( ( ๐‘† โˆช { 0 } ) โ†‘m โ„•0 ) โ†” ๐ต : โ„•0 โŸถ ( ๐‘† โˆช { 0 } ) ) )
19 5 18 mpbid โŠข ( ๐œ‘ โ†’ ๐ต : โ„•0 โŸถ ( ๐‘† โˆช { 0 } ) )
20 19 12 fssd โŠข ( ๐œ‘ โ†’ ๐ต : โ„•0 โŸถ โ„‚ )
21 3 4 20 6 7 coeeq โŠข ( ๐œ‘ โ†’ ( coeff โ€˜ ๐น ) = ๐ต )
22 1 21 eqtr2id โŠข ( ๐œ‘ โ†’ ๐ต = ๐ด )
23 22 adantr โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐ต = ๐ด )
24 fveq1 โŠข ( ๐ต = ๐ด โ†’ ( ๐ต โ€˜ ๐‘˜ ) = ( ๐ด โ€˜ ๐‘˜ ) )
25 24 oveq1d โŠข ( ๐ต = ๐ด โ†’ ( ( ๐ต โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) = ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) )
26 25 sumeq2sdv โŠข ( ๐ต = ๐ด โ†’ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) ( ( ๐ต โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) = ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) )
27 23 26 syl โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) ( ( ๐ต โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) = ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) )
28 3 adantr โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐น โˆˆ ( Poly โ€˜ ๐‘† ) )
29 dgrcl โŠข ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ( deg โ€˜ ๐น ) โˆˆ โ„•0 )
30 2 29 eqeltrid โŠข ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ๐‘ โˆˆ โ„•0 )
31 28 30 syl โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐‘ โˆˆ โ„•0 )
32 31 nn0zd โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐‘ โˆˆ โ„ค )
33 4 adantr โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐‘€ โˆˆ โ„•0 )
34 33 nn0zd โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐‘€ โˆˆ โ„ค )
35 23 imaeq1d โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ( ๐ต โ€œ ( โ„คโ‰ฅ โ€˜ ( ๐‘€ + 1 ) ) ) = ( ๐ด โ€œ ( โ„คโ‰ฅ โ€˜ ( ๐‘€ + 1 ) ) ) )
36 6 adantr โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ( ๐ต โ€œ ( โ„คโ‰ฅ โ€˜ ( ๐‘€ + 1 ) ) ) = { 0 } )
37 35 36 eqtr3d โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ( ๐ด โ€œ ( โ„คโ‰ฅ โ€˜ ( ๐‘€ + 1 ) ) ) = { 0 } )
38 1 2 dgrlb โŠข ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐‘€ โˆˆ โ„•0 โˆง ( ๐ด โ€œ ( โ„คโ‰ฅ โ€˜ ( ๐‘€ + 1 ) ) ) = { 0 } ) โ†’ ๐‘ โ‰ค ๐‘€ )
39 28 33 37 38 syl3anc โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐‘ โ‰ค ๐‘€ )
40 eluz2 โŠข ( ๐‘€ โˆˆ ( โ„คโ‰ฅ โ€˜ ๐‘ ) โ†” ( ๐‘ โˆˆ โ„ค โˆง ๐‘€ โˆˆ โ„ค โˆง ๐‘ โ‰ค ๐‘€ ) )
41 32 34 39 40 syl3anbrc โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐‘€ โˆˆ ( โ„คโ‰ฅ โ€˜ ๐‘ ) )
42 fzss2 โŠข ( ๐‘€ โˆˆ ( โ„คโ‰ฅ โ€˜ ๐‘ ) โ†’ ( 0 ... ๐‘ ) โІ ( 0 ... ๐‘€ ) )
43 41 42 syl โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ( 0 ... ๐‘ ) โІ ( 0 ... ๐‘€ ) )
44 elfznn0 โŠข ( ๐‘˜ โˆˆ ( 0 ... ๐‘ ) โ†’ ๐‘˜ โˆˆ โ„•0 )
45 plyssc โŠข ( Poly โ€˜ ๐‘† ) โІ ( Poly โ€˜ โ„‚ )
46 45 3 sselid โŠข ( ๐œ‘ โ†’ ๐น โˆˆ ( Poly โ€˜ โ„‚ ) )
47 1 coef3 โŠข ( ๐น โˆˆ ( Poly โ€˜ โ„‚ ) โ†’ ๐ด : โ„•0 โŸถ โ„‚ )
48 46 47 syl โŠข ( ๐œ‘ โ†’ ๐ด : โ„•0 โŸถ โ„‚ )
49 48 adantr โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐ด : โ„•0 โŸถ โ„‚ )
50 49 ffvelcdmda โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ โ„•0 ) โ†’ ( ๐ด โ€˜ ๐‘˜ ) โˆˆ โ„‚ )
51 expcl โŠข ( ( ๐‘ง โˆˆ โ„‚ โˆง ๐‘˜ โˆˆ โ„•0 ) โ†’ ( ๐‘ง โ†‘ ๐‘˜ ) โˆˆ โ„‚ )
52 51 adantll โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ โ„•0 ) โ†’ ( ๐‘ง โ†‘ ๐‘˜ ) โˆˆ โ„‚ )
53 50 52 mulcld โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ โ„•0 ) โ†’ ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) โˆˆ โ„‚ )
54 44 53 sylan2 โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( 0 ... ๐‘ ) ) โ†’ ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) โˆˆ โ„‚ )
55 eldifn โŠข ( ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) โ†’ ยฌ ๐‘˜ โˆˆ ( 0 ... ๐‘ ) )
56 55 adantl โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ยฌ ๐‘˜ โˆˆ ( 0 ... ๐‘ ) )
57 eldifi โŠข ( ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) โ†’ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) )
58 elfznn0 โŠข ( ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) โ†’ ๐‘˜ โˆˆ โ„•0 )
59 57 58 syl โŠข ( ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) โ†’ ๐‘˜ โˆˆ โ„•0 )
60 1 2 dgrub โŠข ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐‘˜ โˆˆ โ„•0 โˆง ( ๐ด โ€˜ ๐‘˜ ) โ‰  0 ) โ†’ ๐‘˜ โ‰ค ๐‘ )
61 60 3expia โŠข ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐‘˜ โˆˆ โ„•0 ) โ†’ ( ( ๐ด โ€˜ ๐‘˜ ) โ‰  0 โ†’ ๐‘˜ โ‰ค ๐‘ ) )
62 28 59 61 syl2an โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ( ( ๐ด โ€˜ ๐‘˜ ) โ‰  0 โ†’ ๐‘˜ โ‰ค ๐‘ ) )
63 elfzuz โŠข ( ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) โ†’ ๐‘˜ โˆˆ ( โ„คโ‰ฅ โ€˜ 0 ) )
64 57 63 syl โŠข ( ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) โ†’ ๐‘˜ โˆˆ ( โ„คโ‰ฅ โ€˜ 0 ) )
65 elfz5 โŠข ( ( ๐‘˜ โˆˆ ( โ„คโ‰ฅ โ€˜ 0 ) โˆง ๐‘ โˆˆ โ„ค ) โ†’ ( ๐‘˜ โˆˆ ( 0 ... ๐‘ ) โ†” ๐‘˜ โ‰ค ๐‘ ) )
66 64 32 65 syl2anr โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ( ๐‘˜ โˆˆ ( 0 ... ๐‘ ) โ†” ๐‘˜ โ‰ค ๐‘ ) )
67 62 66 sylibrd โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ( ( ๐ด โ€˜ ๐‘˜ ) โ‰  0 โ†’ ๐‘˜ โˆˆ ( 0 ... ๐‘ ) ) )
68 67 necon1bd โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ( ยฌ ๐‘˜ โˆˆ ( 0 ... ๐‘ ) โ†’ ( ๐ด โ€˜ ๐‘˜ ) = 0 ) )
69 56 68 mpd โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ( ๐ด โ€˜ ๐‘˜ ) = 0 )
70 69 oveq1d โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) = ( 0 ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) )
71 simpr โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ๐‘ง โˆˆ โ„‚ )
72 71 59 51 syl2an โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ( ๐‘ง โ†‘ ๐‘˜ ) โˆˆ โ„‚ )
73 72 mul02d โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ( 0 ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) = 0 )
74 70 73 eqtrd โŠข ( ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โˆง ๐‘˜ โˆˆ ( ( 0 ... ๐‘€ ) โˆ– ( 0 ... ๐‘ ) ) ) โ†’ ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) = 0 )
75 fzfid โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ( 0 ... ๐‘€ ) โˆˆ Fin )
76 43 54 74 75 fsumss โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘ ) ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) = ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) )
77 27 76 eqtr4d โŠข ( ( ๐œ‘ โˆง ๐‘ง โˆˆ โ„‚ ) โ†’ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) ( ( ๐ต โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) = ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘ ) ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) )
78 77 mpteq2dva โŠข ( ๐œ‘ โ†’ ( ๐‘ง โˆˆ โ„‚ โ†ฆ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘€ ) ( ( ๐ต โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) ) = ( ๐‘ง โˆˆ โ„‚ โ†ฆ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘ ) ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) ) )
79 7 78 eqtrd โŠข ( ๐œ‘ โ†’ ๐น = ( ๐‘ง โˆˆ โ„‚ โ†ฆ ฮฃ ๐‘˜ โˆˆ ( 0 ... ๐‘ ) ( ( ๐ด โ€˜ ๐‘˜ ) ยท ( ๐‘ง โ†‘ ๐‘˜ ) ) ) )