Macaulay2 » Documentation
Packages » Macaulay2Doc :: independentSets
next | previous | forward | backward | up | index | toc

independentSets -- some size-maximal independent subsets of variables modulo an ideal

Synopsis

Description

An independent set of variables of an ideal J in a polynomial ring R is a set of variables that are algebraically independent modulo J (i.e. there is no polynomial in J involving only these sets of variables.

If the Krull dimension of R/J is d, then a maximal independent set is an independent set having size d.

i1 : R = QQ[a..h];
i2 : I = minors(2,genericMatrix(R,a,2,4))

o2 = ideal (- b*c + a*d, - b*e + a*f, - d*e + c*f, - b*g + a*h, - d*g + c*h,
     ------------------------------------------------------------------------
     - f*g + e*h)

o2 : Ideal of R
i3 : inI = ideal leadTerm I

o3 = ideal (f*g, d*g, b*g, d*e, b*e, b*c)

o3 : Ideal of R
i4 : independentSets I

o4 = {a*b*d*f*h, a*c*d*f*h, a*c*e*f*h, a*c*e*g*h}

o4 : List
i5 : independentSets inI

o5 = {a*b*d*f*h, a*c*d*f*h, a*c*e*f*h, a*c*e*g*h}

o5 : List

The independent sets returned correspond one for one with the minimal primes of smallest codimension of the ideal of lead terms of J.
i6 : I = ideal"abc,bcd,cde,adf,cgh,b3f,a3g"

                                                3    3
o6 = ideal (a*b*c, b*c*d, c*d*e, a*d*f, c*g*h, b f, a g)

o6 : Ideal of R
i7 : minimalPrimes I

o7 = {ideal (c, b, a), ideal (f, c, a), ideal (g, d, b), ideal (g, e, b, a),
     ------------------------------------------------------------------------
     ideal (g, f, c), ideal (g, f, d, a), ideal (g, f, e, b), ideal (h, d, b,
     ------------------------------------------------------------------------
     a), ideal (h, e, b, a), ideal (h, f, d, a)}

o7 : List
i8 : independentSets I

o8 = {a*b*d*e*h, a*c*e*f*h, b*d*e*g*h, d*e*f*g*h}

o8 : List
The optional Limit argument is useful if you need only one, or several such independent sets.
i9 : L = independentSets(I, Limit=>1)

o9 = {a*b*d*e*h}

o9 : List

Often, you want the list of the variables in a maximal independent set, or the list of those not in the set.
i10 : support L_0

o10 = {a, b, d, e, h}

o10 : List
i11 : rsort toList(set gens R - set support L_0)

o11 = {c, f, g}

o11 : List

This function is useful as a subroutine to primary decomposition algorithms.

See also

Ways to use independentSets :

For the programmer

The object independentSets is a method function with options.