|
D.6.15.14 Tjurina
Procedure from library sing.lib (see sing_lib).
- Usage:
- Tjurina(id[,<any>]); id=ideal or poly
- Assume:
- id=ICIS (isolated complete intersection singularity)
- Return:
- standard basis of Tjurina-module of id,
of type module if id=ideal, resp. of type ideal if id=poly.
If a second argument is present (of any type) return a list:
[1] = Tjurina number,
[2] = k-basis of miniversal deformation,
[3] = SB of Tjurina module,
[4] = Tjurina module
- Display:
- Tjurina number if printlevel >= 0 (default)
- Note:
- Tjurina number = -1 implies that id is not an ICIS
Example:
| LIB "sing.lib";
int p = printlevel;
printlevel = 1;
ring r = 0,(x,y,z),ds;
poly f = x5+y6+z7+xyz; // singularity T[5,6,7]
list T = Tjurina(f,"");
==> // Tjurina number = 16
show(T[1]); // Tjurina number, should be 16
==> // int, size 1
==> 16
show(T[2]); // basis of miniversal deformation
==> // ideal, 16 generator(s)
==> z6,
==> z5,
==> z4,
==> z3,
==> z2,
==> z,
==> y5,
==> y4,
==> y3,
==> y2,
==> y,
==> x4,
==> x3,
==> x2,
==> x,
==> 1
show(T[3]); // SB of Tjurina ideal
==> // ideal, 6 generator(s)
==> xy+7z6,
==> xz+6y5,
==> yz+5x4,
==> 5x5-6y6,
==> y6,
==> z7
show(T[4]); ""; // Tjurina ideal
==> // ideal, 4 generator(s)
==> yz+5x4,
==> xz+6y5,
==> xy+7z6,
==> xyz+x5+y6+z7
==>
ideal j = x2+y2+z2,x2+2y2+3z2;
show(kbase(Tjurina(j))); // basis of miniversal deformation
==> // Tjurina number = 5
==> // module, 5 generator(s)
==> [z]
==> [y]
==> [x]
==> [1]
==> [0,1]
hilb(Tjurina(j)); // Hilbert series of Tjurina module
==> // Tjurina number = 5
==> // 2 t^0
==> // -3 t^1
==> // -3 t^2
==> // 7 t^3
==> // -3 t^4
==>
==> // 2 t^0
==> // 3 t^1
==> // dimension (local) = 0
==> // multiplicity = 5
printlevel = p;
|
|