Home Online Manual
Top
Back: homolog_lib
Forward: cup
FastBack:
FastForward:
Up: homolog_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.4.10.1 canonMap

Procedure from library homolog.lib (see homolog_lib).

Usage:
canonMap(id); id= ideal/module,

Return:
a list L, the kernel in two different representations and
the cokernel of the canonical map
M ---> Ext^c_R(Ext^c_R(M,R),R) given by presentations
Here M is the R-module (R=basering) given by the presentation
defined by id, i.e. M=R/id resp. M=R^n/id
c is the codimension of M
L[1] is the preimage of the kernel in R resp. R^n
L[2] is a presentation of the kernel
L[3] is a presentation of the cokernel

Example:
 
LIB "homolog.lib";
ring s=0,(x,y),dp;
ideal i = x,y;
canonMap(i);
==> [1]:
==>    _[1]=y*gen(1)
==>    _[2]=x*gen(1)
==> [2]:
==>    _[1]=0
==> [3]:
==>    _[1]=0
ring R = 0,(x,y,z,w),dp;
ideal I1 = x,y;
ideal I2 = z,w;
ideal I = intersect(I1,I2);
canonMap(I);
==> [1]:
==>    _[1]=yw*gen(1)
==>    _[2]=xw*gen(1)
==>    _[3]=yz*gen(1)
==>    _[4]=xz*gen(1)
==> [2]:
==>    _[1]=0
==> [3]:
==>    _[1]=-w*gen(1)
==>    _[2]=-z*gen(1)
==>    _[3]=-y*gen(1)
==>    _[4]=-x*gen(1)
module M = syz(I);
canonMap(M);
==> [1]:
==>    _[1]=z*gen(1)-w*gen(3)
==>    _[2]=z*gen(2)-w*gen(4)
==>    _[3]=x*gen(1)-y*gen(2)
==>    _[4]=x*gen(3)-y*gen(4)
==> [2]:
==>    _[1]=0
==> [3]:
==>    _[1]=yw*gen(1)
==>    _[2]=xw*gen(1)
==>    _[3]=yz*gen(1)
==>    _[4]=xz*gen(1)
ring S = 0,(x,y,z,t),Wp(3,4,5,1);
ideal I = x-t3,y-t4,z-t5;
ideal J = eliminate(I,t);
ring T = 0,(x,y,z),Wp(3,4,5);
ideal p = imap(S,J);
ideal p2 = p^2;
canonMap(p2);
==> [1]:
==>    _[1]=x5*gen(1)-3x2yz*gen(1)+xy3*gen(1)+z3*gen(1)
==>    _[2]=x2z2*gen(1)-2xy2z*gen(1)+y4*gen(1)
==>    _[3]=x4z*gen(1)-x3y2*gen(1)-xyz2*gen(1)+y3z*gen(1)
==>    _[4]=x3yz*gen(1)-x2y3*gen(1)-xz3*gen(1)+y2z2*gen(1)
==>    _[5]=x4y2*gen(1)-4xy3z*gen(1)+2y5*gen(1)+z4*gen(1)
==> [2]:
==>    _[1]=x*gen(1)
==>    _[2]=y*gen(1)
==>    _[3]=z*gen(1)
==> [3]:
==>    _[1]=0