source: git/Singular/LIB/makedbm.lib @ a57b65

spielwiese
Last change on this file since a57b65 was 3686937, checked in by Oleksandr Motsak <motsak@…>, 11 years ago
Added '$Id$' as a comment to all libs (LIB/*.lib)
  • Property mode set to 100644
File size: 10.2 KB
Line 
1/////////////////////////////////////////////////////////////////////////////
2version="version makedbm.lib 4.0.0.0 Jun_2013 "; // $Id$
3category="Miscellaneous";
4info="
5LIBRARY:  makedbm.lib     Data Base of Singularities for the Arnold-Classifier
6AUTHOR:   Kai Krueger, krueger@mathematik.uni-kl.de
7
8PROCEDURES:
9 dbm_read(l);          read all entries from a DBM-databaes pointed by l
10 dbm_getnext(l);       read next entry from a DBM-databaes pointed by l
11 create_sing_dbm();
12 read_sing_dbm();
13";
14
15//=============================================================================
16
17proc makedbm_init()
18{
19  string s;
20  link l="DBM:r NFlist";
21  s = read(l,"VERSION");
22  if (s == "" ) {
23    "Need to create database...";
24    create_sing_dbm();
25  }
26  close(l);
27  l="DBM:r NFlist";
28  s = read(l,"VERSION");
29  "Creation done. Current version:", s;
30}
31//=============================================================================
32
33proc dbm_read (link l)
34{
35  string s="";
36  s=read(l);
37  while( s != "" )
38  {
39    s,"=",read(l,s);
40    s=read(l);
41  }
42}
43
44//=============================================================================
45proc dbm_getnext (link l)
46{
47  string s="";
48  s=read(l);
49  if( s != "" ) { s,"=",read(l,s); }
50}
51
52//=============================================================================
53proc create_sing_dbm
54{
55// DatenFormat: crk=#; Mu=#; MlrCd=#;
56  string s;
57  link l="DBM:rw NFlist";
58
59  write(l, "A[k]", "x^(k+1)");
60  s ="crk=1; Mu=k; MlnCd=k;";
61  write(l, "I_A[k]", s);
62
63  write(l, "D[k]", "x2y+y^(k-1)");
64  s = "crk=2; Mu=k; MlnCd=1,1,k-3";
65  write(l, "I_D[k]", s);
66
67  write(l, "E[6k]", "x3+y^(3*k+1)+a*x*(y^(2*k+1))");
68  s = "crk=2; Mu=6*k; MlnCd=1,2*k,2*k-1";
69  write(l, "I_E[6k]", s);
70
71  write(l, "E[6k+1]", "x3+x*(y^(2*k+1))+a*(y^(3*k+2))");
72  write(l, "E[6k+2]", "x3+y^(3*k+2)+a*x*(y^(2*k+2))");
73  write(l, "J[k,0]", "x3+b*x^2*y^k+y^(3*k)+c*x*y^(2*k+1)");
74  write(l, "J[k,r]", "x3+x2*y^k+a*y^(3*k+r)");
75  write(l, "X[1,0]", "x4+a*x2y2+y4");
76  write(l, "X[1,r]", "x4+x2y2+a*y^(4+r)");
77  write(l, "X[k,0]", "x4+b*x^3*y^k+a*x^2*y^(2*k) + x*y^(3*k)");
78  write(l, "X[k,r]", "x4+a*x^3*y^k+x^2*y^(2*k)+b*(y^(4*k+r))");
79  write(l, "W[12k]", "x4+y^(4*k+1)+a*x*(y^(3*k+1))+c*x^2*(y^(2*k+1))");
80  write(l, "W[12k+1]", "x4+x*(y^(3*k+1))+a*x^2*(y^(2*k+1))+c*y^(4*k+2)");
81  write(l, "W[12k+5]", "x4+x*(y^(3*k+2))+a*x2*(y^(2*k+2))+b*y^(4*k+3)");
82  write(l, "W[12k+6]", "x4+y^(4*k+3)+a*x*(y^(3*k+3))+b*x2*(y^(2*k+2))");
83  write(l, "W[k,0]", "x4+b*x2*(y^(2*k+1))+a*x*(y^(3*k+2))+y^(4*k+2)");
84  write(l, "W[k,r]", "x4+a*x3*(y^(k+1))+x2*(y^(2*k+1))+b*y^(4*k+2+r)");
85  write(l, "W#[k,2r-1]", "(x2+y^(2*k+1))^2+b*x*(y^(3*k+1+r))+a*y^(4*k+2+r)");
86  write(l, "W#[k,2r]", "(x2+y^(2*k+1))^2+b*x2*(y^(2*k+1+r))+a*x*(y^(3*k+2+r))");
87  write(l, "Y[1,r,s]", "x^(4+r)+a*x2*(y2)+y^(4+s)");
88  write(l, "Y[k,r,s]", "((x+a*y^k)^2 + b*y^(2*k+s))*( x2 + y^(2*k+r))");
89  write(l, "Z[1,0]", "x3y + x2y3 + xy6 +y7");
90  write(l, "Z[1,r]", "x3y + x2*(y^3) + a*y^(7+r)");
91  write(l, "Z[k,r,s]", "(x2+a*x*(y^k)+b*y^(2*k+r))*(x2+y^(2*k+2*r+s))");
92  write(l, "Z[k,r,0]", "(x+a*(y^k))*(x3+d*x2*(y^(k+r))+c*x*(y^(2*k+2*r+1))+y^(3*k+3*r))");
93  write(l, "Z[k,12k+6r-1]", "(x+a*(y^k))*(x3+b*x*(y^(2*k+2*r+1))+y^(3*k+3*r+1))");
94  write(l, "Z[k,12k+6r]", "(x+a*(y^k))*(x3+x*(y^(2*k+2*r+1))+b*y^(3*k+3*r+2))");
95  write(l, "Z[k,12k+6r+1]", "(x+a*(y^k))*(x3+b*x*(y^(2*k+2*r+2))+y^(3*k+3*r+2))");
96  write(l, "Z[k,0]", "y*(x3+d*x2*(y^(k+1))+c*x*(y^(2*k+3))+y^(3*k+3))");
97  write(l, "Z[k,r]", "y*(x3+x^2*y^(k+1)+b*(y^(3*k+r+3)))");
98  write(l, "Z[6k+5]", "y*(x3+b*x*(y^(2*k+1))+y^(3*k+1))");
99  write(l, "Z[6k+6]", "y*(x3+x*(y^(2*k+1))+b*y^(3*k+2))");
100  write(l, "Z[6k+7]", "y*(x3+b*x*(y^(2*k+2))+y^(3*k+2))");
101  write(l, "Q[k,0]", "x3+z2y+b*x2*(y^k)+x*(y^(2*k))");
102  write(l, "Q[k,r]", "x3+z2y+x2*(y^k)+b*y^(3*k+r)");
103  write(l, "Q[6k+4]", "x3+z2y+y^(3*k+1)+b*x*(y^(2*k+1))");
104  write(l, "Q[6k+5]", "x3+z2y+x*(y^(2*k+1))+b*y^(3*k+2)");
105  write(l, "Q[6k+6]", "x3+z2y+y^(3*k+2)+b*x*(y^(2*k+2))");
106  write(l, "S[12k-1]", "x2z+z2y+y^(4*k)+a*x*(y^(3*k))+c*z*(y^(2*k+1))");
107  write(l, "S[12k]", "x2z+z2y+x*(y^(3*k))+c*y^(4*k+1)+a*z*(y^(2*k+1))");
108  write(l, "S[k,0]", "x2z+z2y+y^(4*k+1)+a*x*(y^(3*k+1))+b*z*(y^(2*k+1))");
109  write(l, "S[k,r]", "x2z+z2y+x2*(y^(2*k))+a*x3*(y^k)+b*y^(4*k+r+1)");
110  write(l, "S#[k,2r-1]", "x2z+z2y+z*(y^(2*k+1))+b*x*(y^(3*k+r))+a*(y^(4*k+r+1))");
111  write(l, "S#[k,2r]", "x2z+z2y+z*(y^(2*k+1))+b*x2*(y^(2*k+r))");
112  write(l, "S[12k+4]", "x2z+z2y+x*(y^(3*k+1))+a*z*(y^(2*k+2))+b*y^(4*k+2)");
113  write(l, "S[12k+5]", "x2z+z2y+y^(4*k+2)+a*x*(y^(3*k+2))+b*z*(y^(2*k+2))");
114  write(l, "U[12k]", "x3+z2x+y^(3*k+1)+a*x*(y^(2*k+1))+b*z*(y^(2*k+1))+d*x2*(y^(k+1))");
115  write(l, "U[k,2r-1]", "x3+z2x+x*(y^(2*k+1))+a*x2*(y^(k+1))+b*(y^(3*k+r+2))+c*z*(y^(2*k+r+1))");
116  write(l, "U[k,2r]", "x3+z2x+x*(y^(2*k+1))+a*x2*(y^(k+1))+b*z*(y^(2*k+r+1))+c*z2*(y^(k+r))");
117  write(l, "U[12k+4]", "x3+z2x+y^(3*k+2)+a*x*(y^(2*k+2))+b*z*(y^(2*k+2))+c*x2*(y^(k+1))");
118  write(l, "V[1,0]", "x2y+z4+a*z3y+b*z2y2+y3z");
119  write(l, "V[1,r]", "x2y+z4+b*z3y+z2y2+a*(y^(r+4))");
120  write(l, "V#[1,2r-1]", "x2y+z3y+a*z2y2+y4+b*x*(z^(r+2))");
121  write(l, "V#[1,2r]", "x2y+z3y+a*z2y2+y4+b*(z^(r+4))");
122  write(l, "T[k,r,s]", "x^k+y^r+z^s+xyz");
123
124  s = "crk=2; Mu=6*k+1; MlnCd=1,2*k,2*k";
125  write(l, "I_E[6k+1]", s);
126//"I_E[6k+1]=", read(l, "I_E[6k+1]");
127  s = "crk=2; Mu=6*k+2; MlnCd=1,2*k+1,2*k-1";
128  write(l, "I_E[6k+2]", s);
129  s = "crk=2; Mu=6*k-2; MlnCd=1,2*k-1,2*k-1";
130  write(l, "I_J[k,0]", s);
131//"I_J[k,0]=", read(l, "I_J[k,0]");
132  s = "crk=2; Mu=6*k-2+r; MlnCd=1,2*k-1,2*k-1+r";
133  write(l, "I_J[k,r]", s);
134//"I_J[k,r]=", read(l, "I_J[k,r]");
135  s = "crk=2; Mu=9; MlnCd=1,1,1,1,1";
136  write(l, "I_X[1,0]", s);
137  s = "crk=2; Mu=9+r; MlnCd=1,1,1,1,1+r";
138  write(l, "I_X[1,r]", s);
139  s = "crk=2; Mu=12*k-3; MlnCd=1,1,2*k-1,2*k-1,2*k-1";
140  write(l, "I_X[k,0]", s);
141  s = "crk=2; Mu=12*k-3+r; MlnCd=1,1,2*k-1,2*k-1,2*k-1+r";
142  write(l, "I_X[k,r]", s);
143  s = "crk=2; Mu=12*k;";
144  write(l, "I_W[12k]", s);
145  s = "crk=2; Mu=12*k+1;";
146  write(l, "I_W[12k+1]", s);
147  s = "crk=2; Mu=12*k+5;";
148  write(l, "I_W[12k+5]", s);
149  s = "crk=2; Mu=12*k+6;";
150  write(l, "I_W[12k+6]", s);
151  s = "crk=2; Mu=12*k+3;";
152  write(l, "I_W[k,0]", s);
153  s = "crk=2; Mu=12*k+3+r;";
154  write(l, "I_W[k,r]", s);
155  s = "crk=2; Mu=12*k+2+2*r;";
156  write(l, "I_W#[k,2r-1]", s);
157  s = "crk=2; Mu=12*k+3+2*r;";
158  write(l, "I_W#[k,2r]", s);
159  s = "crk=2; Mu=9+r+s;";
160  write(l, "I_Y[1,r,s]", s);
161  s = "crk=2; Mu=12*k-3+r+s;";
162  write(l, "I_Y[k,r,s]", s);
163  s = "crk=2; Mu=15;";
164  write(l, "I_Z[1,0]", s);
165  s = "crk=2; Mu=15+r;";
166  write(l, "I_Z[1,r]", s);
167  s = "crk=2; Mu=9+6*k+r;";
168  write(l, "I_Z[k,r]", s);
169  s = "crk=2; Mu=12*k+6*r-3;";
170  write(l, "I_Z[k,r,0]", s);
171  s = "crk=2; Mu=12*k+6*r+s-3;";
172  write(l, "I_Z[k,r,s]", s);
173  s = "crk=2; Mu=12*k+6*r-1;";
174  write(l, "I_Z[k,12k+6r-1]", s);
175  s = "crk=2; Mu=12*k+6*r;";
176  write(l, "I_Z[k,12k+6r]", s);
177  s = "crk=2; Mu=12*k+6*r+1;";
178  write(l, "I_Z[k,12k+6r+1]", s);
179  s = "crk=2; Mu=9+6*k;";
180  write(l, "I_Z[k,0]", s);
181  s = "crk=2; Mu=6*(r+1)-1;";
182  write(l, "I_Z[6k+5]", s);
183  s = "crk=2; Mu=6*(r+1);";
184  write(l, "I_Z[6k+6]", s);
185  s = "crk=2; Mu=6*(r+1)+1;";
186  write(l, "I_Z[6k+7]", s);
187  s = "crk=3; Mu=6*k+2;";
188  write(l, "I_Q[k,0]", s);
189  s = "crk=3; Mu=6*k+2+r;";
190  write(l, "I_Q[k,r]", s);
191  s = "crk=3; Mu=6*k+4;";
192  write(l, "I_Q[6k+4]", s);
193  s = "crk=3; Mu=6*k+5;";
194  write(l, "I_Q[6k+5]", s);
195  s = "crk=3; Mu=6*k+6;";
196  write(l, "I_Q[6k+6]", s);
197  s = "crk=3; Mu=12*k-1;";
198  write(l, "I_S[12k-1]", s);
199  s = "crk=3; Mu=12*k;";
200  write(l, "I_S[12k]", s);
201  s = "crk=3; Mu=12*k+2;";
202  write(l, "I_S[k,0]", s);
203  s = "crk=3; Mu=12*k+2+r;";
204  write(l, "I_S[k,r]", s);
205  s = "crk=3; Mu=12*k+2*r+1;";
206  write(l, "I_S#[k,2r-1]", s);
207  s = "crk=3; Mu=12*k+2*r+2;";
208  write(l, "I_S#[k,2r]", s);
209  s = "crk=3; Mu=12*k+4;";
210  write(l, "I_S[12k+4]", s);
211  s = "crk=3; Mu=12*k+5;";
212  write(l, "I_S[12k+5]", s);
213  s = "crk=3; Mu=12*k;";
214  write(l, "I_U[12k]", s);
215  s = "crk=3; Mu=12*k+4;";
216  write(l, "I_U[12k+4]", s);
217  s = "crk=3; Mu=12*k+1+2*r;";
218  write(l, "I_U[k,2r-1]", s);
219  s = "crk=3; Mu=12*k+2+2*r;";
220  write(l, "I_U[k,2r]", s);
221  s = "crk=3; Mu=15;";
222  write(l, "I_V[1,0]", s);
223  s = "crk=3; Mu=15+r;";
224  write(l, "I_V[1,r]", s);
225  s = "crk=3; Mu=14+2*r;";
226  write(l, "I_V#[1,2r-1]", s);
227  s = "crk=3; Mu=15+2*r;";
228  write(l, "I_V#[1,2r]", s);
229  s = "crk=3; Mu=0;";
230  write(l, "I_T[k,r,s]", s);
231  write(l,"VERSION", "1.0");
232  close(l);
233}
234
235proc read_sing_dbm
236{
237  link l="DBM: NFlist";
238  "A[k]     = "+read(l, "A[k]");
239  "D[k]     = "+read(l, "D[k]");
240  "E[6k]    = "+read(l, "E[6k]");
241  "E[6k+1]  = "+read(l, "E[6k+1]");
242  "E[6k+2]  = "+read(l, "E[6k+2]");
243  "J[k,0]   = "+read(l, "J[k,0]");
244  "J[k,r]   = "+read(l, "J[k,r]");
245  "X[1,0]   = "+read(l, "X[1,0]");
246  "X[1,r]   = "+read(l, "X[1,r]");
247  "X[k,0]   = "+read(l, "X[k,0]");
248  "X[k,r]   = "+read(l, "X[k,r]");
249  "W[12k]   = "+read(l, "W[12k]");
250  "W[12k+1] = "+read(l, "W[12k+1]");
251  "W[12k+5] = "+read(l, "W[12k+5]");
252  "W[12k+6] = "+read(l, "W[12k+6]");
253  "W[k,0]   = "+read(l, "W[k,0]");
254  "W[k,r]   = "+read(l, "W[k,r]");
255  "W#[k,2r-1]   = "+read(l, "W#[k,2r-1]");
256  "W#[k,2r] = "+read(l, "W#[k,2r]");
257  "Y[1,r,s] = "+read(l, "Y[1,r,s]");
258  "Y[k,r,s] = "+read(l, "Y[k,r,s]");
259  "Z[1,0]   = "+read(l, "Z[1,0]");
260  "Z[1,r]   = "+read(l, "Z[1,r]");
261  "Z[k,r,s] = "+read(l, "Z[k,r,s]");
262  "Z[k,r,0] = "+read(l, "Z[k,r,0]");
263  "Z[k,12k+6r-1]= "+read(l, "Z[k,12k+6r-1]");
264  "Z[k,12k+6r]  = "+read(l, "Z[k,12k+6r]");
265  "Z[k,12k+6r+1]= "+read(l, "Z[k,12k+6r+1]");
266  "Z[k,0]   = "+read(l, "Z[k,0]");
267  "Z[k,r]   = "+read(l, "Z[k,r]");
268  "Z[6k+5]  = "+read(l, "Z[6k+5]");
269  "Z[6k+6]  = "+read(l, "Z[6k+6]");
270  "Z[6k+7]  = "+read(l, "Z[6k+7]");
271  "Q[k,0]   = "+read(l, "Q[k,0]");
272  "Q[k,r]   = "+read(l, "Q[k,r]");
273  "Q[6k+4]  = "+read(l, "Q[6k+4]");
274  "Q[6k+5]  = "+read(l, "Q[6k+5]");
275  "Q[6k+6]  = "+read(l, "Q[6k+6]");
276  "S[12k-1] = "+read(l, "S[12k-1]");
277  "S[12k]   = "+read(l, "S[12k]");
278  "S[k,0]   = "+read(l, "S[k,0]");
279  "S[k,r]   = "+read(l, "S[k,r]");
280  "S#[k,2r-1]   = "+read(l, "S#[k,2r-1]");
281  "S#[k,2r] = "+read(l, "S#[k,2r]");
282  "S[12k+4] = "+read(l, "S[12k+4]");
283  "S[12k+5] = "+read(l, "S[12k+5]");
284  "U[12k]   = "+read(l, "U[12k]");
285  "U[k,2r-1]= "+read(l, "U[k,2r-1]");
286  "U[k,2r]  = "+read(l, "U[k,2r]");
287  "U[12k+4] = "+read(l, "U[12k+4]");
288  "V[1,0]   = "+read(l, "V[1,0]");
289  "V[1,r]   = "+read(l, "V[1,r]");
290  "V#[1,2r-1]   = "+read(l, "V#[1,2r-1]");
291  "V#[1,2r] = "+read(l, "V#[1,2r]");
292  "T[k,r,s] = "+read(l, "T[k,r,s]");
293  close(l);
294}
Note: See TracBrowser for help on using the repository browser.