This is an internal routine used by
minimalPrimes. It computes an irreducible characteristic series for
I . On its way, it possibly permutes the variables. The second entry of the output list gives the inverse coordinate change. The first entry represents the irreducible characteristic series as in the example below.
i1 : R=QQ[w,x,y,z]
o1 = R
o1 : PolynomialRing
|
i2 : I=ideal(x^2-y*w,x^3-z*w^2)
2 3 2
o2 = ideal (x - w*y, x - w z)
o2 : Ideal of R
|
i3 : L=irreducibleCharacteristicSeries I
o3 = {{| -xy2+z3 -wy+z2 |, | z y |}, map(R,R,{y, z, w, x})}
o3 : List
|
i4 : apply(L_0, i-> L_1(i))
o4 = {| x3-w2z x2-wy |, | x w |}
o4 : List
|
As we see in the example, an irreducible characteristic series for
I consists of a collection of triangular sets. Here, given a polynomial f, write lvar(f) for the largest variable appearing in f (with respect to the lexicographic order). In the example, lvar(-w*y+z
2) = w . A triangular set consists of polynomials f
1, ... , f
r such that lvars(f
1)< ... < lvars(f
r). In the example, lvar(-x*y
2+z
3) =x < w = lvar(-w*y+z
2) . If T
1, ... ,T
s form an irreducible characteristic series for
I , and if J
i is the ideal generated by the largest variables of the elements of T
i , then the algebraic set V(I) defined by
I is the union of the (V(T
i) \V(I
i)) . The minimal associated primes of
I can, thus, be recovered from the irreducible characteristic series by saturation (and by throwing away superfluous primes). This is done by
minimalPrimes.