next | previous | forward | backward | up | top | index | toc | Macaulay2 website
PseudomonomialPrimaryDecomposition :: isSquarefreePseudomonomialIdeal

isSquarefreePseudomonomialIdeal -- determine if an ideal is a square free pseudomonomial ideal



An ideal is a square free pseudomonomial ideal if its generators are square free pseudomonomials. A square free pseudomonomial is a polynomial of the form P=z1*z2*...*zk such that zi is either xi or xi-1 and a variable can only appear once in P. For example, x1*x3, x1*(x2-1)*(x3-1) are square free pseudomonomial and x2*x3^2, x1*(x1-1)*(x3-1) are not.
i1 : R=ZZ/2[x1,x2,x3,x4,x5]; 
i2 : I = ideal(x1*x2,x3*x4,x5);

o2 : Ideal of R
i3 : isSquarefreePseudomonomialIdeal(I) 

o3 = true
i4 : R=ZZ/2[x1,x2];
i5 : I = ideal(x1*(x2-1),(x1-1)*(x2-1),x1*x2,(x1-1)*x2);

o5 : Ideal of R
i6 : isSquarefreePseudomonomialIdeal(I) 

o6 = true
i7 : R=ZZ/3[x1,x2];
i8 : I = ideal(x1,x2-1);

o8 : Ideal of R
i9 : isSquarefreePseudomonomialIdeal(I) 

o9 = true
i10 : R=QQ[x1,x2,x3,x4,x5];
i11 : I = ideal(x1*(x1-1),(x3-1)*x4,x5);

o11 : Ideal of R
i12 : not isSquarefreePseudomonomialIdeal(I)

o12 = true
i13 : R=QQ[x1,x2,x3,x4,x5];
i14 : I = ideal(x1*(x5-1),(x3-1)*x4^2,x5);

o14 : Ideal of R
i15 : isSquarefreePseudomonomialIdeal(I) 

o15 = false


The algorithm disregards the base field. So, ideal(-x1) is a square free pseudomonomial ideal in F[x1] for F=ZZ,ZZ/p,QQ, whereas ideal(-x1) is not a monomial ideal when F=ZZ.

See also

Ways to use isSquarefreePseudomonomialIdeal :

For the programmer

The object isSquarefreePseudomonomialIdeal is a method function.