| LIB "modules.lib";
ring R;
matrix gens[2][3] = x2,xy,4,z2x,3x+3,z;
vector v = 2x*[gens[1..2,1]] + (y-z2)*[gens[1..2,2]] + 5*[gens[1..2,3]];
Matrix Gens = gens;
Module S = subquotient(Gens,zero(2,3));
Module N = coker(id(3));
matrix E = N.generators.hom;
Vector E1 = [1,0,0],N;
Vector E2 = [0,1,0],N;
Vector E3 = [0,0,1],N;
S.interpretation = list(list(E1,E2,E3),list([gens[1..2,1]],[gens[1..2,2]],[gens[1..2,3]]));
Vector V = v,S;
Vector W = interpret(V),N;
net(V);
==> | -xyz2+2x3+xy2+20 |
==> | 2x2z2-3xz2+3xy-3z2+3y+5z |
==>
Vector Vnew = interpretInv(W,S);
net(Vnew);
==> | -xyz2+2x3+xy2+20 |
==> | 2x2z2-3xz2+3xy-3z2+3y+5z |
==>
V==Vnew;
==> 1
|