Macaulay2 » Documentation
Packages » NCAlgebra :: hilbertSeries(NCRing)
next | previous | forward | backward | up | index | toc

hilbertSeries(NCRing) -- Computes the Hilbert series of an NCRing

Synopsis

Description

This method computes the Hilbert series of a graded NCRing. If the ring is defined ober QQ or ZZ/p, and standard graded, it calls hilbertBergman. Otherwise, if the ring is defined over a field (and potentially not standard graded), then a basis is computed and the generating function of the degrees of that basis is returned. The degree to which one computes the Hilbert series is controlled with the Order option. The output is returned as a polynomial in ZZ[T].

i1 : A = QQ{x,y,z}

o1 = A

o1 : NCPolynomialRing
i2 : hilbertSeries(A,Order=>10)

                2      3      4       5       6        7        8         9  
o2 = 1 + 3T + 9T  + 27T  + 81T  + 243T  + 729T  + 2187T  + 6561T  + 19683T  +
     ------------------------------------------------------------------------
           10
     59049T

o2 : ZZ[T]
i3 : setWeights(A,{1,2,3})

o3 = A

o3 : NCPolynomialRing
i4 : hilbertSeries(A,Order=>10)

               2     3     4      5      6      7      8       9       10
o4 = 1 + T + 2T  + 4T  + 7T  + 13T  + 24T  + 44T  + 81T  + 149T  + 274T

o4 : ZZ[T]
i5 : B = threeDimSklyanin(QQ,{1,1,-1},{x,y,z})
--Calling Bergman for NCGB calculation.
Complete!

o5 = B

o5 : NCQuotientRing
i6 : hilbertSeries(B,Order=>10)
--Calling bergman for HS computation.
Complete!

                2      3      4      5      6      7      8      9      10
o6 = 1 + 3T + 6T  + 10T  + 15T  + 21T  + 28T  + 36T  + 45T  + 55T  + 66T

o6 : ZZ[T]

Ways to use this method: