|
2.3.4 Change of ringsTo calculate the local Milnor number we have to do the calculation with the same commands in a ring with local ordering. Define the localization of the polynomial ring at the origin (see section Polynomial data, and Mathematical background). ring rl = 0,(x,y,z),ds; This ordering determines the standard basis which will be calculated.
Fetch the polynomial defined in the ring poly f = fetch(r,f); f; → z2+x3+y3+x3y2-x2y3 Instead of In this ring the terms are ordered by increasing exponents. The local Milnor number is now Milnor(f); → 4 This shows that The command 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(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 computations may be
affected by the command option(redSB); groebner(minor(H,1)); → _[1]=1 This shows that 1 is contained in the ideal of the 1 × 1-minors, hence the corresponding variety is empty. |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |