invNoetherNormalization constructs an automorphism of the polynomial ring in which I defines an ideal, such that the image of I under this automorphism is in Noether normal position.
The automorphism is defined by the first list returned: the i-th variable of the polynomial ring is mapped to the i-th entry of that list.
In the new coordinates, the residue class ring is an integral ring extension of the polynomial ring in the variables given in the second list returned.
If the option PermuteVariables is set to true, the second list consists of the last d variables, where d is the Krull dimension of the residue class ring.
Reference: D. Robertz, Noether normalization guided by monomial cone decompositions, Journal of Symbolic Computation 44, 2009, pp. 1359-1373.
i1 : R = QQ[x,y,z]; |
i2 : I = ideal(x*y*z); o2 : Ideal of R |
i3 : J = janetBasis I; |
i4 : N = invNoetherNormalization J o4 = {{x, - x + y, - x + z}, {z, y}} o4 : List |
i5 : R = QQ[w,x,y,z]; |
i6 : I = ideal(y^2*z-w*x*y^2, x*y*z-w*z^2, y^2*z-w*x^2*y*z); o6 : Ideal of R |
i7 : J = janetBasis I; |
i8 : N = invNoetherNormalization J o8 = {{w, x, - x + y, - w - x + z}, {z, y}} o8 : List |