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

Theorem dgreq0 26437
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 6885 . . . . . 6 (𝐹 = 0𝑝 → (coeff‘𝐹) = (coeff‘0𝑝))
31, 2eqtrid 2813 . . . . 5 (𝐹 = 0𝑝𝐴 = (coeff‘0𝑝))
4 coe0 26428 . . . . 5 (coeff‘0𝑝) = (ℕ0 × {0})
53, 4eqtrdi 2817 . . . 4 (𝐹 = 0𝑝𝐴 = (ℕ0 × {0}))
6 dgreq0.1 . . . . . 6 𝑁 = (deg‘𝐹)
7 fveq2 6885 . . . . . 6 (𝐹 = 0𝑝 → (deg‘𝐹) = (deg‘0𝑝))
86, 7eqtrid 2813 . . . . 5 (𝐹 = 0𝑝𝑁 = (deg‘0𝑝))
9 dgr0 26434 . . . . 5 (deg‘0𝑝) = 0
108, 9eqtrdi 2817 . . . 4 (𝐹 = 0𝑝𝑁 = 0)
115, 10fveq12d 6892 . . 3 (𝐹 = 0𝑝 → (𝐴𝑁) = ((ℕ0 × {0})‘0))
12 0nn0 12529 . . . 4 0 ∈ ℕ0
13 fvconst2g 7204 . . . 4 ((0 ∈ ℕ0 ∧ 0 ∈ ℕ0) → ((ℕ0 × {0})‘0) = 0)
1412, 12, 13mp2an 705 . . 3 ((ℕ0 × {0})‘0) = 0
1511, 14eqtrdi 2817 . 2 (𝐹 = 0𝑝 → (𝐴𝑁) = 0)
161coefv0 26420 . . . . . . . 8 (𝐹 ∈ (Poly‘𝑆) → (𝐹‘0) = (𝐴‘0))
1716adantr 486 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐹‘0) = (𝐴‘0))
18 simpr 490 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℕ)
1918nnred 12258 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
2019ltm1d 12157 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) < 𝑁)
21 nnre 12250 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ)
2221adantl 487 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
23 peano2rem 11535 . . . . . . . . . . . 12 (𝑁 ∈ ℝ → (𝑁 − 1) ∈ ℝ)
2422, 23syl 18 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℝ)
25 simpll 779 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐹 ∈ (Poly‘𝑆))
26 nnm1nn0 12555 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → (𝑁 − 1) ∈ ℕ0)
2726adantl 487 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℕ0)
281, 6dgrub 26406 . . . . . . . . . . . . . . . . . . 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 6894 . . . . . . . . . . . . . . . . . . 19 (𝑁 = 𝑘 → ((𝐴𝑁) = 0 ↔ (𝐴𝑘) = 0))
3331, 32syl5ibcom 248 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑁 = 𝑘 → (𝐴𝑘) = 0))
3433necon3d 2982 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → 𝑁𝑘))
3530, 34jcad 522 . . . . . . . . . . . . . . . 16 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → (𝑘𝑁𝑁𝑘)))
36 nn0re 12523 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0𝑘 ∈ ℝ)
3736ad2antll 742 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℝ)
3821ad2antrl 741 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℝ)
3937, 38ltlend 11365 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑘 < 𝑁 ↔ (𝑘𝑁𝑁𝑘)))
40 nn0z 12625 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0𝑘 ∈ ℤ)
4140ad2antll 742 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℤ)
42 nnz 12622 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ ℕ → 𝑁 ∈ ℤ)
4342ad2antrl 741 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℤ)
44 zltlem1 12657 . . . . . . . . . . . . . . . . . 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 3159 . . . . . . . . . . . . 13 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ∀𝑘 ∈ ℕ0 ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1)))
501coef3 26404 . . . . . . . . . . . . . . 15 (𝐹 ∈ (Poly‘𝑆) → 𝐴:ℕ0⟶ℂ)
5150ad2antrr 739 . . . . . . . . . . . . . 14 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐴:ℕ0⟶ℂ)
52 plyco0 26364 . . . . . . . . . . . . . 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 26408 . . . . . . . . . . . 12 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝑁 − 1) ∈ ℕ0 ∧ (𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0}) → 𝑁 ≤ (𝑁 − 1))
5625, 27, 54, 55syl3anc 1398 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ≤ (𝑁 − 1))
5722, 24, 56lensymd 11371 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ¬ (𝑁 − 1) < 𝑁)
5820, 57pm2.65da 829 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → ¬ 𝑁 ∈ ℕ)
59 dgrcl 26405 . . . . . . . . . . . . 13 (𝐹 ∈ (Poly‘𝑆) → (deg‘𝐹) ∈ ℕ0)
606, 59eqeltrid 2870 . . . . . . . . . . . 12 (𝐹 ∈ (Poly‘𝑆) → 𝑁 ∈ ℕ0)
6160adantr 486 . . . . . . . . . . 11 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝑁 ∈ ℕ0)
62 elnn0 12516 . . . . . . . . . . 11 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6361, 62sylib 221 . . . . . . . . . 10 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6463ord 878 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (¬ 𝑁 ∈ ℕ → 𝑁 = 0))
6558, 64mpd 16 . . . . . . . 8 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝑁 = 0)
6665fveq2d 6889 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐴𝑁) = (𝐴‘0))
67 simpr 490 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐴𝑁) = 0)
6817, 66, 673eqtr2d 2807 . . . . . 6 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐹‘0) = 0)
6968sneqd 4604 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → {(𝐹‘0)} = {0})
7069xpeq2d 5694 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (ℂ × {(𝐹‘0)}) = (ℂ × {0}))
716, 65eqtr3id 2815 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (deg‘𝐹) = 0)
72 0dgrb 26418 . . . . . 6 (𝐹 ∈ (Poly‘𝑆) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7372adantr 486 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7471, 73mpbid 235 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝐹 = (ℂ × {(𝐹‘0)}))
75 df-0p 25844 . . . . 5 0𝑝 = (ℂ × {0})
7675a1i 11 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 0𝑝 = (ℂ × {0}))
7770, 74, 763eqtr4d 2811 . . 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 2146  wne 2961  wral 3082  {csn 4592   class class class wbr 5112   × cxp 5662  cima 5667  wf 6536  cfv 6540  (class class class)co 7416  cc 11108  cr 11109  0cc0 11110  1c1 11111   + caddc 11113   < clt 11253  cle 11254  cmin 11451  cn 12243  0cn0 12514  cz 12601  cuz 12872  0𝑝c0p 25843  Polycply 26356  coeffccoe 26358  degcdgr 26359
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 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-rep 5241  ax-sep 5260  ax-nul 5272  ax-pow 5339  ax-pr 5407  ax-un 7738  ax-inf2 9612  ax-cnex 11166  ax-resscn 11167  ax-1cn 11168  ax-icn 11169  ax-addcl 11170  ax-addrcl 11171  ax-mulcl 11172  ax-mulrcl 11173  ax-mulcom 11174  ax-addass 11175  ax-mulass 11176  ax-distr 11177  ax-i2m1 11178  ax-1ne0 11179  ax-1rid 11180  ax-rnegex 11181  ax-rrecex 11182  ax-cnre 11183  ax-pre-lttri 11184  ax-pre-lttrn 11185  ax-pre-ltadd 11186  ax-pre-mulgt0 11187  ax-pre-sup 11188
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 2100  df-mo 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-nel 3068  df-ral 3083  df-rex 3093  df-rmo 3372  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3928  df-nul 4290  df-if 4491  df-pw 4567  df-sn 4593  df-pr 4595  df-op 4599  df-uni 4876  df-int 4916  df-iun 4961  df-br 5113  df-opab 5177  df-mpt 5196  df-tr 5222  df-id 5559  df-eprel 5564  df-po 5572  df-so 5573  df-fr 5617  df-se 5618  df-we 5619  df-xp 5670  df-rel 5671  df-cnv 5672  df-co 5673  df-dm 5674  df-rn 5675  df-res 5676  df-ima 5677  df-pred 6306  df-ord 6367  df-on 6368  df-lim 6369  df-suc 6370  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-isom 6549  df-riota 7373  df-ov 7419  df-oprab 7420  df-mpo 7421  df-of 7680  df-om 7865  df-1st 7988  df-2nd 7989  df-frecs 8280  df-wrecs 8311  df-recs 8360  df-rdg 8399  df-1o 8455  df-er 8696  df-map 8828  df-pm 8829  df-en 8946  df-dom 8947  df-sdom 8948  df-fin 8949  df-sup 9404  df-inf 9405  df-oi 9474  df-card 9936  df-pnf 11255  df-mnf 11256  df-xr 11257  df-ltxr 11258  df-le 11259  df-sub 11453  df-neg 11454  df-div 11882  df-nn 12244  df-2 12313  df-3 12314  df-n0 12515  df-z 12602  df-uz 12873  df-rp 13027  df-fz 13546  df-fzo 13694  df-fl 13836  df-seq 14049  df-exp 14109  df-hash 14378  df-cj 15161  df-re 15162  df-im 15163  df-sqrt 15297  df-abs 15298  df-clim 15550  df-rlim 15551  df-sum 15749  df-0p 25844  df-ply 26360  df-coe 26362  df-dgr 26363
This theorem is used by:  dgrlt  26438  dgradd2  26440  dgrmul  26442  dgrcolem2  26446  plymul0or  26454  plydivlem4  26472  plydiveu  26474  vieta1lem2  26487  vieta1  26488  aareccl  26504  ftalem2  27253  ftalem4  27255  ftalem5  27256  signsply0  34951  mpaaeu  43909  elaa2lem  46979
  Copyright terms: Public domain W3C validator