# ncHilbertSeries -- Computes the Hilbert series of a noncommutative ring

## Synopsis

• Usage:
hseries = ncHilbertSeries(A)
• Inputs:
• Optional inputs:
• Order => ..., default value 20
• Outputs:

## Description

This method computes the Hilbert series of a graded noncommutative ring. 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 either an expression (if a rational representation can be found using toRationalFunction) or as an element of the degreesRing of the input.

 i1 : A = QQ<|x,y,z|> o1 = A o1 : FreeAlgebra i2 : ncHilbertSeries(A,Order=>10) 1 o2 = ------ 1 - 3T o2 : Expression of class Divide i3 : A = QQ<|x,y,z,Degrees=>{1,2,3}|> o3 = A o3 : FreeAlgebra i4 : ncHilbertSeries(A,Order=>10) 1 o4 = ----------------- 2 3 1 - (T + T + T ) o4 : Expression of class Divide i5 : B = threeDimSklyanin(QQ,{1,1,-1},{x,y,z}) Using numthreads = 0 o5 = B o5 : FreeAlgebraQuotient i6 : ncHilbertSeries(B,Order=>10) Using numthreads = 0 Using numthreads = 0 Using numthreads = 0 Using numthreads = 0 1 o6 = -------- 3 (1 - T) o6 : Expression of class Divide

## Ways to use ncHilbertSeries :

• "ncHilbertSeries(FreeAlgebra)"
• "ncHilbertSeries(FreeAlgebraQuotient)"

## For the programmer

The object ncHilbertSeries is .