#### D.6.20.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,
    ==> 6y6-7z7,
    ==> 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
    ==> (-3t4+7t3-3t2-3t+2) / (1-t)^3
    ==> (3t+2) / (1-t)^0
    ==> // dimension (local)   = 0
    ==> // multiplicity = 5
    printlevel = p;

User manual for Singular version 4.4.1, 2025, generated by texi2html.