Metamath Proof Explorer


Theorem dgrmul

Description: The degree of a product of nonzero polynomials is the sum of degrees. (Contributed by Mario Carneiro, 24-Jul-2014)

Ref Expression
Hypotheses dgradd.1 โŠข ๐‘€ = ( deg โ€˜ ๐น )
dgradd.2 โŠข ๐‘ = ( deg โ€˜ ๐บ )
Assertion dgrmul ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) = ( ๐‘€ + ๐‘ ) )

Proof

Step Hyp Ref Expression
1 dgradd.1 โŠข ๐‘€ = ( deg โ€˜ ๐น )
2 dgradd.2 โŠข ๐‘ = ( deg โ€˜ ๐บ )
3 1 2 dgrmul2 โŠข ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) ) โ†’ ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โ‰ค ( ๐‘€ + ๐‘ ) )
4 3 ad2ant2r โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โ‰ค ( ๐‘€ + ๐‘ ) )
5 plymulcl โŠข ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) ) โ†’ ( ๐น โˆ˜f ยท ๐บ ) โˆˆ ( Poly โ€˜ โ„‚ ) )
6 5 ad2ant2r โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ๐น โˆ˜f ยท ๐บ ) โˆˆ ( Poly โ€˜ โ„‚ ) )
7 dgrcl โŠข ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ( deg โ€˜ ๐น ) โˆˆ โ„•0 )
8 1 7 eqeltrid โŠข ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ๐‘€ โˆˆ โ„•0 )
9 8 ad2antrr โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ๐‘€ โˆˆ โ„•0 )
10 dgrcl โŠข ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ( deg โ€˜ ๐บ ) โˆˆ โ„•0 )
11 2 10 eqeltrid โŠข ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ๐‘ โˆˆ โ„•0 )
12 11 ad2antrl โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ๐‘ โˆˆ โ„•0 )
13 9 12 nn0addcld โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ๐‘€ + ๐‘ ) โˆˆ โ„•0 )
14 eqid โŠข ( coeff โ€˜ ๐น ) = ( coeff โ€˜ ๐น )
15 eqid โŠข ( coeff โ€˜ ๐บ ) = ( coeff โ€˜ ๐บ )
16 14 15 1 2 coemulhi โŠข ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) ) โ†’ ( ( coeff โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โ€˜ ( ๐‘€ + ๐‘ ) ) = ( ( ( coeff โ€˜ ๐น ) โ€˜ ๐‘€ ) ยท ( ( coeff โ€˜ ๐บ ) โ€˜ ๐‘ ) ) )
17 16 ad2ant2r โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ( coeff โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โ€˜ ( ๐‘€ + ๐‘ ) ) = ( ( ( coeff โ€˜ ๐น ) โ€˜ ๐‘€ ) ยท ( ( coeff โ€˜ ๐บ ) โ€˜ ๐‘ ) ) )
18 14 coef3 โŠข ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ( coeff โ€˜ ๐น ) : โ„•0 โŸถ โ„‚ )
19 18 ad2antrr โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( coeff โ€˜ ๐น ) : โ„•0 โŸถ โ„‚ )
20 19 9 ffvelcdmd โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ( coeff โ€˜ ๐น ) โ€˜ ๐‘€ ) โˆˆ โ„‚ )
21 15 coef3 โŠข ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ( coeff โ€˜ ๐บ ) : โ„•0 โŸถ โ„‚ )
22 21 ad2antrl โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( coeff โ€˜ ๐บ ) : โ„•0 โŸถ โ„‚ )
23 22 12 ffvelcdmd โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ( coeff โ€˜ ๐บ ) โ€˜ ๐‘ ) โˆˆ โ„‚ )
24 1 14 dgreq0 โŠข ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ( ๐น = 0๐‘ โ†” ( ( coeff โ€˜ ๐น ) โ€˜ ๐‘€ ) = 0 ) )
25 24 necon3bid โŠข ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ( ๐น โ‰  0๐‘ โ†” ( ( coeff โ€˜ ๐น ) โ€˜ ๐‘€ ) โ‰  0 ) )
26 25 biimpa โŠข ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โ†’ ( ( coeff โ€˜ ๐น ) โ€˜ ๐‘€ ) โ‰  0 )
27 26 adantr โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ( coeff โ€˜ ๐น ) โ€˜ ๐‘€ ) โ‰  0 )
28 2 15 dgreq0 โŠข ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ( ๐บ = 0๐‘ โ†” ( ( coeff โ€˜ ๐บ ) โ€˜ ๐‘ ) = 0 ) )
29 28 necon3bid โŠข ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โ†’ ( ๐บ โ‰  0๐‘ โ†” ( ( coeff โ€˜ ๐บ ) โ€˜ ๐‘ ) โ‰  0 ) )
30 29 biimpa โŠข ( ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) โ†’ ( ( coeff โ€˜ ๐บ ) โ€˜ ๐‘ ) โ‰  0 )
31 30 adantl โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ( coeff โ€˜ ๐บ ) โ€˜ ๐‘ ) โ‰  0 )
32 20 23 27 31 mulne0d โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ( ( coeff โ€˜ ๐น ) โ€˜ ๐‘€ ) ยท ( ( coeff โ€˜ ๐บ ) โ€˜ ๐‘ ) ) โ‰  0 )
33 17 32 eqnetrd โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ( coeff โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โ€˜ ( ๐‘€ + ๐‘ ) ) โ‰  0 )
34 eqid โŠข ( coeff โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) = ( coeff โ€˜ ( ๐น โˆ˜f ยท ๐บ ) )
35 eqid โŠข ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) = ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) )
36 34 35 dgrub โŠข ( ( ( ๐น โˆ˜f ยท ๐บ ) โˆˆ ( Poly โ€˜ โ„‚ ) โˆง ( ๐‘€ + ๐‘ ) โˆˆ โ„•0 โˆง ( ( coeff โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โ€˜ ( ๐‘€ + ๐‘ ) ) โ‰  0 ) โ†’ ( ๐‘€ + ๐‘ ) โ‰ค ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) )
37 6 13 33 36 syl3anc โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ๐‘€ + ๐‘ ) โ‰ค ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) )
38 dgrcl โŠข ( ( ๐น โˆ˜f ยท ๐บ ) โˆˆ ( Poly โ€˜ โ„‚ ) โ†’ ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โˆˆ โ„•0 )
39 6 38 syl โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โˆˆ โ„•0 )
40 39 nn0red โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โˆˆ โ„ )
41 13 nn0red โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ๐‘€ + ๐‘ ) โˆˆ โ„ )
42 40 41 letri3d โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) = ( ๐‘€ + ๐‘ ) โ†” ( ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) โ‰ค ( ๐‘€ + ๐‘ ) โˆง ( ๐‘€ + ๐‘ ) โ‰ค ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) ) ) )
43 4 37 42 mpbir2and โŠข ( ( ( ๐น โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐น โ‰  0๐‘ ) โˆง ( ๐บ โˆˆ ( Poly โ€˜ ๐‘† ) โˆง ๐บ โ‰  0๐‘ ) ) โ†’ ( deg โ€˜ ( ๐น โˆ˜f ยท ๐บ ) ) = ( ๐‘€ + ๐‘ ) )