1 | LIB "tst.lib"; |
---|
2 | tst_init(); |
---|
3 | |
---|
4 | LIB "monomialideal.lib"; |
---|
5 | |
---|
6 | // EX. 1: |
---|
7 | ring r4=0,x(1..4),dp; |
---|
8 | ideal i=x(1)^3*x(2)*x(3),x(1)*x(2)*x(3)*x(4),x(2)^2*x(3)^2*x(4)^2,x(2)^2*x(4)^4,x(3)^3*x(4); |
---|
9 | isMonomial(i); |
---|
10 | isprimeMon(i); |
---|
11 | isprimaryMon(i); |
---|
12 | isirreducibleMon(i); |
---|
13 | isartinianMon(i); |
---|
14 | isgenericMon(i); |
---|
15 | |
---|
16 | list pd=primdecMon(i); |
---|
17 | list id=irreddecMon(i); |
---|
18 | list id1=irreddecMon(i,"vas"); |
---|
19 | |
---|
20 | list id2=irreddecMon(i,"gz"); |
---|
21 | |
---|
22 | list id3=irreddecMon(i,"ad"); |
---|
23 | |
---|
24 | list id4=irreddecMon(i,"for"); |
---|
25 | |
---|
26 | list id5=irreddecMon(i,"mil"); |
---|
27 | |
---|
28 | list id6=irreddecMon(i,"lr"); |
---|
29 | |
---|
30 | list id8=irreddecMon(i,"sr"); |
---|
31 | |
---|
32 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
33 | |
---|
34 | areEqual(id,id1);areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
35 | |
---|
36 | // |
---|
37 | // |
---|
38 | // EX. 2: |
---|
39 | ring r5=0,(x,y,z,t,w),dp; |
---|
40 | ideal I=y2t,x2y-x2z+yt2,x2y2,xyztw,x3z2,y5+xz3w-x2zw2,x7-yt2w4; |
---|
41 | ideal i=simplify(lead(std(I)),1); |
---|
42 | isMonomial(i); |
---|
43 | isprimeMon(i); |
---|
44 | isprimaryMon(i); |
---|
45 | isirreducibleMon(i); |
---|
46 | isartinianMon(i); |
---|
47 | isgenericMon(i); |
---|
48 | |
---|
49 | list pd=primdecMon(i); |
---|
50 | |
---|
51 | list id=irreddecMon(i); |
---|
52 | |
---|
53 | // list id1=irreddecMon(i,"vas"); |
---|
54 | list id2=irreddecMon(i,"gz"); |
---|
55 | |
---|
56 | list id3=irreddecMon(i,"ad"); |
---|
57 | |
---|
58 | list id4=irreddecMon(i,"for"); |
---|
59 | |
---|
60 | // list id5=irreddecMon(i,"mil"); |
---|
61 | list id6=irreddecMon(i,"lr"); |
---|
62 | |
---|
63 | list id8=irreddecMon(i,"sr"); |
---|
64 | |
---|
65 | size(pd);size(id);size(id2);size(id3);size(id4);size(id6);size(id8); |
---|
66 | |
---|
67 | areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id6);areEqual(id,id8); |
---|
68 | |
---|
69 | // |
---|
70 | // |
---|
71 | // EX 3: |
---|
72 | ring r6=0,x(0..5),dp; |
---|
73 | ideal I=x(2)^2-x(4)*x(5),x(1)*x(2)-x(0)*x(5),x(0)*x(2)-x(1)*x(4), |
---|
74 | x(1)^2-x(3)*x(5),x(0)*x(1)-x(2)*x(3),x(0)^2-x(3)*x(4); |
---|
75 | ideal i=simplify(lead(std(I)),1); |
---|
76 | isMonomial(i); |
---|
77 | isprimeMon(i); |
---|
78 | isprimaryMon(i); |
---|
79 | isirreducibleMon(i); |
---|
80 | isartinianMon(i); |
---|
81 | isgenericMon(i); |
---|
82 | |
---|
83 | list pd=primdecMon(i); |
---|
84 | |
---|
85 | list id=irreddecMon(i); |
---|
86 | |
---|
87 | list id1=irreddecMon(i,"vas"); |
---|
88 | |
---|
89 | list id2=irreddecMon(i,"gz"); |
---|
90 | |
---|
91 | list id3=irreddecMon(i,"ad"); |
---|
92 | |
---|
93 | list id4=irreddecMon(i,"for"); |
---|
94 | |
---|
95 | list id5=irreddecMon(i,"mil"); |
---|
96 | |
---|
97 | list id6=irreddecMon(i,"lr"); |
---|
98 | |
---|
99 | list id8=irreddecMon(i,"sr"); |
---|
100 | |
---|
101 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
102 | |
---|
103 | areEqual(id,id1);areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
104 | |
---|
105 | // |
---|
106 | // |
---|
107 | // EX 4 |
---|
108 | // |
---|
109 | ring R4=0,(x,y,z,t),dp; |
---|
110 | // Ex.2.5 in [Bermejo-Gimenez], Proc.Amer.Math.Soc. 128(5): |
---|
111 | ideal I = x17y14-y31, x20y13, x60-y36z24-x20z20t20; |
---|
112 | ideal i=simplify(lead(std(I)),1); |
---|
113 | isMonomial(i); |
---|
114 | isprimeMon(i); |
---|
115 | isprimaryMon(i); |
---|
116 | isirreducibleMon(i); |
---|
117 | isartinianMon(i); |
---|
118 | isgenericMon(i); |
---|
119 | |
---|
120 | list pd=primdecMon(i); |
---|
121 | |
---|
122 | list id=irreddecMon(i); |
---|
123 | |
---|
124 | list id1=irreddecMon(i,"vas"); |
---|
125 | |
---|
126 | list id2=irreddecMon(i,"gz"); |
---|
127 | |
---|
128 | list id3=irreddecMon(i,"ad"); |
---|
129 | |
---|
130 | list id4=irreddecMon(i,"for"); |
---|
131 | |
---|
132 | list id5=irreddecMon(i,"mil"); |
---|
133 | |
---|
134 | list id6=irreddecMon(i,"lr"); |
---|
135 | |
---|
136 | list id8=irreddecMon(i,"sr"); |
---|
137 | |
---|
138 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
139 | |
---|
140 | areEqual(id,id1);areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
141 | |
---|
142 | // |
---|
143 | // |
---|
144 | // EX 5 |
---|
145 | // Ex.2.9 in [Bermejo-Gimenez], Proc.Amer.Math.Soc. 128(5): |
---|
146 | int k=315; |
---|
147 | I=x17y14-y31,x20y13,x60-y36z24-x20z20t20,y41*z^k-y40*z^(k+1); |
---|
148 | i=simplify(lead(std(I)),1); |
---|
149 | isMonomial(i); |
---|
150 | isprimeMon(i); |
---|
151 | isprimaryMon(i); |
---|
152 | isirreducibleMon(i); |
---|
153 | isartinianMon(i); |
---|
154 | isgenericMon(i); |
---|
155 | |
---|
156 | pd=primdecMon(i); |
---|
157 | |
---|
158 | id=irreddecMon(i); |
---|
159 | |
---|
160 | id1=irreddecMon(i,"vas"); |
---|
161 | |
---|
162 | id2=irreddecMon(i,"gz"); |
---|
163 | |
---|
164 | id3=irreddecMon(i,"ad"); |
---|
165 | |
---|
166 | id4=irreddecMon(i,"for"); |
---|
167 | |
---|
168 | id5=irreddecMon(i,"mil"); |
---|
169 | |
---|
170 | id6=irreddecMon(i,"lr"); |
---|
171 | |
---|
172 | id8=irreddecMon(i,"sr"); |
---|
173 | |
---|
174 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
175 | |
---|
176 | areEqual(id,id1);areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
177 | |
---|
178 | // |
---|
179 | // |
---|
180 | // EX 6 |
---|
181 | // Example in Rk.2.10 in [Bermejo-Gimenez], ProcAMS 128(5): |
---|
182 | I=x2-3xy+5xt,xy-3y2+5yt,xz-3yz,2xt-yt,y2-yz-2yt; |
---|
183 | i=simplify(lead(std(I)),1); |
---|
184 | isMonomial(i); |
---|
185 | isprimeMon(i); |
---|
186 | isprimaryMon(i); |
---|
187 | isirreducibleMon(i); |
---|
188 | isartinianMon(i); |
---|
189 | isgenericMon(i); |
---|
190 | |
---|
191 | pd=primdecMon(i); |
---|
192 | |
---|
193 | id=irreddecMon(i); |
---|
194 | |
---|
195 | id1=irreddecMon(i,"vas"); |
---|
196 | |
---|
197 | id2=irreddecMon(i,"gz"); |
---|
198 | |
---|
199 | id3=irreddecMon(i,"ad"); |
---|
200 | |
---|
201 | id4=irreddecMon(i,"for"); |
---|
202 | |
---|
203 | id5=irreddecMon(i,"mil"); |
---|
204 | |
---|
205 | id6=irreddecMon(i,"lr"); |
---|
206 | |
---|
207 | id8=irreddecMon(i,"sr"); |
---|
208 | |
---|
209 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
210 | |
---|
211 | areEqual(id,id1);areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
212 | |
---|
213 | // |
---|
214 | // |
---|
215 | // EX 7 |
---|
216 | I=y4-t3z, x3t-y2z2, x3y2-t2z3, x6-tz5; |
---|
217 | i=simplify(lead(std(I)),1); |
---|
218 | isMonomial(i); |
---|
219 | isprimeMon(i); |
---|
220 | isprimaryMon(i); |
---|
221 | isirreducibleMon(i); |
---|
222 | isartinianMon(i); |
---|
223 | isgenericMon(i); |
---|
224 | |
---|
225 | pd=primdecMon(i); |
---|
226 | |
---|
227 | id=irreddecMon(i); |
---|
228 | |
---|
229 | id1=irreddecMon(i,"vas"); |
---|
230 | |
---|
231 | id2=irreddecMon(i,"gz"); |
---|
232 | |
---|
233 | id3=irreddecMon(i,"ad"); |
---|
234 | |
---|
235 | id4=irreddecMon(i,"for"); |
---|
236 | |
---|
237 | id5=irreddecMon(i,"mil"); |
---|
238 | |
---|
239 | id6=irreddecMon(i,"lr"); |
---|
240 | |
---|
241 | id8=irreddecMon(i,"sr"); |
---|
242 | |
---|
243 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
244 | |
---|
245 | areEqual(id,id1);areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
246 | |
---|
247 | // |
---|
248 | // |
---|
249 | // EX 8 |
---|
250 | ring R5=0,(x,y,z,t,w),dp; |
---|
251 | ideal I = xy-zw,x3-yw2,x2z-y2w,y3-xz2,-y2z3+xw4+tw4+w5,-yz4+x2w3+xtw3+xw4, |
---|
252 | -z5+x2tw2+x2w3+yw4; |
---|
253 | ideal i=simplify(lead(std(I)),1); |
---|
254 | isMonomial(i); |
---|
255 | isprimeMon(i); |
---|
256 | isprimaryMon(i); |
---|
257 | isirreducibleMon(i); |
---|
258 | isartinianMon(i); |
---|
259 | isgenericMon(i); |
---|
260 | |
---|
261 | list pd=primdecMon(i); |
---|
262 | |
---|
263 | list id=irreddecMon(i); |
---|
264 | |
---|
265 | list id1=irreddecMon(i,"vas"); |
---|
266 | |
---|
267 | list id2=irreddecMon(i,"gz"); |
---|
268 | |
---|
269 | list id3=irreddecMon(i,"ad"); |
---|
270 | |
---|
271 | list id4=irreddecMon(i,"for"); |
---|
272 | |
---|
273 | list id5=irreddecMon(i,"mil"); |
---|
274 | |
---|
275 | list id6=irreddecMon(i,"lr"); |
---|
276 | |
---|
277 | list id8=irreddecMon(i,"sr"); |
---|
278 | |
---|
279 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
280 | |
---|
281 | areEqual(id,id1);areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
282 | |
---|
283 | // |
---|
284 | // |
---|
285 | // EX 9 |
---|
286 | // Next example is the defining ideal of the 2nd. Veronesean of P3, a variety |
---|
287 | // in P8 which is arithmetically Cohen-Macaulay: |
---|
288 | ring r14=0,(a,b,c,d,x(0..9)),dp; |
---|
289 | ideal i= x(0)-ab,x(1)-ac,x(2)-ad,x(3)-bc,x(4)-bd,x(5)-cd, |
---|
290 | x(6)-a2,x(7)-b2,x(8)-c2,x(9)-d2; |
---|
291 | ideal ei=eliminate(i,abcd); |
---|
292 | ring r10=0,x(0..9),dp; |
---|
293 | ideal I=imap(r14,ei); |
---|
294 | ideal i=simplify(lead(std(I)),1); |
---|
295 | isMonomial(i); |
---|
296 | isprimeMon(i); |
---|
297 | isprimaryMon(i); |
---|
298 | isirreducibleMon(i); |
---|
299 | isartinianMon(i); |
---|
300 | isgenericMon(i); |
---|
301 | |
---|
302 | list pd=primdecMon(i); |
---|
303 | |
---|
304 | list id=irreddecMon(i); |
---|
305 | |
---|
306 | list id1=irreddecMon(i,"vas"); |
---|
307 | |
---|
308 | list id2=irreddecMon(i,"gz"); |
---|
309 | |
---|
310 | list id3=irreddecMon(i,"ad"); |
---|
311 | |
---|
312 | list id4=irreddecMon(i,"for"); |
---|
313 | |
---|
314 | list id5=irreddecMon(i,"mil"); |
---|
315 | |
---|
316 | list id6=irreddecMon(i,"lr"); |
---|
317 | |
---|
318 | list id8=irreddecMon(i,"sr"); |
---|
319 | |
---|
320 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
321 | |
---|
322 | areEqual(id,id1);areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
323 | |
---|
324 | // |
---|
325 | // |
---|
326 | // EX 10: |
---|
327 | ring r7=0,(x,y,z,t,u,a,b),dp; |
---|
328 | ideal i=u-b40,t-a40,x-a23b17,y-a22b18+ab39,z-a25b15; |
---|
329 | ideal ei=eliminate(i,ab); // It takes a few seconds to compute the ideal |
---|
330 | ring rr5=0,(x,y,z,t,u),dp; |
---|
331 | ideal I=imap(r7,ei); |
---|
332 | ideal i=simplify(lead(std(I)),1); |
---|
333 | isMonomial(i); |
---|
334 | isprimeMon(i); |
---|
335 | isprimaryMon(i); |
---|
336 | isirreducibleMon(i); |
---|
337 | isartinianMon(i); |
---|
338 | isgenericMon(i); |
---|
339 | |
---|
340 | list pd=primdecMon(i); |
---|
341 | |
---|
342 | list id=irreddecMon(i); |
---|
343 | |
---|
344 | list id1=irreddecMon(i,"vas"); |
---|
345 | |
---|
346 | list id2=irreddecMon(i,"gz"); |
---|
347 | |
---|
348 | list id3=irreddecMon(i,"ad"); |
---|
349 | |
---|
350 | list id4=irreddecMon(i,"for"); |
---|
351 | |
---|
352 | list id5=irreddecMon(i,"mil"); |
---|
353 | |
---|
354 | list id6=irreddecMon(i,"lr"); |
---|
355 | |
---|
356 | list id8=irreddecMon(i,"sr"); |
---|
357 | |
---|
358 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
359 | |
---|
360 | areEqual(id,id1);areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
361 | |
---|
362 | // |
---|
363 | // |
---|
364 | // EX 11: |
---|
365 | ring r11=0,(x(0..8),s,t),dp; |
---|
366 | ideal i=x(0)-st24,x(1)-s2t23,x(2)-s3t22,x(3)-s9t16,x(4)-s11t14,x(5)-s18t7, |
---|
367 | x(6)-s24t,x(7)-t25,x(8)-s25; |
---|
368 | ideal ei=eliminate(i,st); |
---|
369 | ring r9=0,x(0..8),dp; |
---|
370 | ideal I=imap(r11,ei); |
---|
371 | ideal i=simplify(lead(std(I)),1); |
---|
372 | isMonomial(i); |
---|
373 | isprimeMon(i); |
---|
374 | isprimaryMon(i); |
---|
375 | isirreducibleMon(i); |
---|
376 | isartinianMon(i); |
---|
377 | isgenericMon(i); |
---|
378 | |
---|
379 | list pd=primdecMon(i); |
---|
380 | |
---|
381 | list id=irreddecMon(i); |
---|
382 | |
---|
383 | // list id1=irreddecMon(i,"vas"); |
---|
384 | list id2=irreddecMon(i,"gz"); |
---|
385 | |
---|
386 | list id3=irreddecMon(i,"ad"); |
---|
387 | |
---|
388 | list id4=irreddecMon(i,"for"); |
---|
389 | |
---|
390 | // list id5=irreddecMon(i,"mil"); |
---|
391 | list id6=irreddecMon(i,"lr"); |
---|
392 | |
---|
393 | list id8=irreddecMon(i,"sr"); |
---|
394 | |
---|
395 | size(pd);size(id);size(id2);size(id3);size(id4);size(id6);size(id8); |
---|
396 | // TARDA UN POCO PERO LO HACE |
---|
397 | ; |
---|
398 | |
---|
399 | areEqual(id,id2);areEqual(id,id3);areEqual(id,id4);areEqual(id,id6);areEqual(id,id8); |
---|
400 | |
---|
401 | // |
---|
402 | // |
---|
403 | // EX 12: |
---|
404 | ring r18=0,(s,t,u,x(0..14)),dp; |
---|
405 | ideal i=x(0)-s3t6u6,x(1)-s5t5u5,x(2)-t9s6,x(3)-st4u10,x(4)-s2t12u,x(5)-t14u, |
---|
406 | x(6)-s8t7,x(7)-s4t6u5,x(8)-t13su,x(9)-s4t9u2,x(10)-stu13,x(11)-s5t7u3, |
---|
407 | x(12)-s15,x(13)-t15,x(14)-u15; |
---|
408 | ideal ei=eliminate(i,stu); |
---|
409 | ring r15=0,x(0..14),dp; |
---|
410 | ideal I=imap(r18,ei); |
---|
411 | ideal i=simplify(lead(std(I)),1); |
---|
412 | size(i); |
---|
413 | |
---|
414 | isMonomial(i); |
---|
415 | isprimeMon(i); |
---|
416 | isprimaryMon(i); |
---|
417 | isirreducibleMon(i); |
---|
418 | isartinianMon(i); |
---|
419 | isgenericMon(i); |
---|
420 | |
---|
421 | list pd=primdecMon(i); size(pd); // 2 SEGUNDOS CON "add", 4 componentes |
---|
422 | ; |
---|
423 | |
---|
424 | list id=irreddecMon(i); size(id); // 1 SEGUNDO CON "add", 180 componentes |
---|
425 | ; |
---|
426 | |
---|
427 | list id1=irreddecMon(i,"sr"); // 103 SEC. CON "sr", coincide con la anterior |
---|
428 | size(id1); areEqual(id,id1); |
---|
429 | |
---|
430 | list id2=irreddecMon(i,"for"); // 19 SEC. CON "for", coincide con la anterior |
---|
431 | size(id2); areEqual(id,id2); |
---|
432 | |
---|
433 | // HE PARADO LOS CALCULOS CON "gz" Y CON "ad", NO HE PROBADO LOS OTROS |
---|
434 | // |
---|
435 | // |
---|
436 | |
---|
437 | list pdg=primdecGTZ(i); // 39 SEC. CON EL METODO GENERAL DE DESCOMP. PRIMARIA |
---|
438 | size(pdg); |
---|
439 | |
---|
440 | // |
---|
441 | // |
---|
442 | // EX 13: |
---|
443 | ring s8=0,(x(0..5),s,t),dp; |
---|
444 | ideal i=x(0)-st24,x(1)-s2t23,x(2)-s3t22,x(3)-s9t16,x(4)-s11t14,x(5)-s18t7; |
---|
445 | ideal ei=eliminate(i,st); |
---|
446 | ring s6=0,x(0..5),dp; |
---|
447 | ideal I=imap(s8,ei); |
---|
448 | ideal i=simplify(lead(std(I)),1); |
---|
449 | isMonomial(i); |
---|
450 | isprimeMon(i); |
---|
451 | isprimaryMon(i); |
---|
452 | isirreducibleMon(i); |
---|
453 | isartinianMon(i); |
---|
454 | isgenericMon(i); |
---|
455 | |
---|
456 | list pd=primdecMon(i); |
---|
457 | |
---|
458 | list id=irreddecMon(i); |
---|
459 | |
---|
460 | list id1=irreddecMon(i,"vas"); |
---|
461 | |
---|
462 | list id2=irreddecMon(i,"gz"); |
---|
463 | |
---|
464 | list id3=irreddecMon(i,"ad"); |
---|
465 | |
---|
466 | list id4=irreddecMon(i,"for"); |
---|
467 | |
---|
468 | list id5=irreddecMon(i,"mil"); |
---|
469 | |
---|
470 | list id6=irreddecMon(i,"lr"); |
---|
471 | |
---|
472 | list id8=irreddecMon(i,"sr"); |
---|
473 | |
---|
474 | size(pd);size(id);size(id1);size(id2);size(id3);size(id4);size(id5);size(id6);size(id8); |
---|
475 | |
---|
476 | areEqual(id,id2);areEqual(id,id1);areEqual(id,id3);areEqual(id,id4);areEqual(id,id5);areEqual(id,id6);areEqual(id,id8); |
---|
477 | |
---|
478 | // |
---|
479 | // |
---|
480 | // EX 14: |
---|
481 | ring s15=0,(s,t,u,x(0..11)),dp; |
---|
482 | ideal i=x(0)-s3t6u6,x(1)-s5t5u5,x(2)-t9s6,x(3)-st4u10,x(4)-s2t12u,x(5)-t14u, |
---|
483 | x(6)-s8t7,x(7)-s4t6u5,x(8)-t13su,x(9)-s4t9u2,x(10)-stu13,x(11)-s5t7u3; |
---|
484 | ideal ei=eliminate(i,stu); |
---|
485 | ring s12=0,x(0..11),dp; |
---|
486 | ideal I=imap(s15,ei); |
---|
487 | ideal i=simplify(lead(std(I)),1); |
---|
488 | size(i); |
---|
489 | |
---|
490 | isMonomial(i); |
---|
491 | isprimeMon(i); |
---|
492 | isprimaryMon(i); |
---|
493 | isirreducibleMon(i); |
---|
494 | isartinianMon(i); |
---|
495 | isgenericMon(i); |
---|
496 | |
---|
497 | list pd=primdecMon(i); size(pd); // 1 SEGUNDOS CON "add", 9 componentes |
---|
498 | ; |
---|
499 | |
---|
500 | list id=irreddecMon(i); size(id); // 0 SEGUNDO CON "add", 112 componentes |
---|
501 | ; |
---|
502 | |
---|
503 | list id1=irreddecMon(i,"sr"); // 46 SEC. CON "sr", coincide con la anterior |
---|
504 | size(id1); areEqual(id,id1); |
---|
505 | |
---|
506 | list id2=irreddecMon(i,"for"); //7 SEC. CON "for", coincide con la anterior |
---|
507 | size(id2); areEqual(id,id2); |
---|
508 | |
---|
509 | // |
---|
510 | // |
---|
511 | // EX 15: |
---|
512 | setring s15; |
---|
513 | i=x(0)-st6u8,x(1)-s5t3u7,x(2)-t11u4,x(3)-s9t4u2,x(4)-s2t7u6,x(5)-s7t7u, |
---|
514 | x(6)-s10t5,x(7)-s4t6u5,x(8)-s13tu,x(9)-s14u,x(10)-st2u12,x(11)-s3t9u3; |
---|
515 | ei=eliminate(i,stu); |
---|
516 | setring s12; |
---|
517 | ideal II=imap(s15,ei); |
---|
518 | ideal ii=simplify(lead(std(II)),1); |
---|
519 | size(ii); |
---|
520 | |
---|
521 | isMonomial(ii); |
---|
522 | isprimeMon(ii); |
---|
523 | isprimaryMon(ii); |
---|
524 | isirreducibleMon(ii); |
---|
525 | isartinianMon(ii); |
---|
526 | isgenericMon(ii); |
---|
527 | |
---|
528 | list ppdd=primdecMon(ii); size(ppdd); // 0 SEGUNDOS CON "add", 10 componentes |
---|
529 | ; |
---|
530 | |
---|
531 | list iidd=irreddecMon(ii); size(iidd); // 1 SEGUNDO CON "add", 111 componentes |
---|
532 | ; |
---|
533 | |
---|
534 | list pdg=primdecGTZ(ii); // 9 SEC. CON EL METODO GENERAL DE DESCOMP. PRIMARIA |
---|
535 | size(pdg); |
---|
536 | |
---|
537 | // COMPARAMOS AHORA LOS RADICALES DE LAS COMPONENTES PRIMARIAS OBTENIDAS POR EL |
---|
538 | // METODO GENERAL (rad2) Y POR EL METODO ESPECIFICO add (rad1) |
---|
539 | list rad1=radicalMon(ppdd[1]),radicalMon(ppdd[2]),radicalMon(ppdd[3]),radicalMon(ppdd[4]),radicalMon(ppdd[5]), |
---|
540 | radicalMon(ppdd[6]),radicalMon(ppdd[7]),radicalMon(ppdd[8]),radicalMon(ppdd[9]),radicalMon(ppdd[10]); |
---|
541 | list rad2=pdg[1][2],pdg[2][2],pdg[3][2],pdg[4][2],pdg[5][2],pdg[6][2],pdg[7][2],pdg[8][2],pdg[9][2],pdg[10][2]; |
---|
542 | |
---|
543 | areEqual(rad1,rad2); |
---|
544 | |
---|
545 | |
---|
546 | tst_status(1);$ |
---|