source: git/Tst/Long/monomial_l.tst @ 09f10e

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