Metamath Proof Explorer


Theorem mplmonmul

Description: The product of two monomials adds the exponent vectors together. For example, the product of ( x ^ 2 ) ( y ^ 2 ) with ( y ^ 1 ) ( z ^ 3 ) is ( x ^ 2 ) ( y ^ 3 ) ( z ^ 3 ) , where the exponent vectors <. 2 , 2 , 0 >. and <. 0 , 1 , 3 >. are added to give <. 2 , 3 , 3 >. . (Contributed by Mario Carneiro, 9-Jan-2015)

Ref Expression
Hypotheses mplmon.s P=ImPolyR
mplmon.b B=BaseP
mplmon.z 0˙=0R
mplmon.o 1˙=1R
mplmon.d D=f0I|f-1Fin
mplmon.i φIW
mplmon.r φRRing
mplmon.x φXD
mplmonmul.t ·˙=P
mplmonmul.x φYD
Assertion mplmonmul φyDify=X1˙0˙·˙yDify=Y1˙0˙=yDify=X+fY1˙0˙

Proof

Step Hyp Ref Expression
1 mplmon.s P=ImPolyR
2 mplmon.b B=BaseP
3 mplmon.z 0˙=0R
4 mplmon.o 1˙=1R
5 mplmon.d D=f0I|f-1Fin
6 mplmon.i φIW
7 mplmon.r φRRing
8 mplmon.x φXD
9 mplmonmul.t ·˙=P
10 mplmonmul.x φYD
11 eqid R=R
12 1 2 3 4 5 6 7 8 mplmon φyDify=X1˙0˙B
13 1 2 3 4 5 6 7 10 mplmon φyDify=Y1˙0˙B
14 1 2 11 9 5 12 13 mplmul φyDify=X1˙0˙·˙yDify=Y1˙0˙=kDRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj
15 eqeq1 y=ky=X+fYk=X+fY
16 15 ifbid y=kify=X+fY1˙0˙=ifk=X+fY1˙0˙
17 16 cbvmptv yDify=X+fY1˙0˙=kDifk=X+fY1˙0˙
18 simpr φkDXxD|xfkXxD|xfk
19 18 snssd φkDXxD|xfkXxD|xfk
20 19 resmptd φkDXxD|xfkjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=jXyDify=X1˙0˙jRyDify=Y1˙0˙kfj
21 20 oveq2d φkDXxD|xfkRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=RjXyDify=X1˙0˙jRyDify=Y1˙0˙kfj
22 7 ad2antrr φkDXxD|xfkRRing
23 ringmnd RRingRMnd
24 22 23 syl φkDXxD|xfkRMnd
25 8 ad2antrr φkDXxD|xfkXD
26 iftrue y=Xify=X1˙0˙=1˙
27 eqid yDify=X1˙0˙=yDify=X1˙0˙
28 4 fvexi 1˙V
29 26 27 28 fvmpt XDyDify=X1˙0˙X=1˙
30 25 29 syl φkDXxD|xfkyDify=X1˙0˙X=1˙
31 ssrab2 xD|xfkD
32 simplr φkDXxD|xfkkD
33 eqid xD|xfk=xD|xfk
34 5 33 psrbagconcl kDXxD|xfkkfXxD|xfk
35 32 18 34 syl2anc φkDXxD|xfkkfXxD|xfk
36 31 35 sselid φkDXxD|xfkkfXD
37 eqeq1 y=kfXy=YkfX=Y
38 37 ifbid y=kfXify=Y1˙0˙=ifkfX=Y1˙0˙
39 eqid yDify=Y1˙0˙=yDify=Y1˙0˙
40 3 fvexi 0˙V
41 28 40 ifex ifkfX=Y1˙0˙V
42 38 39 41 fvmpt kfXDyDify=Y1˙0˙kfX=ifkfX=Y1˙0˙
43 36 42 syl φkDXxD|xfkyDify=Y1˙0˙kfX=ifkfX=Y1˙0˙
44 30 43 oveq12d φkDXxD|xfkyDify=X1˙0˙XRyDify=Y1˙0˙kfX=1˙RifkfX=Y1˙0˙
45 eqid BaseR=BaseR
46 45 4 ringidcl RRing1˙BaseR
47 45 3 ring0cl RRing0˙BaseR
48 46 47 ifcld RRingifkfX=Y1˙0˙BaseR
49 22 48 syl φkDXxD|xfkifkfX=Y1˙0˙BaseR
50 45 11 4 ringlidm RRingifkfX=Y1˙0˙BaseR1˙RifkfX=Y1˙0˙=ifkfX=Y1˙0˙
51 22 49 50 syl2anc φkDXxD|xfk1˙RifkfX=Y1˙0˙=ifkfX=Y1˙0˙
52 5 psrbagf kDk:I0
53 32 52 syl φkDXxD|xfkk:I0
54 53 ffvelcdmda φkDXxD|xfkzIkz0
55 8 adantr φkDXD
56 5 psrbagf XDX:I0
57 55 56 syl φkDX:I0
58 57 ffvelcdmda φkDzIXz0
59 58 adantlr φkDXxD|xfkzIXz0
60 5 psrbagf YDY:I0
61 10 60 syl φY:I0
62 61 adantr φkDY:I0
63 62 ffvelcdmda φkDzIYz0
64 63 adantlr φkDXxD|xfkzIYz0
65 nn0cn kz0kz
66 nn0cn Xz0Xz
67 nn0cn Yz0Yz
68 subadd kzXzYzkzXz=YzXz+Yz=kz
69 65 66 67 68 syl3an kz0Xz0Yz0kzXz=YzXz+Yz=kz
70 54 59 64 69 syl3anc φkDXxD|xfkzIkzXz=YzXz+Yz=kz
71 eqcom Xz+Yz=kzkz=Xz+Yz
72 70 71 bitrdi φkDXxD|xfkzIkzXz=Yzkz=Xz+Yz
73 72 ralbidva φkDXxD|xfkzIkzXz=YzzIkz=Xz+Yz
74 mpteqb zIkzXzVzIkzXz=zIYzzIkzXz=Yz
75 ovexd zIkzXzV
76 74 75 mprg zIkzXz=zIYzzIkzXz=Yz
77 mpteqb zIkzVzIkz=zIXz+YzzIkz=Xz+Yz
78 fvexd zIkzV
79 77 78 mprg zIkz=zIXz+YzzIkz=Xz+Yz
80 73 76 79 3bitr4g φkDXxD|xfkzIkzXz=zIYzzIkz=zIXz+Yz
81 6 ad2antrr φkDXxD|xfkIW
82 53 feqmptd φkDXxD|xfkk=zIkz
83 57 feqmptd φkDX=zIXz
84 83 adantr φkDXxD|xfkX=zIXz
85 81 54 59 82 84 offval2 φkDXxD|xfkkfX=zIkzXz
86 62 feqmptd φkDY=zIYz
87 86 adantr φkDXxD|xfkY=zIYz
88 85 87 eqeq12d φkDXxD|xfkkfX=YzIkzXz=zIYz
89 6 adantr φkDIW
90 89 58 63 83 86 offval2 φkDX+fY=zIXz+Yz
91 90 adantr φkDXxD|xfkX+fY=zIXz+Yz
92 82 91 eqeq12d φkDXxD|xfkk=X+fYzIkz=zIXz+Yz
93 80 88 92 3bitr4d φkDXxD|xfkkfX=Yk=X+fY
94 93 ifbid φkDXxD|xfkifkfX=Y1˙0˙=ifk=X+fY1˙0˙
95 44 51 94 3eqtrd φkDXxD|xfkyDify=X1˙0˙XRyDify=Y1˙0˙kfX=ifk=X+fY1˙0˙
96 94 49 eqeltrrd φkDXxD|xfkifk=X+fY1˙0˙BaseR
97 95 96 eqeltrd φkDXxD|xfkyDify=X1˙0˙XRyDify=Y1˙0˙kfXBaseR
98 fveq2 j=XyDify=X1˙0˙j=yDify=X1˙0˙X
99 oveq2 j=Xkfj=kfX
100 99 fveq2d j=XyDify=Y1˙0˙kfj=yDify=Y1˙0˙kfX
101 98 100 oveq12d j=XyDify=X1˙0˙jRyDify=Y1˙0˙kfj=yDify=X1˙0˙XRyDify=Y1˙0˙kfX
102 45 101 gsumsn RMndXDyDify=X1˙0˙XRyDify=Y1˙0˙kfXBaseRRjXyDify=X1˙0˙jRyDify=Y1˙0˙kfj=yDify=X1˙0˙XRyDify=Y1˙0˙kfX
103 24 25 97 102 syl3anc φkDXxD|xfkRjXyDify=X1˙0˙jRyDify=Y1˙0˙kfj=yDify=X1˙0˙XRyDify=Y1˙0˙kfX
104 21 103 95 3eqtrd φkDXxD|xfkRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=ifk=X+fY1˙0˙
105 3 gsum0 R=0˙
106 disjsn xD|xfkX=¬XxD|xfk
107 7 ad2antrr φkDjxD|xfkRRing
108 1 45 2 5 12 mplelf φyDify=X1˙0˙:DBaseR
109 108 ad2antrr φkDjxD|xfkyDify=X1˙0˙:DBaseR
110 simpr φkDjxD|xfkjxD|xfk
111 31 110 sselid φkDjxD|xfkjD
112 109 111 ffvelcdmd φkDjxD|xfkyDify=X1˙0˙jBaseR
113 1 45 2 5 13 mplelf φyDify=Y1˙0˙:DBaseR
114 113 ad2antrr φkDjxD|xfkyDify=Y1˙0˙:DBaseR
115 simplr φkDjxD|xfkkD
116 5 33 psrbagconcl kDjxD|xfkkfjxD|xfk
117 115 110 116 syl2anc φkDjxD|xfkkfjxD|xfk
118 31 117 sselid φkDjxD|xfkkfjD
119 114 118 ffvelcdmd φkDjxD|xfkyDify=Y1˙0˙kfjBaseR
120 45 11 ringcl RRingyDify=X1˙0˙jBaseRyDify=Y1˙0˙kfjBaseRyDify=X1˙0˙jRyDify=Y1˙0˙kfjBaseR
121 107 112 119 120 syl3anc φkDjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjBaseR
122 121 fmpttd φkDjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj:xD|xfkBaseR
123 ffn jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj:xD|xfkBaseRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjFnxD|xfk
124 fnresdisj jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjFnxD|xfkxD|xfkX=jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=
125 122 123 124 3syl φkDxD|xfkX=jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=
126 125 biimpa φkDxD|xfkX=jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=
127 106 126 sylan2br φkD¬XxD|xfkjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=
128 127 oveq2d φkD¬XxD|xfkRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=R
129 breq1 x=XxfX+fYXfX+fY
130 58 nn0red φkDzIXz
131 nn0addge1 XzYz0XzXz+Yz
132 130 63 131 syl2anc φkDzIXzXz+Yz
133 132 ralrimiva φkDzIXzXz+Yz
134 ovexd φkDzIXz+YzV
135 89 58 134 83 90 ofrfval2 φkDXfX+fYzIXzXz+Yz
136 133 135 mpbird φkDXfX+fY
137 129 55 136 elrabd φkDXxD|xfX+fY
138 breq2 k=X+fYxfkxfX+fY
139 138 rabbidv k=X+fYxD|xfk=xD|xfX+fY
140 139 eleq2d k=X+fYXxD|xfkXxD|xfX+fY
141 137 140 syl5ibrcom φkDk=X+fYXxD|xfk
142 141 con3dimp φkD¬XxD|xfk¬k=X+fY
143 142 iffalsed φkD¬XxD|xfkifk=X+fY1˙0˙=0˙
144 105 128 143 3eqtr4a φkD¬XxD|xfkRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=ifk=X+fY1˙0˙
145 104 144 pm2.61dan φkDRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=ifk=X+fY1˙0˙
146 7 adantr φkDRRing
147 ringcmn RRingRCMnd
148 146 147 syl φkDRCMnd
149 5 psrbaglefi kDxD|xfkFin
150 149 adantl φkDxD|xfkFin
151 ssdif xD|xfkDxD|xfkXDX
152 31 151 ax-mp xD|xfkXDX
153 152 sseli jxD|xfkXjDX
154 108 adantr φkDyDify=X1˙0˙:DBaseR
155 eldifsni yDXyX
156 155 adantl φkDyDXyX
157 156 neneqd φkDyDX¬y=X
158 157 iffalsed φkDyDXify=X1˙0˙=0˙
159 ovex 0IV
160 5 159 rabex2 DV
161 160 a1i φkDDV
162 158 161 suppss2 φkDyDify=X1˙0˙supp0˙X
163 40 a1i φkD0˙V
164 154 162 161 163 suppssr φkDjDXyDify=X1˙0˙j=0˙
165 153 164 sylan2 φkDjxD|xfkXyDify=X1˙0˙j=0˙
166 165 oveq1d φkDjxD|xfkXyDify=X1˙0˙jRyDify=Y1˙0˙kfj=0˙RyDify=Y1˙0˙kfj
167 eldifi jxD|xfkXjxD|xfk
168 45 11 3 ringlz RRingyDify=Y1˙0˙kfjBaseR0˙RyDify=Y1˙0˙kfj=0˙
169 107 119 168 syl2anc φkDjxD|xfk0˙RyDify=Y1˙0˙kfj=0˙
170 167 169 sylan2 φkDjxD|xfkX0˙RyDify=Y1˙0˙kfj=0˙
171 166 170 eqtrd φkDjxD|xfkXyDify=X1˙0˙jRyDify=Y1˙0˙kfj=0˙
172 160 rabex xD|xfkV
173 172 a1i φkDxD|xfkV
174 171 173 suppss2 φkDjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjsupp0˙X
175 160 mptrabex jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjV
176 funmpt FunjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj
177 175 176 40 3pm3.2i jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjVFunjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj0˙V
178 177 a1i φkDjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjVFunjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj0˙V
179 snfi XFin
180 179 a1i φkDXFin
181 suppssfifsupp jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjVFunjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj0˙VXFinjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjsupp0˙XfinSupp0˙jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj
182 178 180 174 181 syl12anc φkDfinSupp0˙jxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj
183 45 3 148 150 122 174 182 gsumres φkDRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfjX=RjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj
184 145 183 eqtr3d φkDifk=X+fY1˙0˙=RjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj
185 184 mpteq2dva φkDifk=X+fY1˙0˙=kDRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj
186 17 185 eqtrid φyDify=X+fY1˙0˙=kDRjxD|xfkyDify=X1˙0˙jRyDify=Y1˙0˙kfj
187 14 186 eqtr4d φyDify=X1˙0˙·˙yDify=Y1˙0˙=yDify=X+fY1˙0˙