# Singular

##### 7.7.7.0. lpHilbert
Procedure from library `fpadim.lib` (see fpadim_lib).

Usage:
lpHilbert(G[,degbound,n]); G an ideal, degbound, n optional integers

Return:
intvec, containing the coefficients of the Hilbert series

Purpose:
Computing the Hilbert series

Assume:
- basering is a Letterplace ring.
- if you specify a different degree bound degbound,
degbound <= attrib(basering,uptodeg) holds.

Note:
- If degbound is set, there will be a degree bound added. 0 means no
degree bound. Default: attrib(basering,uptodeg).
- n is the number of variables, which can be set to a different number.
Default: attrib(basering, lV).
- If I is returned, then I[k] is the (k-1)-th coefficient of the Hilbert
series.
- If the K-dimension is known to be infinite, a degree bound is needed

Example:
 ```LIB "fpadim.lib"; ring r = 0,(x,y),dp; def R = makeLetterplaceRing(5); // constructs a Letterplace ring setring R; // sets basering to Letterplace ring ideal G = x(1)*x(2), y(1)*y(2),x(1)*y(2)*x(3); // ideal G contains a //Groebner basis lpHilbert(G,5,2); // invokes procedure with degree bound 5 and 2 variables ==> 1,2,2,1 // note that the optional parameters are not necessary, due to the finiteness // of the K-dimension of the factor algebra lpDHilbert(G); // procedure with ring parameters ==> [1]: ==> 6 ==> [2]: ==> 1,2,2,1 lpDHilbert(G,0); // procedure without degreebound ==> [1]: ==> 6 ==> [2]: ==> 1,2,2,1 ```