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

Theorem dgreq0 24866
 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 6649 . . . . . 6 (𝐹 = 0𝑝 → (coeff‘𝐹) = (coeff‘0𝑝))
31, 2syl5eq 2848 . . . . 5 (𝐹 = 0𝑝𝐴 = (coeff‘0𝑝))
4 coe0 24857 . . . . 5 (coeff‘0𝑝) = (ℕ0 × {0})
53, 4eqtrdi 2852 . . . 4 (𝐹 = 0𝑝𝐴 = (ℕ0 × {0}))
6 dgreq0.1 . . . . . 6 𝑁 = (deg‘𝐹)
7 fveq2 6649 . . . . . 6 (𝐹 = 0𝑝 → (deg‘𝐹) = (deg‘0𝑝))
86, 7syl5eq 2848 . . . . 5 (𝐹 = 0𝑝𝑁 = (deg‘0𝑝))
9 dgr0 24863 . . . . 5 (deg‘0𝑝) = 0
108, 9eqtrdi 2852 . . . 4 (𝐹 = 0𝑝𝑁 = 0)
115, 10fveq12d 6656 . . 3 (𝐹 = 0𝑝 → (𝐴𝑁) = ((ℕ0 × {0})‘0))
12 0nn0 11904 . . . 4 0 ∈ ℕ0
13 fvconst2g 6945 . . . 4 ((0 ∈ ℕ0 ∧ 0 ∈ ℕ0) → ((ℕ0 × {0})‘0) = 0)
1412, 12, 13mp2an 691 . . 3 ((ℕ0 × {0})‘0) = 0
1511, 14eqtrdi 2852 . 2 (𝐹 = 0𝑝 → (𝐴𝑁) = 0)
161coefv0 24849 . . . . . . . 8 (𝐹 ∈ (Poly‘𝑆) → (𝐹‘0) = (𝐴‘0))
1716adantr 484 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐹‘0) = (𝐴‘0))
18 simpr 488 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℕ)
1918nnred 11644 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
2019ltm1d 11565 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) < 𝑁)
21 nnre 11636 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ)
2221adantl 485 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
23 peano2rem 10946 . . . . . . . . . . . 12 (𝑁 ∈ ℝ → (𝑁 − 1) ∈ ℝ)
2422, 23syl 17 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℝ)
25 simpll 766 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐹 ∈ (Poly‘𝑆))
26 nnm1nn0 11930 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → (𝑁 − 1) ∈ ℕ0)
2726adantl 485 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℕ0)
281, 6dgrub 24835 . . . . . . . . . . . . . . . . . . 19 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝑘 ∈ ℕ0 ∧ (𝐴𝑘) ≠ 0) → 𝑘𝑁)
29283expia 1118 . . . . . . . . . . . . . . . . . 18 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝑘 ∈ ℕ0) → ((𝐴𝑘) ≠ 0 → 𝑘𝑁))
3029ad2ant2rl 748 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → 𝑘𝑁))
31 simplr 768 . . . . . . . . . . . . . . . . . . 19 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝐴𝑁) = 0)
32 fveqeq2 6658 . . . . . . . . . . . . . . . . . . 19 (𝑁 = 𝑘 → ((𝐴𝑁) = 0 ↔ (𝐴𝑘) = 0))
3331, 32syl5ibcom 248 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑁 = 𝑘 → (𝐴𝑘) = 0))
3433necon3d 3011 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → 𝑁𝑘))
3530, 34jcad 516 . . . . . . . . . . . . . . . 16 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → (𝑘𝑁𝑁𝑘)))
36 nn0re 11898 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0𝑘 ∈ ℝ)
3736ad2antll 728 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℝ)
3821ad2antrl 727 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℝ)
3937, 38ltlend 10778 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑘 < 𝑁 ↔ (𝑘𝑁𝑁𝑘)))
40 nn0z 11997 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0𝑘 ∈ ℤ)
4140ad2antll 728 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℤ)
42 nnz 11996 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ ℕ → 𝑁 ∈ ℤ)
4342ad2antrl 727 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℤ)
44 zltlem1 12027 . . . . . . . . . . . . . . . . . 18 ((𝑘 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑘 < 𝑁𝑘 ≤ (𝑁 − 1)))
4541, 43, 44syl2anc 587 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑘 < 𝑁𝑘 ≤ (𝑁 − 1)))
4639, 45bitr3d 284 . . . . . . . . . . . . . . . 16 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝑘𝑁𝑁𝑘) ↔ 𝑘 ≤ (𝑁 − 1)))
4735, 46sylibd 242 . . . . . . . . . . . . . . 15 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1)))
4847expr 460 . . . . . . . . . . . . . 14 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑘 ∈ ℕ0 → ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1))))
4948ralrimiv 3151 . . . . . . . . . . . . 13 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ∀𝑘 ∈ ℕ0 ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1)))
501coef3 24833 . . . . . . . . . . . . . . 15 (𝐹 ∈ (Poly‘𝑆) → 𝐴:ℕ0⟶ℂ)
5150ad2antrr 725 . . . . . . . . . . . . . 14 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐴:ℕ0⟶ℂ)
52 plyco0 24793 . . . . . . . . . . . . . 14 (((𝑁 − 1) ∈ ℕ0𝐴:ℕ0⟶ℂ) → ((𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0} ↔ ∀𝑘 ∈ ℕ0 ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1))))
5327, 51, 52syl2anc 587 . . . . . . . . . . . . 13 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ((𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0} ↔ ∀𝑘 ∈ ℕ0 ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1))))
5449, 53mpbird 260 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0})
551, 6dgrlb 24837 . . . . . . . . . . . 12 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝑁 − 1) ∈ ℕ0 ∧ (𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0}) → 𝑁 ≤ (𝑁 − 1))
5625, 27, 54, 55syl3anc 1368 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ≤ (𝑁 − 1))
5722, 24, 56lensymd 10784 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ¬ (𝑁 − 1) < 𝑁)
5820, 57pm2.65da 816 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → ¬ 𝑁 ∈ ℕ)
59 dgrcl 24834 . . . . . . . . . . . . 13 (𝐹 ∈ (Poly‘𝑆) → (deg‘𝐹) ∈ ℕ0)
606, 59eqeltrid 2897 . . . . . . . . . . . 12 (𝐹 ∈ (Poly‘𝑆) → 𝑁 ∈ ℕ0)
6160adantr 484 . . . . . . . . . . 11 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝑁 ∈ ℕ0)
62 elnn0 11891 . . . . . . . . . . 11 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6361, 62sylib 221 . . . . . . . . . 10 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6463ord 861 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (¬ 𝑁 ∈ ℕ → 𝑁 = 0))
6558, 64mpd 15 . . . . . . . 8 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝑁 = 0)
6665fveq2d 6653 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐴𝑁) = (𝐴‘0))
67 simpr 488 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐴𝑁) = 0)
6817, 66, 673eqtr2d 2842 . . . . . 6 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐹‘0) = 0)
6968sneqd 4540 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → {(𝐹‘0)} = {0})
7069xpeq2d 5553 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (ℂ × {(𝐹‘0)}) = (ℂ × {0}))
716, 65syl5eqr 2850 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (deg‘𝐹) = 0)
72 0dgrb 24847 . . . . . 6 (𝐹 ∈ (Poly‘𝑆) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7372adantr 484 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7471, 73mpbid 235 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝐹 = (ℂ × {(𝐹‘0)}))
75 df-0p 24278 . . . . 5 0𝑝 = (ℂ × {0})
7675a1i 11 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 0𝑝 = (ℂ × {0}))
7770, 74, 763eqtr4d 2846 . . 3 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝐹 = 0𝑝)
7877ex 416 . 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 399   ∨ wo 844   = wceq 1538   ∈ wcel 2112   ≠ wne 2990  ∀wral 3109  {csn 4528   class class class wbr 5033   × cxp 5521   “ cima 5526  ⟶wf 6324  ‘cfv 6328  (class class class)co 7139  ℂcc 10528  ℝcr 10529  0cc0 10530  1c1 10531   + caddc 10533   < clt 10668   ≤ cle 10669   − cmin 10863  ℕcn 11629  ℕ0cn0 11889  ℤcz 11973  ℤ≥cuz 12235  0𝑝c0p 24277  Polycply 24785  coeffccoe 24787  degcdgr 24788 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2159  ax-12 2176  ax-ext 2773  ax-rep 5157  ax-sep 5170  ax-nul 5177  ax-pow 5234  ax-pr 5298  ax-un 7445  ax-inf2 9092  ax-cnex 10586  ax-resscn 10587  ax-1cn 10588  ax-icn 10589  ax-addcl 10590  ax-addrcl 10591  ax-mulcl 10592  ax-mulrcl 10593  ax-mulcom 10594  ax-addass 10595  ax-mulass 10596  ax-distr 10597  ax-i2m1 10598  ax-1ne0 10599  ax-1rid 10600  ax-rnegex 10601  ax-rrecex 10602  ax-cnre 10603  ax-pre-lttri 10604  ax-pre-lttrn 10605  ax-pre-ltadd 10606  ax-pre-mulgt0 10607  ax-pre-sup 10608  ax-addf 10609 This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-fal 1551  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2601  df-eu 2632  df-clab 2780  df-cleq 2794  df-clel 2873  df-nfc 2941  df-ne 2991  df-nel 3095  df-ral 3114  df-rex 3115  df-reu 3116  df-rmo 3117  df-rab 3118  df-v 3446  df-sbc 3724  df-csb 3832  df-dif 3887  df-un 3889  df-in 3891  df-ss 3901  df-pss 3903  df-nul 4247  df-if 4429  df-pw 4502  df-sn 4529  df-pr 4531  df-tp 4533  df-op 4535  df-uni 4804  df-int 4842  df-iun 4886  df-br 5034  df-opab 5096  df-mpt 5114  df-tr 5140  df-id 5428  df-eprel 5433  df-po 5442  df-so 5443  df-fr 5482  df-se 5483  df-we 5484  df-xp 5529  df-rel 5530  df-cnv 5531  df-co 5532  df-dm 5533  df-rn 5534  df-res 5535  df-ima 5536  df-pred 6120  df-ord 6166  df-on 6167  df-lim 6168  df-suc 6169  df-iota 6287  df-fun 6330  df-fn 6331  df-f 6332  df-f1 6333  df-fo 6334  df-f1o 6335  df-fv 6336  df-isom 6337  df-riota 7097  df-ov 7142  df-oprab 7143  df-mpo 7144  df-of 7393  df-om 7565  df-1st 7675  df-2nd 7676  df-wrecs 7934  df-recs 7995  df-rdg 8033  df-1o 8089  df-oadd 8093  df-er 8276  df-map 8395  df-pm 8396  df-en 8497  df-dom 8498  df-sdom 8499  df-fin 8500  df-sup 8894  df-inf 8895  df-oi 8962  df-card 9356  df-pnf 10670  df-mnf 10671  df-xr 10672  df-ltxr 10673  df-le 10674  df-sub 10865  df-neg 10866  df-div 11291  df-nn 11630  df-2 11692  df-3 11693  df-n0 11890  df-z 11974  df-uz 12236  df-rp 12382  df-fz 12890  df-fzo 13033  df-fl 13161  df-seq 13369  df-exp 13430  df-hash 13691  df-cj 14454  df-re 14455  df-im 14456  df-sqrt 14590  df-abs 14591  df-clim 14841  df-rlim 14842  df-sum 15039  df-0p 24278  df-ply 24789  df-coe 24791  df-dgr 24792 This theorem is referenced by:  dgrlt  24867  dgradd2  24869  dgrmul  24871  dgrcolem2  24875  plymul0or  24881  plydivlem4  24896  plydiveu  24898  vieta1lem2  24911  vieta1  24912  aareccl  24926  ftalem2  25663  ftalem4  25665  ftalem5  25666  signsply0  31935  mpaaeu  40087  elaa2lem  42868
 Copyright terms: Public domain W3C validator