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

Theorem dgreq0 25113
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 6695 . . . . . 6 (𝐹 = 0𝑝 → (coeff‘𝐹) = (coeff‘0𝑝))
31, 2syl5eq 2783 . . . . 5 (𝐹 = 0𝑝𝐴 = (coeff‘0𝑝))
4 coe0 25104 . . . . 5 (coeff‘0𝑝) = (ℕ0 × {0})
53, 4eqtrdi 2787 . . . 4 (𝐹 = 0𝑝𝐴 = (ℕ0 × {0}))
6 dgreq0.1 . . . . . 6 𝑁 = (deg‘𝐹)
7 fveq2 6695 . . . . . 6 (𝐹 = 0𝑝 → (deg‘𝐹) = (deg‘0𝑝))
86, 7syl5eq 2783 . . . . 5 (𝐹 = 0𝑝𝑁 = (deg‘0𝑝))
9 dgr0 25110 . . . . 5 (deg‘0𝑝) = 0
108, 9eqtrdi 2787 . . . 4 (𝐹 = 0𝑝𝑁 = 0)
115, 10fveq12d 6702 . . 3 (𝐹 = 0𝑝 → (𝐴𝑁) = ((ℕ0 × {0})‘0))
12 0nn0 12070 . . . 4 0 ∈ ℕ0
13 fvconst2g 6995 . . . 4 ((0 ∈ ℕ0 ∧ 0 ∈ ℕ0) → ((ℕ0 × {0})‘0) = 0)
1412, 12, 13mp2an 692 . . 3 ((ℕ0 × {0})‘0) = 0
1511, 14eqtrdi 2787 . 2 (𝐹 = 0𝑝 → (𝐴𝑁) = 0)
161coefv0 25096 . . . . . . . 8 (𝐹 ∈ (Poly‘𝑆) → (𝐹‘0) = (𝐴‘0))
1716adantr 484 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐹‘0) = (𝐴‘0))
18 simpr 488 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℕ)
1918nnred 11810 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
2019ltm1d 11729 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) < 𝑁)
21 nnre 11802 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ)
2221adantl 485 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ∈ ℝ)
23 peano2rem 11110 . . . . . . . . . . . 12 (𝑁 ∈ ℝ → (𝑁 − 1) ∈ ℝ)
2422, 23syl 17 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℝ)
25 simpll 767 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐹 ∈ (Poly‘𝑆))
26 nnm1nn0 12096 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → (𝑁 − 1) ∈ ℕ0)
2726adantl 485 . . . . . . . . . . . 12 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → (𝑁 − 1) ∈ ℕ0)
281, 6dgrub 25082 . . . . . . . . . . . . . . . . . . 19 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝑘 ∈ ℕ0 ∧ (𝐴𝑘) ≠ 0) → 𝑘𝑁)
29283expia 1123 . . . . . . . . . . . . . . . . . 18 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝑘 ∈ ℕ0) → ((𝐴𝑘) ≠ 0 → 𝑘𝑁))
3029ad2ant2rl 749 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → 𝑘𝑁))
31 simplr 769 . . . . . . . . . . . . . . . . . . 19 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝐴𝑁) = 0)
32 fveqeq2 6704 . . . . . . . . . . . . . . . . . . 19 (𝑁 = 𝑘 → ((𝐴𝑁) = 0 ↔ (𝐴𝑘) = 0))
3331, 32syl5ibcom 248 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑁 = 𝑘 → (𝐴𝑘) = 0))
3433necon3d 2953 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → 𝑁𝑘))
3530, 34jcad 516 . . . . . . . . . . . . . . . 16 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → ((𝐴𝑘) ≠ 0 → (𝑘𝑁𝑁𝑘)))
36 nn0re 12064 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0𝑘 ∈ ℝ)
3736ad2antll 729 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℝ)
3821ad2antrl 728 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℝ)
3937, 38ltlend 10942 . . . . . . . . . . . . . . . . 17 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → (𝑘 < 𝑁 ↔ (𝑘𝑁𝑁𝑘)))
40 nn0z 12165 . . . . . . . . . . . . . . . . . . 19 (𝑘 ∈ ℕ0𝑘 ∈ ℤ)
4140ad2antll 729 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑘 ∈ ℤ)
42 nnz 12164 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ ℕ → 𝑁 ∈ ℤ)
4342ad2antrl 728 . . . . . . . . . . . . . . . . . 18 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ (𝑁 ∈ ℕ ∧ 𝑘 ∈ ℕ0)) → 𝑁 ∈ ℤ)
44 zltlem1 12195 . . . . . . . . . . . . . . . . . 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 3094 . . . . . . . . . . . . 13 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ∀𝑘 ∈ ℕ0 ((𝐴𝑘) ≠ 0 → 𝑘 ≤ (𝑁 − 1)))
501coef3 25080 . . . . . . . . . . . . . . 15 (𝐹 ∈ (Poly‘𝑆) → 𝐴:ℕ0⟶ℂ)
5150ad2antrr 726 . . . . . . . . . . . . . 14 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝐴:ℕ0⟶ℂ)
52 plyco0 25040 . . . . . . . . . . . . . 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 25084 . . . . . . . . . . . 12 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝑁 − 1) ∈ ℕ0 ∧ (𝐴 “ (ℤ‘((𝑁 − 1) + 1))) = {0}) → 𝑁 ≤ (𝑁 − 1))
5625, 27, 54, 55syl3anc 1373 . . . . . . . . . . 11 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → 𝑁 ≤ (𝑁 − 1))
5722, 24, 56lensymd 10948 . . . . . . . . . 10 (((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) ∧ 𝑁 ∈ ℕ) → ¬ (𝑁 − 1) < 𝑁)
5820, 57pm2.65da 817 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → ¬ 𝑁 ∈ ℕ)
59 dgrcl 25081 . . . . . . . . . . . . 13 (𝐹 ∈ (Poly‘𝑆) → (deg‘𝐹) ∈ ℕ0)
606, 59eqeltrid 2835 . . . . . . . . . . . 12 (𝐹 ∈ (Poly‘𝑆) → 𝑁 ∈ ℕ0)
6160adantr 484 . . . . . . . . . . 11 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝑁 ∈ ℕ0)
62 elnn0 12057 . . . . . . . . . . 11 (𝑁 ∈ ℕ0 ↔ (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6361, 62sylib 221 . . . . . . . . . 10 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝑁 ∈ ℕ ∨ 𝑁 = 0))
6463ord 864 . . . . . . . . 9 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (¬ 𝑁 ∈ ℕ → 𝑁 = 0))
6558, 64mpd 15 . . . . . . . 8 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝑁 = 0)
6665fveq2d 6699 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐴𝑁) = (𝐴‘0))
67 simpr 488 . . . . . . 7 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐴𝑁) = 0)
6817, 66, 673eqtr2d 2777 . . . . . 6 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (𝐹‘0) = 0)
6968sneqd 4539 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → {(𝐹‘0)} = {0})
7069xpeq2d 5566 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (ℂ × {(𝐹‘0)}) = (ℂ × {0}))
716, 65eqtr3id 2785 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → (deg‘𝐹) = 0)
72 0dgrb 25094 . . . . . 6 (𝐹 ∈ (Poly‘𝑆) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7372adantr 484 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → ((deg‘𝐹) = 0 ↔ 𝐹 = (ℂ × {(𝐹‘0)})))
7471, 73mpbid 235 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 𝐹 = (ℂ × {(𝐹‘0)}))
75 df-0p 24521 . . . . 5 0𝑝 = (ℂ × {0})
7675a1i 11 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ (𝐴𝑁) = 0) → 0𝑝 = (ℂ × {0}))
7770, 74, 763eqtr4d 2781 . . 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 847   = wceq 1543  wcel 2112  wne 2932  wral 3051  {csn 4527   class class class wbr 5039   × cxp 5534  cima 5539  wf 6354  cfv 6358  (class class class)co 7191  cc 10692  cr 10693  0cc0 10694  1c1 10695   + caddc 10697   < clt 10832  cle 10833  cmin 11027  cn 11795  0cn0 12055  cz 12141  cuz 12403  0𝑝c0p 24520  Polycply 25032  coeffccoe 25034  degcdgr 25035
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1803  ax-4 1817  ax-5 1918  ax-6 1976  ax-7 2018  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2160  ax-12 2177  ax-ext 2708  ax-rep 5164  ax-sep 5177  ax-nul 5184  ax-pow 5243  ax-pr 5307  ax-un 7501  ax-inf2 9234  ax-cnex 10750  ax-resscn 10751  ax-1cn 10752  ax-icn 10753  ax-addcl 10754  ax-addrcl 10755  ax-mulcl 10756  ax-mulrcl 10757  ax-mulcom 10758  ax-addass 10759  ax-mulass 10760  ax-distr 10761  ax-i2m1 10762  ax-1ne0 10763  ax-1rid 10764  ax-rnegex 10765  ax-rrecex 10766  ax-cnre 10767  ax-pre-lttri 10768  ax-pre-lttrn 10769  ax-pre-ltadd 10770  ax-pre-mulgt0 10771  ax-pre-sup 10772
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 848  df-3or 1090  df-3an 1091  df-tru 1546  df-fal 1556  df-ex 1788  df-nf 1792  df-sb 2073  df-mo 2539  df-eu 2568  df-clab 2715  df-cleq 2728  df-clel 2809  df-nfc 2879  df-ne 2933  df-nel 3037  df-ral 3056  df-rex 3057  df-reu 3058  df-rmo 3059  df-rab 3060  df-v 3400  df-sbc 3684  df-csb 3799  df-dif 3856  df-un 3858  df-in 3860  df-ss 3870  df-pss 3872  df-nul 4224  df-if 4426  df-pw 4501  df-sn 4528  df-pr 4530  df-tp 4532  df-op 4534  df-uni 4806  df-int 4846  df-iun 4892  df-br 5040  df-opab 5102  df-mpt 5121  df-tr 5147  df-id 5440  df-eprel 5445  df-po 5453  df-so 5454  df-fr 5494  df-se 5495  df-we 5496  df-xp 5542  df-rel 5543  df-cnv 5544  df-co 5545  df-dm 5546  df-rn 5547  df-res 5548  df-ima 5549  df-pred 6140  df-ord 6194  df-on 6195  df-lim 6196  df-suc 6197  df-iota 6316  df-fun 6360  df-fn 6361  df-f 6362  df-f1 6363  df-fo 6364  df-f1o 6365  df-fv 6366  df-isom 6367  df-riota 7148  df-ov 7194  df-oprab 7195  df-mpo 7196  df-of 7447  df-om 7623  df-1st 7739  df-2nd 7740  df-wrecs 8025  df-recs 8086  df-rdg 8124  df-1o 8180  df-er 8369  df-map 8488  df-pm 8489  df-en 8605  df-dom 8606  df-sdom 8607  df-fin 8608  df-sup 9036  df-inf 9037  df-oi 9104  df-card 9520  df-pnf 10834  df-mnf 10835  df-xr 10836  df-ltxr 10837  df-le 10838  df-sub 11029  df-neg 11030  df-div 11455  df-nn 11796  df-2 11858  df-3 11859  df-n0 12056  df-z 12142  df-uz 12404  df-rp 12552  df-fz 13061  df-fzo 13204  df-fl 13332  df-seq 13540  df-exp 13601  df-hash 13862  df-cj 14627  df-re 14628  df-im 14629  df-sqrt 14763  df-abs 14764  df-clim 15014  df-rlim 15015  df-sum 15215  df-0p 24521  df-ply 25036  df-coe 25038  df-dgr 25039
This theorem is referenced by:  dgrlt  25114  dgradd2  25116  dgrmul  25118  dgrcolem2  25122  plymul0or  25128  plydivlem4  25143  plydiveu  25145  vieta1lem2  25158  vieta1  25159  aareccl  25173  ftalem2  25910  ftalem4  25912  ftalem5  25913  signsply0  32196  mpaaeu  40619  elaa2lem  43392
  Copyright terms: Public domain W3C validator