MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  dgreq0 Structured version   Visualization version   GIF version

Theorem dgreq0 26379
Description: The leading coefficient of a polynomial is nonzero, unless the entire polynomial is zero. (Contributed by Mario Carneiro, 22-Jul-2014.) (Proof shortened by Fan Zheng, 21-Jun-2016.)
Hypotheses
Ref Expression
dgreq0.1 𝑁 = (deg‘𝐹)
dgreq0.2 𝐴 = (coeff‘𝐹)
Assertion
Ref Expression
dgreq0 (𝐹 ∈ (Poly‘𝑆) → (𝐹 = 0𝑝 ↔ (𝐴𝑁) = 0))

Proof of Theorem dgreq0
Dummy variable 𝑘 is distinct from all other variables.
StepHypRef Expression
1 dgreq0.2 . . . . . 6 𝐴 = (coeff‘𝐹)
2 fveq2 6871 . . . . . 6 (𝐹 = 0𝑝 → (coeff‘𝐹) = (coeff‘0𝑝))
31, 2eqtrid 2812 . . . . 5 (𝐹 = 0𝑝𝐴 = (coeff‘0𝑝))
4 coe0 26370 . . . . 5 (coeff‘0𝑝) = (ℕ0 × {0})
53, 4eqtrdi 2816 . . . 4 (𝐹 = 0𝑝𝐴 = (ℕ0 × {0}))
6 dgreq0.1 . . . . . 6 𝑁 = (deg‘𝐹)
7 fveq2 6871 . . . . . 6 (𝐹 = 0𝑝 → (deg‘𝐹) = (deg‘0𝑝))
86, 7eqtrid 2812 . . . . 5 (𝐹 = 0𝑝𝑁 = (deg‘0𝑝))
9 dgr0 26376 . . . . 5 (deg‘0𝑝) = 0
108, 9eqtrdi 2816 . . . 4 (𝐹 = 0𝑝𝑁 = 0)
115, 10fveq12d 6878 . . 3 (𝐹 = 0𝑝 → (𝐴𝑁) = ((ℕ0 × {0})‘0))
12 0nn0 12507 . . . 4 0 ∈ ℕ0
13 fvconst2g 7190 . . . 4 ((0 ∈ ℕ0 ∧ 0 ∈ ℕ0) → ((ℕ0 × {0})‘0) = 0)
1412, 12, 13mp2an 704 . . 3 ((ℕ0 × {0})‘0) = 0
1511, 14eqtrdi 2816 . 2 (𝐹 = 0𝑝 → (𝐴𝑁) = 0)
161coefv0 26362 . . . . . . . 8 (𝐹 ∈ (Poly‘𝑆) → (𝐹‘0) = (𝐴‘0))
1716adantr 485 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐹‘0) = (𝐴‘0))
18 simpr 489 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℕ)
1918nnred 12236 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
2019ltm1d 12135 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) < 𝑁)
21 nnre 12228 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ)
2221adantl 486 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
23 peano2rem 11513 . . . . . . . . . . . 12 (𝑁 ∈ ℝ → (𝑁 − 1) ∈ ℝ)
2422, 23syl 18 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℝ)
25 simpll 778 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐹 ∈ (Poly‘𝑆))
26 nnm1nn0 12533 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → (𝑁 − 1) ∈ ℕ0)
2726adantl 486 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℕ0)
281, 6dgrub 26348 . . . . . . . . . . . . . . . . . . 19 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝑘 ∈ ℕ0 ∧ (𝐴𝑘) ≠ 0) → 𝑘𝑁)
29283expia 1137 . . . . . . . . . . . . . . . . . 18 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝑘 ∈ ℕ0) → ((𝐴𝑘) ≠ 0 → 𝑘𝑁))
3029ad2ant2rl 761 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → 𝑘𝑁))
31 simplr 780 . . . . . . . . . . . . . . . . . . 19 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝐴𝑁) = 0)
32 fveqeq2 6880 . . . . . . . . . . . . . . . . . . 19 (𝑁 = 𝑘 → ((𝐴𝑁) = 0 ↔ (𝐴𝑘) = 0))
3331, 32syl5ibcom 248 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑁 = 𝑘 → (𝐴𝑘) = 0))
3433necon3d 2981 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → 𝑁𝑘))
3530, 34jcad 521 . . . . . . . . . . . . . . . 16 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → (𝑘𝑁𝑁𝑘)))
36 nn0re 12501 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0𝑘 ∈ ℝ)
3736ad2antll 741 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℝ)
3821ad2antrl 740 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℝ)
3937, 38ltlend 11343 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑘 < 𝑁 ↔ (𝑘𝑁𝑁𝑘)))
40 nn0z 12603 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0𝑘 ∈ ℤ)
4140ad2antll 741 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℤ)
42 nnz 12600 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ ℕ → 𝑁 ∈ ℤ)
4342ad2antrl 740 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℤ)
44 zltlem1 12635 . . . . . . . . . . . . . . . . . 18 ((𝑘 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑘 < 𝑁𝑘 ≤ (𝑁 − 1)))
4541, 43, 44syl2anc 595 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑘 < 𝑁𝑘 ≤ (𝑁 − 1)))
4639, 45bitr3d 284 . . . . . . . . . . . . . . . 16 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝑘𝑁𝑁𝑘) ↔ 𝑘 ≤ (𝑁 − 1)))
4735, 46sylibd 242 . . . . . . . . . . . . . . 15 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1)))
4847expr 461 . . . . . . . . . . . . . 14 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑘 ∈ ℕ0 → ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1))))
4948ralrimiv 3156 . . . . . . . . . . . . 13 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ∀𝑘 ∈ ℕ0 ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1)))
501coef3 26346 . . . . . . . . . . . . . . 15 (𝐹 ∈ (Poly‘𝑆) → 𝐴:ℕ0⟶ℂ)
5150ad2antrr 738 . . . . . . . . . . . . . 14 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐴:ℕ0⟶ℂ)
52 plyco0 26306 . . . . . . . . . . . . . 14 (((𝑁 − 1) ∈ ℕ0𝐴:ℕ0⟶ℂ) → ((𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0} ↔ ∀𝑘 ∈ ℕ0 ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1))))
5327, 51, 52syl2anc 595 . . . . . . . . . . . . 13 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ((𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0} ↔ ∀𝑘 ∈ ℕ0 ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1))))
5449, 53mpbird 260 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0})
551, 6dgrlb 26350 . . . . . . . . . . . 12 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝑁 − 1) ∈ ℕ0 ∧ (𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0}) → 𝑁 ≤ (𝑁 − 1))
5625, 27, 54, 55syl3anc 1394 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ≤ (𝑁 − 1))
5722, 24, 56lensymd 11349 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ¬ (𝑁 − 1) < 𝑁)
5820, 57pm2.65da 828 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → ¬ 𝑁 ∈ ℕ)
59 dgrcl 26347 . . . . . . . . . . . . 13 (𝐹 ∈ (Poly‘𝑆) → (deg‘𝐹) ∈ ℕ0)
606, 59eqeltrid 2869 . . . . . . . . . . . 12 (𝐹 ∈ (Poly‘𝑆) → 𝑁 ∈ ℕ0)
6160adantr 485 . . . . . . . . . . 11 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝑁 ∈ ℕ0)
62 elnn0 12494 . . . . . . . . . . 11 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6361, 62sylib 221 . . . . . . . . . 10 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6463ord 877 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (¬ 𝑁 ∈ ℕ → 𝑁 = 0))
6558, 64mpd 16 . . . . . . . 8 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝑁 = 0)
6665fveq2d 6875 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐴𝑁) = (𝐴‘0))
67 simpr 489 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐴𝑁) = 0)
6817, 66, 673eqtr2d 2806 . . . . . 6 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐹‘0) = 0)
6968sneqd 4597 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → {(𝐹‘0)} = {0})
7069xpeq2d 5681 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (ℂ × {(𝐹‘0)}) = (ℂ × {0}))
716, 65eqtr3id 2814 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (deg‘𝐹) = 0)
72 0dgrb 26360 . . . . . 6 (𝐹 ∈ (Poly‘𝑆) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7372adantr 485 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7471, 73mpbid 235 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝐹 = (ℂ × {(𝐹‘0)}))
75 df-0p 25786 . . . . 5 0𝑝 = (ℂ × {0})
7675a1i 11 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 0𝑝 = (ℂ × {0}))
7770, 74, 763eqtr4d 2810 . . 3 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝐹 = 0𝑝)
7877ex 417 . 2 (𝐹 ∈ (Poly‘𝑆) → ((𝐴𝑁) = 0 → 𝐹 = 0𝑝))
7915, 78impbid2 229 1 (𝐹 ∈ (Poly‘𝑆) → (𝐹 = 0𝑝 ↔ (𝐴𝑁) = 0))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 209  wa 400  wo 860   = wceq 1563  wcel 2145  wne 2960  wral 3079  {csn 4585   class class class wbr 5104   × cxp 5649  cima 5654  wf 6521  cfv 6525  (class class class)co 7400  cc 11086  cr 11087  0cc0 11088  1c1 11089   + caddc 11091   < clt 11231  cle 11232  cmin 11429  cn 12221  0cn0 12492  cz 12579  cuz 12850  0𝑝c0p 25785  Polycply 26298  coeffccoe 26300  degcdgr 26301
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1818  ax-4 1832  ax-5 1933  ax-6 1990  ax-7 2031  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2737  ax-rep 5231  ax-sep 5250  ax-nul 5260  ax-pow 5326  ax-pr 5394  ax-un 7722  ax-inf2 9598  ax-cnex 11144  ax-resscn 11145  ax-1cn 11146  ax-icn 11147  ax-addcl 11148  ax-addrcl 11149  ax-mulcl 11150  ax-mulrcl 11151  ax-mulcom 11152  ax-addass 11153  ax-mulass 11154  ax-distr 11155  ax-i2m1 11156  ax-1ne0 11157  ax-1rid 11158  ax-rnegex 11159  ax-rrecex 11160  ax-cnre 11161  ax-pre-lttri 11162  ax-pre-lttrn 11163  ax-pre-ltadd 11164  ax-pre-mulgt0 11165  ax-pre-sup 11166
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1102  df-3an 1103  df-tru 1566  df-fal 1576  df-ex 1803  df-nf 1807  df-sb 2094  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-nel 3065  df-ral 3080  df-rex 3090  df-rmo 3370  df-reu 3371  df-rab 3418  df-v 3459  df-sbc 3748  df-csb 3856  df-dif 3910  df-un 3912  df-in 3914  df-ss 3924  df-pss 3927  df-nul 4289  df-if 4484  df-pw 4560  df-sn 4586  df-pr 4588  df-op 4592  df-uni 4868  df-int 4908  df-iun 4953  df-br 5105  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-se 5605  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6291  df-ord 6352  df-on 6353  df-lim 6354  df-suc 6355  df-iota 6481  df-fun 6527  df-fn 6528  df-f 6529  df-f1 6530  df-fo 6531  df-f1o 6532  df-fv 6533  df-isom 6534  df-riota 7357  df-ov 7403  df-oprab 7404  df-mpo 7405  df-of 7664  df-om 7851  df-1st 7974  df-2nd 7975  df-frecs 8266  df-wrecs 8297  df-recs 8346  df-rdg 8385  df-1o 8441  df-er 8682  df-map 8814  df-pm 8815  df-en 8932  df-dom 8933  df-sdom 8934  df-fin 8935  df-sup 9390  df-inf 9391  df-oi 9460  df-card 9913  df-pnf 11233  df-mnf 11234  df-xr 11235  df-ltxr 11236  df-le 11237  df-sub 11431  df-neg 11432  df-div 11860  df-nn 12222  df-2 12291  df-3 12292  df-n0 12493  df-z 12580  df-uz 12851  df-rp 13005  df-fz 13524  df-fzo 13671  df-fl 13813  df-seq 14026  df-exp 14086  df-hash 14355  df-cj 15138  df-re 15139  df-im 15140  df-sqrt 15274  df-abs 15275  df-clim 15527  df-rlim 15528  df-sum 15726  df-0p 25786  df-ply 26302  df-coe 26304  df-dgr 26305
This theorem is referenced by:  dgrlt  26380  dgradd2  26382  dgrmul  26384  dgrcolem2  26388  plymul0or  26396  plydivlem4  26414  plydiveu  26416  vieta1lem2  26429  vieta1  26430  aareccl  26444  ftalem2  27192  ftalem4  27194  ftalem5  27195  signsply0  34850  mpaaeu  43734  elaa2lem  46806
  Copyright terms: Public domain W3C validator