The Milnor number resp. the Tjurina number of a power
series f in
K[[x1,...,xn]]
is
milnor(f) = dim_K(K[[x1,...,xn]]/jacob(f))
resp.
tjurina(f) = dim_K(K[[x1,...,xn]]/((f)+jacob(f)))
where
jacob(f) is the ideal generated by the partials
of f. tjurina(f) is finite, if and only if f has an
isolated singularity. The same holds for milnor(f) if
K has characteristic 0.
SINGULAR displays -1 if the dimension is infinite.
SINGULAR cannot compute with infinite power series. But it can
work in
Loc_(x)K[x1,...,xn],
the localization of
K[x1,...,xn]
at the maximal ideal
(x1,...,xn).
To do this one has to define an
s-ordering like ds, Ds, ls, ws, Ws or an appropriate matrix
ordering (look at the manual to get information about the possible
monomial orderings in SINGULAR, or type help Monomial orderings;
to get a menu of possible orderings. For further help type e.g.
help local orderings;
).
We shall show in the example below how to realize the following:
prot
to have a short protocol during standard basis
computation
vdim
noprot
option(prot); ring r1 = 32003,(x,y,z),ds; r1; ==> // characteristic : 32003 ==> // number of vars : 3 ==> // block 1 : ordering ds ==> // : names x y z ==> // block 2 : ordering C int a,b,c,t=11,5,3,0; poly f = x^a+y^b+z^(3*c)+x^(c+2)*y^(c-1)+x^(c-1)*y^(c-1)*z3+ x^(c-2)*y^c*(y^2+t*x)^2; f; ==> y5+x5y2+x2y2z3+xy7+z9+x11 ideal i=jacob(f); i; ==> i[1]=5x4y2+2xy2z3+y7+11x10 ==> i[2]=5y4+2x5y+2x2yz3+7xy6 ==> i[3]=3x2y2z2+9z8 ideal j=std(i); ==> 7(2)s8-s10.s11(2)s12.s(3)s13(4)s(5)s14(6)s(7)15--.s(6)-16.-.s(5)17.s( ==> 7)s.--s18(6).--19-..sH(24)20....21.--- ==> product criterion:10 chain criterion:69 "The Milnor number of f(11,5,3) for t=0 is", vdim(j); ==> The Milnor number of f(11,5,3) for t=0 is 250 j=i+f; // overwrite j j=std(j); ==> 7(3)s8-s10.s11(3)s.s12(4)s(5)s13(6)s(8)s14(9).s(10).15--sH(23)....16. ==> .....17.......sH(21)(9)sH(20)16(10).17.---------sH(19)16- ==> product criterion:10 chain criterion:53 vdim(j); // compute the Tjurina number for t=0 ==> 195 t=1; f=x^a+y^b+z^(3*c)+x^(c+2)*y^(c-1)+x^(c-1)*y^(c-1)*z3 +x^(c-2)*y^c*(y^2+t*x)^2; ideal i1=jacob(f); ideal j1=std(i1); ==> 7(2)s8-s10.s11.s12(2)s13(3)s.s(4)s14(5)s(6)s15(7).....s(8)16.s....s(9 ==> )..17............s18(10).....s(11)..-.19.......sH(24)......20........ ==> ...21.--.......-------- ==> product criterion:11 chain criterion:83 "The Milnor number of f(11,5,3) for t=1:",vdim(j1); ==> The Milnor number of f(11,5,3) for t=1: 248 vdim(std(j1+f)); // compute the Tjurina number for t=1 ==> 7(16)s8-s10.s11.s.s(16)-12.s(16)-s13(16)s(17)s(18)s(19)-s..-14-s(17)- ==> s.s.s(17)s15(18)..-s(18)...--.16....-.......s(16).sH(23).s(18)...17.. ==> ........18.........sH(20)17-.-------...s(12).---.----...sH(19)16----- ==> ==> product criterion:15 chain criterion:174 ==> 195 option(noprot);