Metamath Proof Explorer


Theorem plymul0or

Description: Polynomial multiplication has no zero divisors. (Contributed by Mario Carneiro, 26-Jul-2014)

Ref Expression
Assertion plymul0or FPolySGPolySF×fG=0𝑝F=0𝑝G=0𝑝

Proof

Step Hyp Ref Expression
1 dgrcl FPolySdegF0
2 dgrcl GPolySdegG0
3 nn0addcl degF0degG0degF+degG0
4 1 2 3 syl2an FPolySGPolySdegF+degG0
5 c0ex 0V
6 5 fvconst2 degF+degG00×0degF+degG=0
7 4 6 syl FPolySGPolyS0×0degF+degG=0
8 fveq2 F×fG=0𝑝coeffF×fG=coeff0𝑝
9 coe0 coeff0𝑝=0×0
10 8 9 eqtrdi F×fG=0𝑝coeffF×fG=0×0
11 10 fveq1d F×fG=0𝑝coeffF×fGdegF+degG=0×0degF+degG
12 11 eqeq1d F×fG=0𝑝coeffF×fGdegF+degG=00×0degF+degG=0
13 7 12 syl5ibrcom FPolySGPolySF×fG=0𝑝coeffF×fGdegF+degG=0
14 eqid coeffF=coeffF
15 eqid coeffG=coeffG
16 eqid degF=degF
17 eqid degG=degG
18 14 15 16 17 coemulhi FPolySGPolyScoeffF×fGdegF+degG=coeffFdegFcoeffGdegG
19 18 eqeq1d FPolySGPolyScoeffF×fGdegF+degG=0coeffFdegFcoeffGdegG=0
20 14 coef3 FPolyScoeffF:0
21 20 adantr FPolySGPolyScoeffF:0
22 1 adantr FPolySGPolySdegF0
23 21 22 ffvelcdmd FPolySGPolyScoeffFdegF
24 15 coef3 GPolyScoeffG:0
25 24 adantl FPolySGPolyScoeffG:0
26 2 adantl FPolySGPolySdegG0
27 25 26 ffvelcdmd FPolySGPolyScoeffGdegG
28 23 27 mul0ord FPolySGPolyScoeffFdegFcoeffGdegG=0coeffFdegF=0coeffGdegG=0
29 19 28 bitrd FPolySGPolyScoeffF×fGdegF+degG=0coeffFdegF=0coeffGdegG=0
30 13 29 sylibd FPolySGPolySF×fG=0𝑝coeffFdegF=0coeffGdegG=0
31 16 14 dgreq0 FPolySF=0𝑝coeffFdegF=0
32 31 adantr FPolySGPolySF=0𝑝coeffFdegF=0
33 17 15 dgreq0 GPolySG=0𝑝coeffGdegG=0
34 33 adantl FPolySGPolySG=0𝑝coeffGdegG=0
35 32 34 orbi12d FPolySGPolySF=0𝑝G=0𝑝coeffFdegF=0coeffGdegG=0
36 30 35 sylibrd FPolySGPolySF×fG=0𝑝F=0𝑝G=0𝑝
37 cnex V
38 37 a1i FPolySGPolySV
39 plyf GPolySG:
40 39 adantl FPolySGPolySG:
41 0cnd FPolySGPolyS0
42 mul02 x0x=0
43 42 adantl FPolySGPolySx0x=0
44 38 40 41 41 43 caofid2 FPolySGPolyS×0×fG=×0
45 id F=0𝑝F=0𝑝
46 df-0p 0𝑝=×0
47 45 46 eqtrdi F=0𝑝F=×0
48 47 oveq1d F=0𝑝F×fG=×0×fG
49 48 eqeq1d F=0𝑝F×fG=×0×0×fG=×0
50 44 49 syl5ibrcom FPolySGPolySF=0𝑝F×fG=×0
51 plyf FPolySF:
52 51 adantr FPolySGPolySF:
53 mul01 xx0=0
54 53 adantl FPolySGPolySxx0=0
55 38 52 41 41 54 caofid1 FPolySGPolySF×f×0=×0
56 id G=0𝑝G=0𝑝
57 56 46 eqtrdi G=0𝑝G=×0
58 57 oveq2d G=0𝑝F×fG=F×f×0
59 58 eqeq1d G=0𝑝F×fG=×0F×f×0=×0
60 55 59 syl5ibrcom FPolySGPolySG=0𝑝F×fG=×0
61 50 60 jaod FPolySGPolySF=0𝑝G=0𝑝F×fG=×0
62 46 eqeq2i F×fG=0𝑝F×fG=×0
63 61 62 syl6ibr FPolySGPolySF=0𝑝G=0𝑝F×fG=0𝑝
64 36 63 impbid FPolySGPolySF×fG=0𝑝F=0𝑝G=0𝑝