Given a chain complex computed using res(I, FastNonminimal => true) (FastNonminimal), returns the minimal graded Betti numbers of this complex.
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) -- 5.07531 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 actual ranks of the complex. If the option Minimize => true is given, the minimal Betti numbers are returned.
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, to get 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.
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.