Given an ideal
I in a ring
R that is either a polynomial ring or a quotient of a polynomial ring by a monomial ideal,
isLexIdeal first checks to see that
I is a monomial ideal. If not, it returns
false. If so,
isLexIdeal computes bases of
R/I in each degree up through the maximum degree of a minimal generator of
I to determine whether
I is a lexicographic ideal in
R.
i1 : R=ZZ/32003[a..c];
|
i2 : isLexIdeal lexIdeal(R,{1,3,4,3,1})
o2 = true
|
i3 : isLexIdeal ideal(a^3-a^2*b)
o3 = false
|
i4 : isLexIdeal ideal(a^3,a^2*b)
o4 = true
|
i5 : Q=R/ideal(a^3,b^3,a*c^2);
|
i6 : isLexIdeal ideal(a^2*b,a^2*c)
o6 = true
|
i7 : isLexIdeal ideal(a^2*b,a*b^2)
o7 = false
|