# Singular

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

Usage:
ivSickleHil(L,n[,degbound]); L a list of intmats, n an integer,
degbound an optional integer

Return:
list

Purpose:
Computing the mistletoes and the Hilbert series

Assume:
- basering is a Letterplace ring.
- all rows of each intmat correspond to a Letterplace monomial
as explained in the overview
- if you specify a different degree bound degbound,
degbound <= attrib(basering,uptodeg) should hold.

Note:
- If L is the list returned, then L[1] is an intvec, L[2] is a list,
containing the mistletoes as intvecs.
- If degbound is set, a degree bound will be added. By default there
is no degree bound.
- n is the number of variables.
- If I = L[1] is the intvec 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 //some intmats, which contain monomials in intvec representation as rows intmat I1[2][2] = 1,1,2,2; intmat I2[1][3] = 1,2,1; intmat J1[1][2] = 1,1; intmat J2[2][3] = 2,1,2,1,2,1; print(I1); ==> 1 1 ==> 2 2 print(I2); ==> 1 2 1 print(J1); ==> 1 1 print(J2); ==> 2 1 2 ==> 1 2 1 list G = I1,I2;// ideal, which is already a Groebner basis list I = J1,J2; // ideal, which is already a Groebner basis ivSickleHil(G,2); // invokes the procedure without any degree bound ==> [1]: ==> 1,2,2,1 ==> [2]: ==> [1]: ==> 1,2 ==> [2]: ==> 2,1,2 ivSickleHil(I,2,5); // invokes the procedure with degree bound 5 ==> [1]: ==> 1,2,3,3,4,4 ==> [2]: ==> [1]: ==> 1,2,2,1 ==> [2]: ==> 1,2,2,2,1 ==> [3]: ==> 1,2,2,2,2 ==> [4]: ==> 2,1 ==> [5]: ==> 2,2,1 ==> [6]: ==> 2,2,2,1 ==> [7]: ==> 2,2,2,2,1 ==> [8]: ==> 2,2,2,2,2 ```