next up previous contents
Next: codim standard basis [integer Up: Computing numerical information Previous: Computing numerical information

hilb tex2html_wrap_inline5387 standard basis tex2html_wrap_inline5389

Computes the Hilbert series of the module M presented by the given standard basis. By the theory of standard (Gröbner) bases, the Hilbert series of the module generated by the columns of the standard basis is the same as the Hilbert series of the monomial submodule of lead monomials of each column of the standard basis. Define the Hilbert series of a graded module M by:

defn1040

It turns out that tex2html_wrap_inline7449 can be written in two useful ways: First, tex2html_wrap_inline7451 , where Q(t) is a polynomial in t, and n is the number of variables in the polynomial ring. Q(t) is intimately linked with the graded betti numbers of the module M. Second, tex2html_wrap_inline7463 , where P(t) is a polynomial, and tex2html_wrap_inline7467 .

The output of hilb is

  1. the polynomial Q(t),
  2. the polynomial P(t),
  3. the codimension of M, i.e. tex2html_wrap_inline7475 ,
  4. the degree of M, i.e. P(1),
  5. the (sectional) genus of M. If tex2html_wrap_inline7483 , this is the arithmetic genus of M.

Some notes:

  1. The ring variables must all have weight 1, or the results mean very little.
  2. By using interrupts (see section 7.4), it is possible to stop a Hilbert series computation. It is not possible to then restart it, except at the beginning.
  3. If the Macaulay parameter ``verbose'' is set to true, then some feedback is given. Each time a new generator is considered, a ``.'' is displayed. Bear in mind that the process is not linear! The worst case is for each new element to take about twice as long as the last one (roughly). Usually, the process works nicely for less than 200 or so standard basis elements, and for more than 1000 generators it almost never works (at least in 30 or 40 variables). If you just need the codimension or degree, use the two commands below, since they work well on any (I think!) number of generators.

For example, for the rational quartic curve, j, in tex2html_wrap_inline5385 ,

%  putstd j
; 1
; 4
; c3-bd2
; bc-ad
; b3-a2c
; ac2-b2d

%  hilb j

;       1 t  0
;      -1 t  2
;      -3 t  3
;       4 t  4
;      -1 t  5

;       1 t  0
;       2 t  1
;       2 t  2
;      -1 t  3

; codimension = 2
; degree      = 4
; genus       = 0

In this example, tex2html_wrap_inline7491 , and tex2html_wrap_inline7493 .


next up previous contents
Next: codim standard basis [integer Up: Computing numerical information Previous: Computing numerical information

Sorin Popescu
Fri Feb 14 17:37:19 EST 1997