Top
Back: Procedures and libraries
Forward: Modules and their annihilator
FastBack: How to use this manual
FastForward:
Up: Getting started
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

2.3.4 Change of rings

To calculate the local Milnor number we have to do the calculation with the same commands in a ring with local ordering. We can define the localization of the polynomial ring at the origin (see Polynomial data, and Mathematical background).

 
ring rl = 0,(x,y,z),ds;

The ordering directly affects the standard basis which will be calculated. Fetching the polynomial defined in the ring r into this new ring, helps us to avoid retyping previous input.

 
poly f = fetch(r,f);
f;
==> z2+x3+y3+x3y2-x2y3

Instead of fetch we can use the function imap which is more general but less efficient. The most general way to fetch data from one ring to another is to use maps, this will be explained in map.

In this ring the terms are ordered by increasing exponents. The local Milnor number is now

 
Milnor(f);
==> 4

This shows that f has outside the origin in affine 3-space singularities with local Milnor number adding up to $12-4=8$.Using global and local orderings as above is a convenient way to check whether a variety has singularities outside the origin.

The command jacob applied twice gives the Hessian of f, in our example a 3x3 - matrix.

 
matrix H = jacob(jacob(f));
H;
==> H[1,1]=6x+6xy2-2y3
==> H[1,2]=6x2y-6xy2
==> H[1,3]=0
==> H[2,1]=6x2y-6xy2
==> H[2,2]=6y+2x3-6x2y
==> H[2,3]=0
==> H[3,1]=0
==> H[3,2]=0
==> H[3,3]=2

The print command displays the matrix in a nicer format.

 
print(H);
==> 6x+6xy2-2y3,6x2y-6xy2,  0,
==> 6x2y-6xy2,  6y+2x3-6x2y,0,
==> 0,          0,          2

We may calculate the determinant and (the ideal generated by all) minors of a given size.

 
det(H);
==> 72xy+24x4-72x3y+72xy3-24y4-48x4y2+64x3y3-48x2y4
minor(H,1);  // the 1x1 - minors
==> _[1]=2
==> _[2]=6y+2x3-6x2y
==> _[3]=6x2y-6xy2
==> _[4]=6x2y-6xy2
==> _[5]=6x+6xy2-2y3

The algorithm of the standard basis computation may be affected by the command option. For example, a reduced standard basis of the ideal generated by the $1 \times 1$-minorsof H is obtained in the following way:
 
option(redSB);
groebner(minor(H,1));
==> _[1]=1

This shows that 1 is contained in the ideal of the $1 \times 1$-minors,hence the corresponding variety is empty.


Top Back: Procedures and libraries Forward: Modules and their annihilator FastBack: How to use this manual FastForward: Up: Getting started Top: Singular Manual Contents: Table of Contents Index: Index About: About this document
            User manual for Singular version 4.3.1, 2022, generated by texi2html.