1 | LIB "tst.lib"; |
---|
2 | tst_init(); |
---|
3 | |
---|
4 | LIB "modules.lib"; |
---|
5 | |
---|
6 | ring r; |
---|
7 | int n=4; |
---|
8 | id(n); |
---|
9 | kill r;kill n; |
---|
10 | |
---|
11 | ring r; |
---|
12 | int n=4; |
---|
13 | int m=3; |
---|
14 | zero(n,m); |
---|
15 | kill r;kill m; kill n; |
---|
16 | |
---|
17 | ring r; |
---|
18 | Deg(x); |
---|
19 | list l=2,2,2; |
---|
20 | SetDeg(l); |
---|
21 | Deg(x); |
---|
22 | kill r;kill l; |
---|
23 | |
---|
24 | ring r; |
---|
25 | matrix m[1][3]=x,y,z; |
---|
26 | Matrix M=m; |
---|
27 | Module N=coker(M); |
---|
28 | N; |
---|
29 | Resolution R = Res(N); |
---|
30 | R; |
---|
31 | kill r;kill M;kill N;kill R; |
---|
32 | |
---|
33 | ring r; |
---|
34 | int n=3; |
---|
35 | list l=1,2,3; |
---|
36 | freeModule(r,n,l); |
---|
37 | kill r;kill n;kill l; |
---|
38 | |
---|
39 | |
---|
40 | ring r; |
---|
41 | ideal i=x,y,z+x; |
---|
42 | i; |
---|
43 | Ideal I=i; |
---|
44 | I; |
---|
45 | kill r;kill i;kill I; |
---|
46 | |
---|
47 | ring r; |
---|
48 | matrix m[1][3]=x,y,z; |
---|
49 | Matrix M=m; |
---|
50 | Module N=coker(M); |
---|
51 | N; |
---|
52 | Resolution R = mRes(N); |
---|
53 | R; |
---|
54 | R.dd[2]; |
---|
55 | kill r;kill M;kill N;kill R; |
---|
56 | |
---|
57 | ring r; |
---|
58 | matrix m[1][3]=x,y,z; |
---|
59 | Matrix M=m; |
---|
60 | Module N=coker(M); |
---|
61 | N; |
---|
62 | Resolution R = sRes(N); |
---|
63 | R; |
---|
64 | R.dd[2]; |
---|
65 | kill r;kill M;kill N;kill R; |
---|
66 | |
---|
67 | ring r; |
---|
68 | matrix m[1][3]=x,y,z; |
---|
69 | Matrix M=m; |
---|
70 | Module N=coker(M); |
---|
71 | N; |
---|
72 | Resolution R = Res(N); |
---|
73 | R; |
---|
74 | R.dd[2]; |
---|
75 | kill r;kill M;kill N;kill R; |
---|
76 | |
---|
77 | ring r; |
---|
78 | matrix m[1][3]=x,y,z; |
---|
79 | Matrix M=m; |
---|
80 | Module N=coker(M); |
---|
81 | Resolution R=mRes(N); |
---|
82 | R; |
---|
83 | Betti(R); |
---|
84 | kill r;kill M;kill N;kill R; |
---|
85 | |
---|
86 | |
---|
87 | ring r; |
---|
88 | matrix m[2][2]=x,y3,z,xz; |
---|
89 | Matrix M=m; |
---|
90 | M; |
---|
91 | Target(M); |
---|
92 | kill r;kill M;kill m; |
---|
93 | |
---|
94 | ring r; |
---|
95 | matrix m[2][2]=x,y3,z,xz; |
---|
96 | Matrix M=m; |
---|
97 | M; |
---|
98 | Source(M); |
---|
99 | kill r;kill M;kill m; |
---|
100 | |
---|
101 | ring r; |
---|
102 | matrix m[2][2]=x,y3,z,xz; |
---|
103 | Matrix Ma=m; |
---|
104 | FreeModule M=Source(Ma); |
---|
105 | M; |
---|
106 | Degree(M); |
---|
107 | kill r;kill M;kill m; |
---|
108 | |
---|
109 | |
---|
110 | |
---|
111 | ring r; |
---|
112 | matrix m[2][2]=x,y2,z,xz; |
---|
113 | Matrix M=m; |
---|
114 | matrix n[2][3]=z2,xyz,x2y2,xy,x3,y4; |
---|
115 | Matrix N=n; |
---|
116 | M; |
---|
117 | N; |
---|
118 | subquotient(M,N); |
---|
119 | kill r;kill m;kill M;kill n;kill N; |
---|
120 | |
---|
121 | ring R=0,(x,y),(lp,c); |
---|
122 | Matrix M=id(2); |
---|
123 | Module src=image(M); |
---|
124 | matrix rules[2][2]=x,y,x2,y2; |
---|
125 | Module tar=coker(M); |
---|
126 | src; |
---|
127 | tar; |
---|
128 | rules; |
---|
129 | homomorphism(rules,src,tar); |
---|
130 | kill R,M,src,rules,tar; |
---|
131 | |
---|
132 | |
---|
133 | ring r; |
---|
134 | matrix m[2][2]=x,y2,z,xz; |
---|
135 | Matrix M=m; |
---|
136 | M; |
---|
137 | coker(M); |
---|
138 | kill r,m,M; |
---|
139 | |
---|
140 | ring r; |
---|
141 | matrix m[2][2]=x,y2,z,xz; |
---|
142 | Matrix M=m; |
---|
143 | M; |
---|
144 | image(M); |
---|
145 | kill r,m,M; |
---|
146 | |
---|
147 | |
---|
148 | ring r; |
---|
149 | matrix m[1][3]=x,y2,z3; |
---|
150 | Matrix M=m; |
---|
151 | M; |
---|
152 | Ker(M); |
---|
153 | kill r,M,m; |
---|
154 | |
---|
155 | |
---|
156 | ring R=0,(x,y),(lp,c); |
---|
157 | Matrix M=id(2); |
---|
158 | Module src=image(M); |
---|
159 | matrix rules[2][2]=x,y,x2,y2; |
---|
160 | Module tar=coker(M); |
---|
161 | src; |
---|
162 | tar; |
---|
163 | rules; |
---|
164 | Homomorphism f=homomorphism(rules,src,tar); |
---|
165 | f; |
---|
166 | target(f); |
---|
167 | source(f); |
---|
168 | kill R,M,src,rules,tar,f; |
---|
169 | |
---|
170 | ring r; |
---|
171 | matrix ma[2][2]=x,y,x2,y2; |
---|
172 | Matrix m=ma; |
---|
173 | Module M=image(m); |
---|
174 | matrix na[2][2]=xy,x2,y2,x; |
---|
175 | Matrix n=na; |
---|
176 | Module N=image(na); |
---|
177 | M; |
---|
178 | N; |
---|
179 | N+M; |
---|
180 | kill r,ma,m,M,na,n,N; |
---|
181 | |
---|
182 | ring r; |
---|
183 | matrix ma[2][2]=x,y,x,y; |
---|
184 | Matrix m=ma; |
---|
185 | Module M=image(m); |
---|
186 | matrix na[2][1]=-y,x; |
---|
187 | Matrix n=na; |
---|
188 | M; |
---|
189 | Module N=image(n); |
---|
190 | N; |
---|
191 | N==M; |
---|
192 | N=coker(n); |
---|
193 | N; |
---|
194 | N==M; |
---|
195 | kill r,ma,m,M,na,n,N; |
---|
196 | |
---|
197 | ring r; |
---|
198 | matrix ma[2][2]=x,y,x,y; |
---|
199 | Matrix m=ma; |
---|
200 | Module M=image(m); |
---|
201 | M; |
---|
202 | Degrees(M); |
---|
203 | kill ma,m,M; |
---|
204 | |
---|
205 | |
---|
206 | ring r; |
---|
207 | matrix ma[2][2]=x,y,x,y; |
---|
208 | Matrix M=ma; |
---|
209 | matrix na[2][1]=-y,x; |
---|
210 | Matrix N=na; |
---|
211 | M; |
---|
212 | N; |
---|
213 | N==M; |
---|
214 | M==M; |
---|
215 | kill r,ma,M,na,N; |
---|
216 | |
---|
217 | ring r; |
---|
218 | matrix m[2][2]=x,y2,z,xz; |
---|
219 | Matrix M=m; |
---|
220 | M; |
---|
221 | Module N=image(M); |
---|
222 | N; |
---|
223 | kill r,m,M,N; |
---|
224 | |
---|
225 | |
---|
226 | ring r; |
---|
227 | list L = 1,1,1; |
---|
228 | FreeModule F = freeModule(r,3,L); |
---|
229 | freeModule2Module(F); |
---|
230 | kill r,L,F; |
---|
231 | |
---|
232 | ring r; |
---|
233 | matrix m[2][2]=x,y2,z,xz; |
---|
234 | Matrix M=m; |
---|
235 | netMatrix(M); |
---|
236 | kill r,m,M; |
---|
237 | |
---|
238 | ring r; |
---|
239 | Module M = image(id(3)); |
---|
240 | makeVector([x,y,z],M); |
---|
241 | kill r,M; |
---|
242 | |
---|
243 | ring r; |
---|
244 | matrix m[2][1] = x,-y; |
---|
245 | Module M = subquotient(id(2),m); |
---|
246 | Vector V = [x,y],M; |
---|
247 | Vector W = [0,2y],M; |
---|
248 | Vector U = [x,y2],M; |
---|
249 | compareVectors(V,W); |
---|
250 | compareVectors(U,V); |
---|
251 | kill r,m,M,V,W,U; |
---|
252 | |
---|
253 | |
---|
254 | ring R = 0,(x,y),dp; |
---|
255 | matrix a[1][2] = x,y; |
---|
256 | Matrix A = a; |
---|
257 | matrix b[1][2] = x2,y2; |
---|
258 | Matrix B = b; |
---|
259 | Module M = subquotient(A,B); |
---|
260 | presentation(M); |
---|
261 | kill R,a,A,b,B,M; |
---|
262 | |
---|
263 | |
---|
264 | ring r; |
---|
265 | matrix m[2][2]=x,y2,z,xz; |
---|
266 | matrix n[2][2]=1,2,3,4; |
---|
267 | Matrix M = m; |
---|
268 | Matrix N = n; |
---|
269 | tensorMatrix(M,N); |
---|
270 | kill r,m,n,M,N; |
---|
271 | |
---|
272 | |
---|
273 | ring R = 0,(x,y,z),dp; |
---|
274 | matrix a[1][2] = x,y; |
---|
275 | Matrix A = a; |
---|
276 | matrix b[1][2] = x2,y2; |
---|
277 | Matrix B = b; |
---|
278 | Module M = subquotient(A,B); |
---|
279 | M; |
---|
280 | matrix c[2][2]=x,y2,z,xz; |
---|
281 | Matrix C=c; |
---|
282 | matrix d[2][3]=z2,xyz,x2y2,xy,x3,y4; |
---|
283 | Matrix D=d; |
---|
284 | Module N = subquotient(C,D); |
---|
285 | N; |
---|
286 | tensorModule(M,N); |
---|
287 | kill R,a,A,b,B,M,c,C,d,D,N; |
---|
288 | |
---|
289 | |
---|
290 | ring R = 0,(x,y,z),dp; |
---|
291 | matrix a[1][2] = x,y; |
---|
292 | Matrix A = a; |
---|
293 | matrix b[1][2] = x2,y2; |
---|
294 | Matrix B = b; |
---|
295 | Module M = subquotient(A,B); |
---|
296 | M; |
---|
297 | FreeModule F = freeModule(R,3,0); |
---|
298 | F; |
---|
299 | tensorModFreemod(M,F); |
---|
300 | kill R,a,A,b,B,M,F; |
---|
301 | |
---|
302 | |
---|
303 | ring R = 0,(x,y,z),dp; |
---|
304 | FreeModule F = freeModule(R,3,0); |
---|
305 | F; |
---|
306 | tensorFreeModule(F,F); |
---|
307 | kill R,F; |
---|
308 | |
---|
309 | |
---|
310 | ring R = 0,(x,y,z),dp; |
---|
311 | matrix a[2][3] = -x,-y^2,x^3,y,x,0; |
---|
312 | matrix b[1][2] = x^2-y^3,xy; |
---|
313 | Matrix A = a; |
---|
314 | Matrix B = b; |
---|
315 | Module M = coker(A); |
---|
316 | Module N = coker(B); |
---|
317 | Module H = hom(M,N); |
---|
318 | H; |
---|
319 | kill R,a,b,A,B,M,N,H; |
---|
320 | |
---|
321 | |
---|
322 | ring R = 0,(x,y),dp; |
---|
323 | matrix a[1][2] = x,y; |
---|
324 | Matrix A = a; |
---|
325 | matrix b[1][2] = x2,y2; |
---|
326 | Matrix B = b; |
---|
327 | Module M = subquotient(A,B); |
---|
328 | Module C = presentation(M); |
---|
329 | Vector V = [x2,y4],C; |
---|
330 | interpret(V); |
---|
331 | kill R,a,A,b,B,M,C,V; |
---|
332 | |
---|
333 | |
---|
334 | ring S; |
---|
335 | matrix gens[2][3] = x2+y-3z4,y+xy,xyz+4,3+z2x,z3-3x+3,2+x+y+z7; |
---|
336 | vector v = 2x*[gens[1..2,1]] + (y-z2)*[gens[1..2,2]] + 5*[gens[1..2,3]]; |
---|
337 | Matrix Gens = gens; |
---|
338 | Module M = subquotient(Gens,zero(2,3)); |
---|
339 | M.interpretation = list(list(1,1,1),list()); |
---|
340 | Vector V = v,M; |
---|
341 | interpret(V); |
---|
342 | kill S,gens,v,Gens,M,V; |
---|
343 | |
---|
344 | |
---|
345 | |
---|
346 | ring R; |
---|
347 | matrix gens[2][3] = x2,xy,4,z2x,3x+3,z; |
---|
348 | vector v = 2x*[gens[1..2,1]] + (y-z2)*[gens[1..2,2]] + 5*[gens[1..2,3]]; |
---|
349 | Matrix Gens = gens; |
---|
350 | Module S = subquotient(Gens,zero(2,3)); |
---|
351 | Module N = coker(id(3)); |
---|
352 | matrix E = N.generators.hom; |
---|
353 | Vector E1 = [1,0,0],N; |
---|
354 | Vector E2 = [0,1,0],N; |
---|
355 | Vector E3 = [0,0,1],N; |
---|
356 | S.interpretation = list(list(E1,E2,E3),list([gens[1..2,1]],[gens[1..2,2]],[gens[1..2,3]])); |
---|
357 | Vector V = v,S; |
---|
358 | Vector W = interpret(V),N; |
---|
359 | V; |
---|
360 | Vector Vnew = interpretInv(W,S); |
---|
361 | Vnew; |
---|
362 | V==Vnew; |
---|
363 | kill R,gens,v,Gens,S,N,E,E1,E2,E3,V,W,Vnew; |
---|
364 | |
---|
365 | |
---|
366 | ring R = 0,(x,y,z),dp; |
---|
367 | matrix a[2][3] = -x,-y^2,x^3,y,x,0; |
---|
368 | matrix b[1][2] = x^2-y^3,xy; |
---|
369 | Matrix A = a; |
---|
370 | Matrix B = b; |
---|
371 | Module M = coker(A); |
---|
372 | Module N = coker(B); |
---|
373 | hom(M,N); |
---|
374 | kill R,a,b,A,B,M,N; |
---|
375 | |
---|
376 | |
---|
377 | ring R=0,(x,y),(lp,c); |
---|
378 | Matrix M=id(2); |
---|
379 | Module src=image(M); |
---|
380 | matrix rules[2][2]=x,y,xy,y2; |
---|
381 | Module tar=coker(M); |
---|
382 | Homomorphism f=homomorphism(rules,src,tar); |
---|
383 | f; |
---|
384 | kerHom(f); |
---|
385 | kill R,M,src,rules,tar,f; |
---|
386 | |
---|
387 | |
---|
388 | tst_status(1);$ |
---|
389 | |
---|
390 | |
---|