CoCoA:HilbertSeriesShifts

From ApCoCoAWiki

HilbertSeriesShifts

the Hilbert-Poincare series

Description

This function computes the Hilbert-Poincare series of a

(single-graded) module M with shifts.

The input, M, must be homogeneous (with respect the weights list). In the standard case, i.e. the weights of all indeterminates are 1, the result is simplified so that the power appearing in the denominator is the dimension of M.

The function <ttref>PoincareShifts</ttref> is exacly the same as

<ttref>HilbertSeriesShifts</ttref>.

NOTES:

(i) the coefficient ring must be a field.

(ii) these functions produce tagged objects: they cannot safely be

    (non-)equality to other values.

For more information, see the article: A.M. Bigatti, Computations of Hilbert-Poincare Series, J. Pure Appl. Algebra, 119/3 (1997), 237--253.

Example

  Use P ::= Q[x,y,z];
  M := Module([x,y^3], [x-z,0]);
  HilbertSeriesShifts(M, [2,0]);  -- HilbertPoincare series of a shifted module
(2x^3) / (1-x)^3
-------------------------------
  PoincareShifts(P^2/M, [3,1]);   -- HP series of a shifted quotient module
(x + x^2 + 2x^3) / (1-x)^2
-------------------------------

Syntax

HilbertSeriesShifts(M: Module, ShiftsList: LIST):TAGGED(<quotes>$hp.PSeries</quotes>)
HilbertSeriesShifts(M: TAGGED(<quotes>Quotient</quotes>), ShiftsList: LIST)
                                           :TAGGED(<quotes>$hp.PSeries</quotes>)

Dim

Hilbert

HVector

Multiplicity

Weights Modifier

WeightsMatrix

   <type>groebner</type>
   <type>groebner-basic</type>
   <type>hilbert</type>
   <type>quotient</type>
   <type>ring</type>