source: git/Tst/Short/equising_s.tst @ 0f2fcb4

spielwiese
Last change on this file since 0f2fcb4 was c91fefd, checked in by Hans Schönemann <hannes@…>, 18 years ago
*lossen: new lib, more examples git-svn-id: file:///usr/local/Singular/svn/trunk@8794 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 4.2 KB
Line 
1LIB "tst.lib";
2tst_init();
3LIB "equising.lib";
4///////////////////////////////////////////////////////////////////////////////
5//                   Baby Examples
6ring r=0,(x,y),ds;
7poly f= x2-y3;
8esIdeal(f);
9ring R=0,(A,B,C,D,E,F,x,y),ds;
10poly F=x2-y3+Ax+By+Cy2+Dxy+Ex2+Fy3;
11esStratum(F,2);
12esStratum(F,3);
13kill r;
14//
15ring rr=0,(x,y),ls;
16poly f=x7+y7+(x-y)^2*x2y2+x2y4; // Newton non-degenerate
17tau_es(f);
18list K=esIdeal(f);
19vdim(std(K[1])); // tau_es
20vdim(std(K[2])); // tau_es_fix
21//
22f=x7+y7+(x-y)^2*x2y2; // Newton degenerate
23tau_es(f);
24K=esIdeal(f);
25vdim(std(K[1]));
26vdim(std(K[2]));
27//
28f=x6y-3x4y4-x4y5+3x2y7-x4y6+2x2y8-y10+2x2y9-y11+x2y10-y12-y13;  // 4 branches
29tau_es(f);       
30K=esIdeal(f);
31vdim(std(K[1]));
32K;
33kill rr;
34
35///////////////////////////////////////////////////////////////////////////////
36//                  Teste Verhalten in verschiedenen Ringen
37proc tst(list d)
38{
39 int i;
40 for(i=1;i<=size(d);i++)
41   {
42     execute(d[i]);
43     
44     poly f = y8+4x3y6+6x6y4+2x5y5+4x9y2+4x8y3+x12+2x11y+2x10y2+x13;
45                   
46     list L=versal(f);
47     def Px=L[1];
48     setring Px;
49     poly F = Fs[1,1];
50             
51     list EsList = esStratum(F);
52     EsList[2]; 
53     if (typeof(EsList[1])=="list")
54     {
55       ideal ES = EsList[1][1]; kill EsList;
56     }
57     else
58     {
59       def R=EsList[1]; kill EsList; setring R;
60     }
61     option(redSB);
62     ES=std(ES);
63     ES;
64
65     qring q = ES;
66     poly F = imap(Px,F);
67
68     isEquising(F);
69
70     kill L,Px;
71     kill q;
72     if (defined(R)){ kill R; }
73     kill r;
74   }
75}
76
77list L = "ring r = 0,(x,y),ds", "ring r = (0,a),(x,y),ds; minpoly = a^2-1;",
78         "ring r = (0, t(1..4)),(x,y),ds", "ring r = 7,(x,y),ds",
79         "ring r = (11,a(1)),(x,y),ds; minpoly = a(1)^2-1;",
80         "ring r = (3,t(1..8)),(x,y),ds";
81tst(L);
82kill L;
83//////////////////////////////////////////////////////////////////////////////
84//  es-deformation of irreducible polynomial x13+x3-3x2y+3xy2
85
86ring r = 0,(A,B,C,D,x,y),dp;
87poly F =D3x12+3CD2x11+3C2Dx10+3BD2x10+x13+C3x9+6BCDx9+3AD2x9+3BC2x8+3B2Dx8
88 +6ACDx8+3D2x9-3D2x8y+3B2Cx7+3AC2x7+6ABDx7+6CDx8-6CDx7y+B3x6+6ABCx6+3A2Dx6
89 +3C2x7+6BDx7-3C2x6y-6BDx6y+3AB2x5+3A2Cx5+6BCx6+6ADx6-6BCx5y-6ADx5y+3A2Bx4
90 +3B2x5+6ACx5+3Dx6-3B2x4y-6ACx4y-6Dx5y+3Dx4y2+A3x3+6ABx4+3Cx5-6ABx3y-6Cx4y
91 +3Cx3y2+3A2x3+3Bx4-3A2x2y-6Bx3y+3Bx2y2+3Ax3-6Ax2y+3Axy2+x3-3x2y+3xy2-y3;
92esStratum(F);
93isEquising(F);
94kill r;
95///////////////////////////////////////////////////////////////////////////
96//   es-deformation of irreducible poly in finite characteristic
97ring rr = 11,(A,B,C,a,b,x,y),(dp(3),dp(2),dp);
98poly F = (y-ax-b*x^2)^5-x^12;
99ideal id = (1-A)*a-1,(1+B+A^2)*b-1;
100F = F*(1-A)^5*(1+B+A^2)^5;
101F = reduce(F,std(id));
102esStratum(F);
103isEquising(F);
104kill rr;
105///////////////////////////////////////////////////////////////////////////
106//      1st order es-deformation of irred. poly   
107ring rr=0,(A,B,C,x,y),ls;
108poly f=x7+y7+(x-y)^2*x2y2;
109poly F=f+A*y*diff(f,x)+B*x*diff(f,x)+C*diff(f,y);
110list M=esStratum(F,2);
111M;
112M=esStratum(F,6);
113std(M[1][1]);
114kill rr;
115/////////////////////////////////////////////////
116
117example esStratum;
118example isEquising;
119example esIdeal;
120example tau_es;
121
122/////////////////////////////////////////////////
123//  Andere Namen fuer Variablen + HNE gegeben
124ring r=0,(w,v),ds;
125poly f=w2-v199;   // simple singularity
126list L=hnexpansion(f);
127list LL=versal(f);
128def Px=LL[1];
129setring Px;
130list L=imap(r,L);
131poly F=Fs[1,1]-A(198)+A(198)*w2;
132list M=esStratum(F,2,L);
133reduce(F,std(M[1][1]));
134M=esStratum(F,L);
135reduce(F,std(M[1][1]));
136kill LL,Px,r;
137
138/////////////////////////////////////////////////
139//              MEGA 05 Example
140ring R = 0, (x,y), ls;
141poly f = (y4-x4)^2 - x10;
142list L = versal(f);        //compute semiuniversal deformation
143def Px=L[1]; setring Px;
144poly F = Fs[1,1];         
145list M=esStratum(F);       //compute the equisingularity stratum
146def ESSring = M[1]; setring ESSring;
147option(redSB);
148ES = std(ES);
149size(ES);    //-> 42
150ES[1];       //-> 8*A(1)+8*A(22)+A(1)^3
151ES[34];      //-> 8*A(40)-A(1)^2+A(1)*A(22)
152poly F = reduce(imap(Px,F),ES);  //A(1),A(22) both appear in F
153poly g = subst(F, A(22), -A(1)-(1/8)*A(1)^3);
154for (int ii=1; ii<=44; ii++){ g = subst(g,A(ii),random(1,100)); }
155setring R;
156milnor(f);                //-> 57
157milnor(imap(ESSring,g));  //-> 57
158kill R,L,Px,M,ESSring,ii;
159
160
161tst_status(1);$
162
Note: See TracBrowser for help on using the repository browser.