The strategy option value is currently not considered while computing associated primes
There are three methods for computing associated primes in Macaulay2: If the ideal is a monomial ideal, use code that Greg Smith and Serkan Hosten wrote. If a primary decomposition has already been found, use the stashed associated primes found. If neither of these is the case, then use Ext modules to find the associated primes (this is
into a monomial ideal.
i1 : S = QQ[a,b,c,d,e];
|
i2 : I1 = ideal(a,b,c);
o2 : Ideal of S
|
i3 : I2 = ideal(a,b,d);
o3 : Ideal of S
|
i4 : I3 = ideal(a,e);
o4 : Ideal of S
|
i5 : P = I1*I2*I3
3 2 2 2 2 2 2
o5 = ideal (a , a e, a b, a*b*e, a d, a*d*e, a b, a*b*e, a*b , b e, a*b*d,
------------------------------------------------------------------------
2
b*d*e, a c, a*c*e, a*b*c, b*c*e, a*c*d, c*d*e)
o5 : Ideal of S
|
i6 : L1 = associatedPrimes P
o6 = {ideal (e, a), ideal (d, b, a), ideal (c, b, a), ideal (d, c, b, a),
------------------------------------------------------------------------
ideal (e, c, b, a), ideal (e, d, b, a), ideal (e, d, c, b, a)}
o6 : List
|
i7 : L2 = apply(associatedPrimes monomialIdeal P, J -> ideal J)
o7 = {ideal (a, e), ideal (a, b, c), ideal (a, b, d), ideal (a, b, c, d),
------------------------------------------------------------------------
ideal (a, b, c, e), ideal (a, b, d, e), ideal (a, b, c, d, e)}
o7 : List
|
i8 : M1 = set apply(L1, I -> sort flatten entries gens I)
o8 = set {{c, b, a}, {d, b, a}, {d, c, b, a}, {e, a}, {e, c, b, a}, {e, d, b,
------------------------------------------------------------------------
a}, {e, d, c, b, a}}
o8 : Set
|
i9 : M2 = set apply(L2, I -> sort flatten entries gens I)
o9 = set {{c, b, a}, {d, b, a}, {d, c, b, a}, {e, a}, {e, c, b, a}, {e, d, b,
------------------------------------------------------------------------
a}, {e, d, c, b, a}}
o9 : Set
|
i10 : assert(M1 === M2)
|
The method using Ext modules comes from Eisenbud-Huneke-Vasconcelos, Invent. Math 110 (1992) 207-235.