### 5.1.56 hilb

`Syntax:`
  `hilb (` ideal_expression `)`
  `hilb (` module_expression `)`
  `hilb (` ideal_expression`,` int_expression `)`
  `hilb (` module_expression`,` int_expression `)`
  `hilb (` ideal_expression`,` int_expression `,` intvec_expression `)`
  `hilb (` module_expression`,` int_expression `,` intvec_expression `)`
`Type:`
  none (if called with one argument)
  bigintvec (if called with two or three arguments)
`Purpose:`
  computes the (weighted) Hilbert series of the base ring R modulo the ideal, resp. R^k modulo the module, defined by the leading terms of the generators of the given ideal, resp. module.
  If `hilb` is called with one argument, then the first and second Hilbert series together with some additional information are displayed.
  If `hilb` is called with two arguments, then the n-th Hilbert series is returned as an intvec, where n = 1, 2 is the second argument.
  If a weight vector w is a given as 3rd argument, then the Hilbert series is computed w.r.t. these weights w (by default all weights are set to 1).
`Caution:`
  The last entry of the returned intvec is not part of the actual Hilbert series, but is used in the Hilbert driven standard basis computation (see stdhilb). (It is the minimum weight of the module generators or 0).
`Syntax:`
  `hilb (` intvec_expression `)`
`Type:`
  intvec
`Purpose:`
  computes the second Hilbert series from the first, i.e. if `bigintvec v=hilb(I,1);` then `hilb(v)` yields the same result as `hilb(I,2)`.
`Syntax:`
  `hilb (` ideal_expression`,` ring`,` string_expression `)`
  `hilb (` module_expression`,` ring`,` string_expression `)`
`Type:`
  none
`Purpose:`
  computes the (weighted) Hilbert series of the base ring R modulo the ideal, resp. R^k modulo the module, defined by the leading terms of the generators of the given ideal, resp. module.
  The series is stored as `poly` under the name give as string in the given ring.
`Note:`
  If the input is homogeneous w.r.t. the weights and a standard basis, the result is the (weighted) Hilbert series of the original ideal, resp. module.
`Example:`

        ring Qt=QQ,t,dp;
        ring R=32003,(x,y,z),dp;
        ideal i=x2,y2,z2;
        ideal s=std(i);
        hilb(s);
      ==> (-t6+3t4-3t2+1) / (1-t)^3
      ==> (t3+3t2+3t+1) / (1-t)^0
      ==> // dimension (affine) = 0
      ==> // degree (affine)  = 8
        hilb(s,1);
      ==> 1,0,-3,0,3,0,-1,0
        hilb(s,2);
      ==> 1,3,3,1,0
        intvec w=2,2,2;
        hilb(s,1,w);
      ==> 1,0,0,0,-3,0,0,0,3,0,0,0,-1,0
        hilb(s,Qt,"h");
        setring Qt;h;
      ==> -t6+3t4-3t2+1

See Hilbert function; ideal; intvec; module; std; stdhilb.

User manual for Singular version 4.4.1, 2025, generated by texi2html.