next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
Macaulay2Doc :: betti(..., Minimize => ...)

betti(..., Minimize => ...) -- minimal betti numbers of a non-minimal free resolution

Synopsis

Description

Given a chain complex computed using res(I, FastNonminimal => true) (FastNonminimal), returns the minimal graded Betti numbers of this complex.

To get the actual betti numbers of the non-minimal resolution, use betti.

If you simply want the minimal betti numbers of a module or ideal I, use minimalBetti.

i1 : I = Grassmannian(1,6, CoefficientRing => ZZ/101);

               ZZ
o1 : Ideal of ---[p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   , p   ]
              101  0,1   0,2   1,2   0,3   1,3   2,3   0,4   1,4   2,4   3,4   0,5   1,5   2,5   3,5   4,5   0,6   1,6   2,6   3,6   4,6   5,6
i2 : S = ring I

o2 = S

o2 : PolynomialRing
i3 : elapsedTime C = res(I, FastNonminimal => true)
     -- 8.49799 seconds elapsed

      1      35      241      841      1781      2464      2294      1432      576      135      14
o3 = S  <-- S   <-- S    <-- S    <-- S     <-- S     <-- S     <-- S     <-- S    <-- S    <-- S   <-- 0
                                                                                                         
     0      1       2        3        4         5         6         7         8        9        10      11

o3 : ChainComplex

For a non-minimal resolution, betti gives the minimal Betti numbers, while nonminimalBetti (missing documentation) gives the actual ranks of the complex.

i4 : betti C

            0  1   2   3    4    5    6    7   8   9 10
o4 = total: 1 35 241 841 1781 2464 2294 1432 576 135 14
         0: 1  .   .   .    .    .    .    .   .   .  .
         1: . 35 140 290  402  402  293  152  53  11  1
         2: .  . 101 514 1174 1577 1365  780 287  62  6
         3: .  .   .  37  204  479  621  480 221  56  6
         4: .  .   .   .    1    6   15   20  15   6  1

o4 : BettiTally
i5 : betti(C, Minimize=>true)

            0  1   2   3   4    5   6   7   8  9 10
o5 = total: 1 35 140 385 819 1080 819 385 140 35  1
         0: 1  .   .   .   .    .   .   .   .  .  .
         1: . 35 140 189  84    .   .   .   .  .  .
         2: .  .   . 196 735 1080 735 196   .  .  .
         3: .  .   .   .   .    .  84 189 140 35  .
         4: .  .   .   .   .    .   .   .   .  .  1

o5 : BettiTally

This command is useful if the non-minimal free resolution has already been computed. However, as mentioned above, if one wants the minimal betti numbers of an ideal or module, it is recommended to use the function minimalBetti as that avoids much computation, and allows the use of length and degree limits.

Further information

Caveat

Released in M2 1.9, still experimental. Only works over finite prime field. If the complex is the resolution of a non-homogeneous or multi-homogeneous object, then this function will result in an error.

See also