When
R is a polynomial ring, if
hilb is an O-sequence (that is, it satisfies Macaulay's Theorem), such an
L always exists. When
Q is a quotient of a polynomial ring, there may be no lexicographic ideal with a particular Hilbert function even if it is an O-sequence.
lexIdeal returns
null if no lexicographic ideal
L corresponding to the Hilbert function
hilb exists in
R or
Q.
We hope eventually to implement a version of
lexIdeal for nonArtinian ideals, taking a Hilbert series as the input.
R=ZZ/32003[a..c]; |
lexIdeal(R,{1,3,4,3,1}) |
lexIdeal(R,{1,3,7}) --not an O-sequence, so no lex ideal exists |
Q=R/ideal(a^3,b^3,a*c^2); |
lexIdeal(Q,{1,3,6,4,2}) |
lexIdeal(Q,{1,3,6,4,4}) --value of 4 in degree 4 is too high in this ring |