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

Theorem dgreq0 26617
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 6911 . . . . . 6 (𝐹 = 0𝑝 → (coeff‘𝐹) = (coeff‘0𝑝))
31, 2eqtrid 2810 . . . . 5 (𝐹 = 0𝑝 → 𝐴 = (coeff‘0𝑝))
4 coe0 26608 . . . . 5 (coeff‘0𝑝) = (ℕ0 × {0})
53, 4eqtrdi 2814 . . . 4 (𝐹 = 0𝑝 → 𝐴 = (ℕ0 × {0}))
6 dgreq0.1 . . . . . 6 𝑁 = (deg‘𝐹)
7 fveq2 6911 . . . . . 6 (𝐹 = 0𝑝 → (deg‘𝐹) = (deg‘0𝑝))
86, 7eqtrid 2810 . . . . 5 (𝐹 = 0𝑝 → 𝑁 = (deg‘0𝑝))
9 dgr0 26614 . . . . 5 (deg‘0𝑝) = 0
108, 9eqtrdi 2814 . . . 4 (𝐹 = 0𝑝 → 𝑁 = 0)
115, 10fveq12d 6918 . . 3 (𝐹 = 0𝑝 → (𝐴‘𝑁) = ((ℕ0 × {0})‘0))
12 0nn0 12651 . . . 4 0 ∈ ℕ0
13 fvconst2g 7234 . . . 4 ((0 ∈ ℕ0 ∧ 0 ∈ ℕ0) → ((ℕ0 × {0})‘0) = 0)
1412, 12, 13mp2an 705 . . 3 ((ℕ0 × {0})‘0) = 0
1511, 14eqtrdi 2814 . 2 (𝐹 = 0𝑝 → (𝐴‘𝑁) = 0)
161coefv0 26600 . . . . . . . 8 (𝐹 ∈ (Poly‘𝑆) → (𝐹‘0) = (𝐴‘0))
1716adantr 486 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → (𝐹‘0) = (𝐴‘0))
18 simpr 490 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℕ)
1918nnred 12380 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
2019ltm1d 12279 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) < 𝑁)
21 nnre 12372 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ)
2221adantl 487 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
23 peano2rem 11655 . . . . . . . . . . . 12 (𝑁 ∈ ℝ → (𝑁 − 1) ∈ ℝ)
2422, 23syl 18 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℝ)
25 simpll 779 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐹 ∈ (Poly‘𝑆))
26 nnm1nn0 12677 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → (𝑁 − 1) ∈ ℕ0)
2726adantl 487 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℕ0)
281, 6dgrub 26586 . . . . . . . . . . . . . . . . . . 19 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝑘 ∈ ℕ0 ∧ (𝐴‘𝑘) ≠ 0) → 𝑘 ≤ 𝑁)
29283expia 1139 . . . . . . . . . . . . . . . . . 18 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝑘 ∈ ℕ0) → ((𝐴‘𝑘) ≠ 0 → 𝑘 ≤ 𝑁))
3029ad2ant2rl 762 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴‘𝑘) ≠ 0 → 𝑘 ≤ 𝑁))
31 simplr 781 . . . . . . . . . . . . . . . . . . 19 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝐴‘𝑁) = 0)
32 fveqeq2 6920 . . . . . . . . . . . . . . . . . . 19 (𝑁 = 𝑘 → ((𝐴‘𝑁) = 0 ↔ (𝐴‘𝑘) = 0))
3331, 32syl5ibcom 248 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑁 = 𝑘 → (𝐴‘𝑘) = 0))
3433necon3d 2980 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴‘𝑘) ≠ 0 → 𝑁 ≠ 𝑘))
3530, 34jcad 522 . . . . . . . . . . . . . . . 16 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴‘𝑘) ≠ 0 → (𝑘 ≤ 𝑁 ∧ 𝑁 ≠ 𝑘)))
36 nn0re 12645 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0 → 𝑘 ∈ ℝ)
3736ad2antll 742 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℝ)
3821ad2antrl 741 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℝ)
3937, 38ltlend 11485 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑘 < 𝑁 ↔ (𝑘 ≤ 𝑁 ∧ 𝑁 ≠ 𝑘)))
40 nn0z 12747 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0 → 𝑘 ∈ ℤ)
4140ad2antll 742 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℤ)
42 nnz 12744 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ ℕ → 𝑁 ∈ ℤ)
4342ad2antrl 741 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℤ)
44 zltlem1 12779 . . . . . . . . . . . . . . . . . 18 ((𝑘 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑘 < 𝑁 ↔ 𝑘 ≤ (𝑁 − 1)))
4541, 43, 44syl2anc 596 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑘 < 𝑁 ↔ 𝑘 ≤ (𝑁 − 1)))
4639, 45bitr3d 284 . . . . . . . . . . . . . . . 16 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝑘 ≤ 𝑁 ∧ 𝑁 ≠ 𝑘) ↔ 𝑘 ≤ (𝑁 − 1)))
4735, 46sylibd 242 . . . . . . . . . . . . . . 15 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴‘𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1)))
4847expr 462 . . . . . . . . . . . . . 14 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑘 ∈ ℕ0 → ((𝐴‘𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1))))
4948ralrimiv 3157 . . . . . . . . . . . . 13 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ∀𝑘 ∈ ℕ0 ((𝐴‘𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1)))
501coef3 26584 . . . . . . . . . . . . . . 15 (𝐹 ∈ (Poly‘𝑆) → 𝐴:ℕ0⟶ℂ)
5150ad2antrr 739 . . . . . . . . . . . . . 14 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐴:ℕ0⟶ℂ)
52 plyco0 26543 . . . . . . . . . . . . . 14 (((𝑁 − 1) ∈ ℕ0 ∧ 𝐴:ℕ0⟶ℂ) → ((𝐴 “ (ℤ≥‘((𝑁 − 1) + 1))) = {0} ↔ ∀𝑘 ∈ ℕ0 ((𝐴‘𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1))))
5327, 51, 52syl2anc 596 . . . . . . . . . . . . 13 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ((𝐴 “ (ℤ≥‘((𝑁 − 1) + 1))) = {0} ↔ ∀𝑘 ∈ ℕ0 ((𝐴‘𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1))))
5449, 53mpbird 260 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝐴 “ (ℤ≥‘((𝑁 − 1) + 1))) = {0})
551, 6dgrlb 26588 . . . . . . . . . . . 12 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝑁 − 1) ∈ ℕ0 ∧ (𝐴 “ (ℤ≥‘((𝑁 − 1) + 1))) = {0}) → 𝑁 ≤ (𝑁 − 1))
5625, 27, 54, 55syl3anc 1399 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ≤ (𝑁 − 1))
5722, 24, 56lensymd 11491 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ¬ (𝑁 − 1) < 𝑁)
5820, 57pm2.65da 829 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → ¬ 𝑁 ∈ ℕ)
59 dgrcl 26585 . . . . . . . . . . . . 13 (𝐹 ∈ (Poly‘𝑆) → (deg‘𝐹) ∈ ℕ0)
606, 59eqeltrid 2868 . . . . . . . . . . . 12 (𝐹 ∈ (Poly‘𝑆) → 𝑁 ∈ ℕ0)
6160adantr 486 . . . . . . . . . . 11 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → 𝑁 ∈ ℕ0)
62 elnn0 12638 . . . . . . . . . . 11 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6361, 62sylib 221 . . . . . . . . . 10 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6463ord 878 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → (¬ 𝑁 ∈ ℕ → 𝑁 = 0))
6558, 64mpd 16 . . . . . . . 8 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → 𝑁 = 0)
6665fveq2d 6915 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → (𝐴‘𝑁) = (𝐴‘0))
67 simpr 490 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → (𝐴‘𝑁) = 0)
6817, 66, 673eqtr2d 2804 . . . . . 6 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → (𝐹‘0) = 0)
6968sneqd 4596 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → {(𝐹‘0)} = {0})
7069xpeq2d 5686 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → (ℂ × {(𝐹‘0)}) = (ℂ × {0}))
716, 65eqtr3id 2812 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → (deg‘𝐹) = 0)
72 0dgrb 26598 . . . . . 6 (𝐹 ∈ (Poly‘𝑆) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7372adantr 486 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7471, 73mpbid 235 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → 𝐹 = (ℂ × {(𝐹‘0)}))
75 df-0p 26024 . . . . 5 0𝑝 = (ℂ × {0})
7675a1i 11 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → 0𝑝 = (ℂ × {0}))
7770, 74, 763eqtr4d 2808 . . 3 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴‘𝑁) = 0) → 𝐹 = 0𝑝)
7877ex 418 . 2 (𝐹 ∈ (Poly‘𝑆) → ((𝐴‘𝑁) = 0 → 𝐹 = 0𝑝))
7915, 78impbid2 229 1 (𝐹 ∈ (Poly‘𝑆) → (𝐹 = 0𝑝 ↔ (𝐴‘𝑁) = 0))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   ∨ wo 861   = wceq 1570   ∈ wcel 2147   ≠ wne 2959  ∀wral 3080  {csn 4588   class class class wbr 5106   × cxp 5654   “ cima 5659  ⟶wf 6557  ‘cfv 6561  (class class class)co 7446  ℂcc 11228  ℝcr 11229  0cc0 11230  1c1 11231   + caddc 11233   < clt 11373   ≤ cle 11374   − cmin 11571  ℕcn 12365  ℕ0cn0 12636  ℤcz 12723  ℤ≥cuz 12995  0𝑝c0p 26023  Polycply 26535  coeffccoe 26537  degcdgr 26538
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5236  ax-sep 5253  ax-nul 5264  ax-pow 5332  ax-pr 5396  ax-un 7778  ax-inf2 9672  ax-cnex 11286  ax-resscn 11287  ax-1cn 11288  ax-icn 11289  ax-addcl 11290  ax-addrcl 11291  ax-mulcl 11292  ax-mulrcl 11293  ax-mulcom 11294  ax-addass 11295  ax-mulass 11296  ax-distr 11297  ax-i2m1 11298  ax-1ne0 11299  ax-1rid 11300  ax-rnegex 11301  ax-rrecex 11302  ax-cnre 11303  ax-pre-lttri 11304  ax-pre-lttrn 11305  ax-pre-ltadd 11306  ax-pre-mulgt0 11307  ax-pre-sup 11308
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-int 4911  df-iun 4956  df-br 5107  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5551  df-eprel 5556  df-po 5564  df-so 5565  df-fr 5609  df-se 5610  df-we 5611  df-xp 5662  df-rel 5663  df-cnv 5664  df-co 5665  df-dm 5666  df-rn 5667  df-res 5668  df-ima 5669  df-pred 6325  df-ord 6386  df-on 6387  df-lim 6388  df-suc 6389  df-iota 6515  df-fun 6563  df-fn 6564  df-f 6565  df-f1 6566  df-fo 6567  df-f1o 6568  df-fv 6569  df-isom 6570  df-riota 7403  df-ov 7449  df-oprab 7450  df-mpo 7451  df-of 7720  df-om 7905  df-1st 8028  df-2nd 8029  df-frecs 8330  df-wrecs 8361  df-recs 8410  df-rdg 8449  df-1o 8507  df-er 8748  df-map 8880  df-pm 8881  df-en 9005  df-dom 9006  df-sdom 9007  df-fin 9008  df-sup 9464  df-inf 9465  df-oi 9534  df-card 10050  df-pnf 11375  df-mnf 11376  df-xr 11377  df-ltxr 11378  df-le 11379  df-sub 11573  df-neg 11574  df-div 12004  df-nn 12366  df-2 12435  df-3 12436  df-n0 12637  df-z 12724  df-uz 12996  df-rp 13151  df-fz 13670  df-fzo 13819  df-fl 13962  df-seq 14175  df-exp 14235  df-hash 14505  df-cj 15298  df-re 15299  df-im 15300  df-sqrt 15434  df-abs 15435  df-clim 15687  df-rlim 15688  df-sum 15886  df-0p 26024  df-ply 26539  df-coe 26541  df-dgr 26542
This theorem is used by:  dgrlt  26618  dgradd2  26620  dgrmul  26622  dgrcolem2  26626  plymul0or  26632  plydivlem4  26650  plydiveu  26652  vieta1lem2  26667  vieta1  26668  aareccl  26686  ftalem2  27434  ftalem4  27436  ftalem5  27437  signsply0  35263  mpaaeu  44355  elaa2lem  47458
  Copyright terms: Public domain W3C validator