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

Theorem dgrmul 24367
Description: The degree of a product of nonzero polynomials is the sum of degrees. (Contributed by Mario Carneiro, 24-Jul-2014.)
Hypotheses
Ref Expression
dgradd.1 𝑀 = (deg‘𝐹)
dgradd.2 𝑁 = (deg‘𝐺)
Assertion
Ref Expression
dgrmul (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (deg‘(𝐹𝑓 · 𝐺)) = (𝑀 + 𝑁))

Proof of Theorem dgrmul
StepHypRef Expression
1 dgradd.1 . . . 4 𝑀 = (deg‘𝐹)
2 dgradd.2 . . . 4 𝑁 = (deg‘𝐺)
31, 2dgrmul2 24366 . . 3 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝐺 ∈ (Poly‘𝑆)) → (deg‘(𝐹𝑓 · 𝐺)) ≤ (𝑀 + 𝑁))
43ad2ant2r 754 . 2 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (deg‘(𝐹𝑓 · 𝐺)) ≤ (𝑀 + 𝑁))
5 plymulcl 24318 . . . 4 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝐺 ∈ (Poly‘𝑆)) → (𝐹𝑓 · 𝐺) ∈ (Poly‘ℂ))
65ad2ant2r 754 . . 3 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (𝐹𝑓 · 𝐺) ∈ (Poly‘ℂ))
7 dgrcl 24330 . . . . . 6 (𝐹 ∈ (Poly‘𝑆) → (deg‘𝐹) ∈ ℕ0)
81, 7syl5eqel 2882 . . . . 5 (𝐹 ∈ (Poly‘𝑆) → 𝑀 ∈ ℕ0)
98ad2antrr 718 . . . 4 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → 𝑀 ∈ ℕ0)
10 dgrcl 24330 . . . . . 6 (𝐺 ∈ (Poly‘𝑆) → (deg‘𝐺) ∈ ℕ0)
112, 10syl5eqel 2882 . . . . 5 (𝐺 ∈ (Poly‘𝑆) → 𝑁 ∈ ℕ0)
1211ad2antrl 720 . . . 4 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → 𝑁 ∈ ℕ0)
139, 12nn0addcld 11644 . . 3 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (𝑀 + 𝑁) ∈ ℕ0)
14 eqid 2799 . . . . . 6 (coeff‘𝐹) = (coeff‘𝐹)
15 eqid 2799 . . . . . 6 (coeff‘𝐺) = (coeff‘𝐺)
1614, 15, 1, 2coemulhi 24351 . . . . 5 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝐺 ∈ (Poly‘𝑆)) → ((coeff‘(𝐹𝑓 · 𝐺))‘(𝑀 + 𝑁)) = (((coeff‘𝐹)‘𝑀) · ((coeff‘𝐺)‘𝑁)))
1716ad2ant2r 754 . . . 4 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → ((coeff‘(𝐹𝑓 · 𝐺))‘(𝑀 + 𝑁)) = (((coeff‘𝐹)‘𝑀) · ((coeff‘𝐺)‘𝑁)))
1814coef3 24329 . . . . . . 7 (𝐹 ∈ (Poly‘𝑆) → (coeff‘𝐹):ℕ0⟶ℂ)
1918ad2antrr 718 . . . . . 6 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (coeff‘𝐹):ℕ0⟶ℂ)
2019, 9ffvelrnd 6586 . . . . 5 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → ((coeff‘𝐹)‘𝑀) ∈ ℂ)
2115coef3 24329 . . . . . . 7 (𝐺 ∈ (Poly‘𝑆) → (coeff‘𝐺):ℕ0⟶ℂ)
2221ad2antrl 720 . . . . . 6 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (coeff‘𝐺):ℕ0⟶ℂ)
2322, 12ffvelrnd 6586 . . . . 5 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → ((coeff‘𝐺)‘𝑁) ∈ ℂ)
241, 14dgreq0 24362 . . . . . . . 8 (𝐹 ∈ (Poly‘𝑆) → (𝐹 = 0𝑝 ↔ ((coeff‘𝐹)‘𝑀) = 0))
2524necon3bid 3015 . . . . . . 7 (𝐹 ∈ (Poly‘𝑆) → (𝐹 ≠ 0𝑝 ↔ ((coeff‘𝐹)‘𝑀) ≠ 0))
2625biimpa 469 . . . . . 6 ((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) → ((coeff‘𝐹)‘𝑀) ≠ 0)
2726adantr 473 . . . . 5 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → ((coeff‘𝐹)‘𝑀) ≠ 0)
282, 15dgreq0 24362 . . . . . . . 8 (𝐺 ∈ (Poly‘𝑆) → (𝐺 = 0𝑝 ↔ ((coeff‘𝐺)‘𝑁) = 0))
2928necon3bid 3015 . . . . . . 7 (𝐺 ∈ (Poly‘𝑆) → (𝐺 ≠ 0𝑝 ↔ ((coeff‘𝐺)‘𝑁) ≠ 0))
3029biimpa 469 . . . . . 6 ((𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝) → ((coeff‘𝐺)‘𝑁) ≠ 0)
3130adantl 474 . . . . 5 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → ((coeff‘𝐺)‘𝑁) ≠ 0)
3220, 23, 27, 31mulne0d 10971 . . . 4 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (((coeff‘𝐹)‘𝑀) · ((coeff‘𝐺)‘𝑁)) ≠ 0)
3317, 32eqnetrd 3038 . . 3 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → ((coeff‘(𝐹𝑓 · 𝐺))‘(𝑀 + 𝑁)) ≠ 0)
34 eqid 2799 . . . 4 (coeff‘(𝐹𝑓 · 𝐺)) = (coeff‘(𝐹𝑓 · 𝐺))
35 eqid 2799 . . . 4 (deg‘(𝐹𝑓 · 𝐺)) = (deg‘(𝐹𝑓 · 𝐺))
3634, 35dgrub 24331 . . 3 (((𝐹𝑓 · 𝐺) ∈ (Poly‘ℂ) ∧ (𝑀 + 𝑁) ∈ ℕ0 ∧ ((coeff‘(𝐹𝑓 · 𝐺))‘(𝑀 + 𝑁)) ≠ 0) → (𝑀 + 𝑁) ≤ (deg‘(𝐹𝑓 · 𝐺)))
376, 13, 33, 36syl3anc 1491 . 2 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (𝑀 + 𝑁) ≤ (deg‘(𝐹𝑓 · 𝐺)))
38 dgrcl 24330 . . . . 5 ((𝐹𝑓 · 𝐺) ∈ (Poly‘ℂ) → (deg‘(𝐹𝑓 · 𝐺)) ∈ ℕ0)
396, 38syl 17 . . . 4 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (deg‘(𝐹𝑓 · 𝐺)) ∈ ℕ0)
4039nn0red 11641 . . 3 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (deg‘(𝐹𝑓 · 𝐺)) ∈ ℝ)
4113nn0red 11641 . . 3 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (𝑀 + 𝑁) ∈ ℝ)
4240, 41letri3d 10469 . 2 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → ((deg‘(𝐹𝑓 · 𝐺)) = (𝑀 + 𝑁) ↔ ((deg‘(𝐹𝑓 · 𝐺)) ≤ (𝑀 + 𝑁) ∧ (𝑀 + 𝑁) ≤ (deg‘(𝐹𝑓 · 𝐺)))))
434, 37, 42mpbir2and 705 1 (((𝐹 ∈ (Poly‘𝑆) ∧ 𝐹 ≠ 0𝑝) ∧ (𝐺 ∈ (Poly‘𝑆) ∧ 𝐺 ≠ 0𝑝)) → (deg‘(𝐹𝑓 · 𝐺)) = (𝑀 + 𝑁))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 385   = wceq 1653  wcel 2157  wne 2971   class class class wbr 4843  wf 6097  cfv 6101  (class class class)co 6878  𝑓 cof 7129  cc 10222  0cc0 10224   + caddc 10227   · cmul 10229  cle 10364  0cn0 11580  0𝑝c0p 23777  Polycply 24281  coeffccoe 24283  degcdgr 24284
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1891  ax-4 1905  ax-5 2006  ax-6 2072  ax-7 2107  ax-8 2159  ax-9 2166  ax-10 2185  ax-11 2200  ax-12 2213  ax-13 2377  ax-ext 2777  ax-rep 4964  ax-sep 4975  ax-nul 4983  ax-pow 5035  ax-pr 5097  ax-un 7183  ax-inf2 8788  ax-cnex 10280  ax-resscn 10281  ax-1cn 10282  ax-icn 10283  ax-addcl 10284  ax-addrcl 10285  ax-mulcl 10286  ax-mulrcl 10287  ax-mulcom 10288  ax-addass 10289  ax-mulass 10290  ax-distr 10291  ax-i2m1 10292  ax-1ne0 10293  ax-1rid 10294  ax-rnegex 10295  ax-rrecex 10296  ax-cnre 10297  ax-pre-lttri 10298  ax-pre-lttrn 10299  ax-pre-ltadd 10300  ax-pre-mulgt0 10301  ax-pre-sup 10302  ax-addf 10303
This theorem depends on definitions:  df-bi 199  df-an 386  df-or 875  df-3or 1109  df-3an 1110  df-tru 1657  df-fal 1667  df-ex 1876  df-nf 1880  df-sb 2065  df-mo 2591  df-eu 2609  df-clab 2786  df-cleq 2792  df-clel 2795  df-nfc 2930  df-ne 2972  df-nel 3075  df-ral 3094  df-rex 3095  df-reu 3096  df-rmo 3097  df-rab 3098  df-v 3387  df-sbc 3634  df-csb 3729  df-dif 3772  df-un 3774  df-in 3776  df-ss 3783  df-pss 3785  df-nul 4116  df-if 4278  df-pw 4351  df-sn 4369  df-pr 4371  df-tp 4373  df-op 4375  df-uni 4629  df-int 4668  df-iun 4712  df-br 4844  df-opab 4906  df-mpt 4923  df-tr 4946  df-id 5220  df-eprel 5225  df-po 5233  df-so 5234  df-fr 5271  df-se 5272  df-we 5273  df-xp 5318  df-rel 5319  df-cnv 5320  df-co 5321  df-dm 5322  df-rn 5323  df-res 5324  df-ima 5325  df-pred 5898  df-ord 5944  df-on 5945  df-lim 5946  df-suc 5947  df-iota 6064  df-fun 6103  df-fn 6104  df-f 6105  df-f1 6106  df-fo 6107  df-f1o 6108  df-fv 6109  df-isom 6110  df-riota 6839  df-ov 6881  df-oprab 6882  df-mpt2 6883  df-of 7131  df-om 7300  df-1st 7401  df-2nd 7402  df-wrecs 7645  df-recs 7707  df-rdg 7745  df-1o 7799  df-oadd 7803  df-er 7982  df-map 8097  df-pm 8098  df-en 8196  df-dom 8197  df-sdom 8198  df-fin 8199  df-sup 8590  df-inf 8591  df-oi 8657  df-card 9051  df-pnf 10365  df-mnf 10366  df-xr 10367  df-ltxr 10368  df-le 10369  df-sub 10558  df-neg 10559  df-div 10977  df-nn 11313  df-2 11376  df-3 11377  df-n0 11581  df-z 11667  df-uz 11931  df-rp 12075  df-fz 12581  df-fzo 12721  df-fl 12848  df-seq 13056  df-exp 13115  df-hash 13371  df-cj 14180  df-re 14181  df-im 14182  df-sqrt 14316  df-abs 14317  df-clim 14560  df-rlim 14561  df-sum 14758  df-0p 23778  df-ply 24285  df-coe 24287  df-dgr 24288
This theorem is referenced by:  dgrmulc  24368  dgrcolem1  24370  plydivlem4  24392  plydiveu  24394  fta1lem  24403  quotcan  24405  vieta1lem1  24406  vieta1lem2  24407
  Copyright terms: Public domain W3C validator