Let
I be a homogeneous ideal in a ring
R that is either a polynomial ring or a quotient of a polynomial ring, and suppose that
R has the standard grading.
hilbertFunct returns the Hilbert function of
R/I as a list.
If
R/I is Artinian, then the default is for
hilbertFunct to return the entire Hilbert function (i.e., until the Hilbert function is zero) of
R/I as a list. The user can override this by using the
Degree option to bound the highest degree considered.
If
R/I is not Artinian, then
hilbertFunct returns the Hilbert function of
R/I through degree 20. Again, the user can select a different upper bound for the degree by using the
Degree option.
We require the standard grading on
R in order to compute with the Hilbert series, which is much faster than repeatedly computing the Hilbert function.
R=ZZ/32003[a..c]; |
hilbertFunct ideal(a^3,b^3,c^3) |
hilbertFunct ideal(a^3,a*b^2) |
hilbertFunct(ideal(a^3,a*b^2),Degree=>4) |
M=ideal(a^3,b^4,a*c); |
Q=R/M; |
hilbertFunct ideal(c^4) |
hilbertFunct ideal(b*c,a*b) |