Thank you for the information. The ideal is over a polynomial ring in characteristic zero. So, while rational numbers are preferred for computation, I guess I could pass to complex numbers just for this check, if it is quicker than the computation of the associated primes?
I checked the numericalIrreducibleDecomposition function. It works in some cases, but I am also getting some errors and some interesting answers in different examples.
Example 1:
i1 : R = QQ[x,y,z];
I2 : f = x^4+y^4+z^4;
i3 : J = ideal jacobian f;
i4 : ass J
o4 = {ideal (z, y, x)}
i5 : T = CC[x,y,z];
i6 : numericalIrreducibleDecomposition sub(J,T)
stdio:34:33:(3): error: key not found in hash table:
DeflationSequenceMatrices (of class Symbol)
Example 2:
i1 : R = QQ[z_0..z_2];
i2 : h = z_0^3+z_1^3+z_2^3+z_0*z_1*z_2;
i3 : J = ideal jacobian h;
i4 : ass J
o4 = {ideal (z , z , z )}
2 1 0
i5 : T = CC[z_0..z_2];
i6 : numericalIrreducibleDecomposition (sub(J,T))
o6 = a "numerical variety" with components in
o6 : NumericalVariety
Example 3:
i1 : R = QQ[y,z];
i2 : f = y^4-2*y^2*z+z^2-y*z^3;
i3 : J = ideal jacobian f;
i4 : ass J
2 2
o4 = {ideal (z, y), ideal (3z + 14y, 9y*z - 7, 6y + z)}
i5 : T = CC[y,z];
i6 : numericalIrreducibleDecomposition sub(J,T)
stdio:19:33:(3): error: check failed
Is this because the ideal J in all of the above cases is not a radical ideal?