Macaulay2 » Documentation
Packages » Bruns :: bruns
next | previous | forward | backward | up | index | toc

# bruns -- Returns an ideal generated by three elements whose 2nd syzygy module is isomorphic to a given module

- Usage:
    `j= bruns M or j= bruns f`
- Inputs:
  - M, a module, a second syzygy (graded) module
  - f, a matrix, whose cokernel is a second syzygy (graded) module
- Outputs:
  - j, an ideal, a homogeneous ideal generated by three elements whose second syzygy module is isomorphic to M, or image f

## Description

This function takes a graded module M over a polynomial ring S that is a second syzygy, and returns a three-generator ideal j whose second syzygy is M, so that the resolution of S/j, from the third step, is isomorphic to the resolution of M. Alternately bruns takes a matrix whose cokernel is a second syzygy, and finds a 3-generator ideal whose second syzygy is the image of that matrix.

    i1 : kk=ZZ/32003

    o1 = kk

    o1 : QuotientRing

    i2 : S=kk[a..d]

    o2 = S

    o2 : PolynomialRing

    i3 : i=ideal(a^2,b^2,c^2, d^2)

                 2   2   2   2
    o3 = ideal (a , b , c , d )

    o3 : Ideal of S

    i4 : betti (F=res i)

                0 1 2 3 4
    o4 = total: 1 4 6 4 1
             0: 1 . . . .
             1: . 4 . . .
             2: . . 6 . .
             3: . . . 4 .
             4: . . . . 1

    o4 : BettiTally

    i5 : M = image F.dd_3

    o5 = image {4} | c2  d2  0   0   |
               {4} | -b2 0   d2  0   |
               {4} | a2  0   0   d2  |
               {4} | 0   -b2 -c2 0   |
               {4} | 0   a2  0   -c2 |
               {4} | 0   0   a2  b2  |

                                 6
    o5 : S-module, submodule of S

    i6 : f=F.dd_3

    o6 = {4} | c2  d2  0   0   |
         {4} | -b2 0   d2  0   |
         {4} | a2  0   0   d2  |
         {4} | 0   -b2 -c2 0   |
         {4} | 0   a2  0   -c2 |
         {4} | 0   0   a2  b2  |

                 6      4
    o6 : Matrix S  <-- S

    i7 : j=bruns M;

    o7 : Ideal of S

    i8 : betti res j -- the ideal has 3 generators

                0 1 2 3 4
    o8 = total: 1 3 5 4 1
             0: 1 . . . .
             1: . . . . .
             2: . . . . .
             3: . 3 . . .
             4: . . . . .
             5: . . . . .
             6: . . 5 . .
             7: . . . 4 .
             8: . . . . 1

    o8 : BettiTally

Here is a more complicated example, also involving a complete intersection. You can see that columns three and four in the two Betti diagrams are the same.

    i9 : kk=ZZ/32003

    o9 = kk

    o9 : QuotientRing

    i10 : S=kk[a..d]

    o10 = S

    o10 : PolynomialRing

    i11 : i=ideal(a^2,b^3,c^4, d^5)

                  2   3   4   5
    o11 = ideal (a , b , c , d )

    o11 : Ideal of S

    i12 : betti (F=res i)

                 0 1 2 3 4
    o12 = total: 1 4 6 4 1
              0: 1 . . . .
              1: . 1 . . .
              2: . 1 . . .
              3: . 1 1 . .
              4: . 1 1 . .
              5: . . 2 . .
              6: . . 1 1 .
              7: . . 1 1 .
              8: . . . 1 .
              9: . . . 1 .
             10: . . . . 1

    o12 : BettiTally

    i13 : M = image F.dd_3

    o13 = image {5} | c4  d5  0   0   |
                {6} | -b3 0   d5  0   |
                {7} | a2  0   0   d5  |
                {7} | 0   -b3 -c4 0   |
                {8} | 0   a2  0   -c4 |
                {9} | 0   0   a2  b3  |

                                  6
    o13 : S-module, submodule of S

    i14 : f=F.dd_3

    o14 = {5} | c4  d5  0   0   |
          {6} | -b3 0   d5  0   |
          {7} | a2  0   0   d5  |
          {7} | 0   -b3 -c4 0   |
          {8} | 0   a2  0   -c4 |
          {9} | 0   0   a2  b3  |

                  6      4
    o14 : Matrix S  <-- S

    i15 : j1=bruns f;

    o15 : Ideal of S

    i16 : betti res j1

                 0 1 2 3 4
    o16 = total: 1 3 5 4 1
              0: 1 . . . .
              1: . . . . .
              2: . . . . .
              3: . . . . .
              4: . . . . .
              5: . . . . .
              6: . . . . .
              7: . . . . .
              8: . 1 . . .
              9: . 2 . . .
             10: . . . . .
             11: . . . . .
             12: . . . . .
             13: . . . . .
             14: . . . . .
             15: . . 1 . .
             16: . . 1 . .
             17: . . 2 . .
             18: . . 1 1 .
             19: . . . 1 .
             20: . . . 1 .
             21: . . . 1 .
             22: . . . . 1

    o16 : BettiTally

    i17 : j=bruns M;

    o17 : Ideal of S

    i18 : betti res j

                 0 1 2 3 4
    o18 = total: 1 3 5 4 1
              0: 1 . . . .
              1: . . . . .
              2: . . . . .
              3: . . . . .
              4: . . . . .
              5: . . . . .
              6: . . . . .
              7: . . . . .
              8: . 1 . . .
              9: . 2 . . .
             10: . . . . .
             11: . . . . .
             12: . . . . .
             13: . . . . .
             14: . . . . .
             15: . . 1 . .
             16: . . 1 . .
             17: . . 2 . .
             18: . . 1 1 .
             19: . . . 1 .
             20: . . . 1 .
             21: . . . 1 .
             22: . . . . 1

    o18 : BettiTally

In the next example, we perform the "Brunsification" of a rational curve.

    i19 : kk=ZZ/32003

    o19 = kk

    o19 : QuotientRing

    i20 : S=kk[a..e]

    o20 = S

    o20 : PolynomialRing

    i21 : i=monomialCurveIdeal(S, {1,3,4,5})

                  2                    2                            2    3    2
    o21 = ideal (d  - c*e, b*d - a*e, c  - b*e, b*c - a*d, a*c*d - b e, b  - a c)

    o21 : Ideal of S

    i22 : betti (F=res i)

                 0 1 2 3 4
    o22 = total: 1 5 8 5 1
              0: 1 . . . .
              1: . 4 2 . .
              2: . 1 6 5 1

    o22 : BettiTally

    i23 : time j=bruns F.dd_3;
     -- used 0.232747s (cpu); 0.200005s (thread); 0s (gc)

    o23 : Ideal of S

    i24 : betti res j

                 0 1 2 3 4
    o24 = total: 1 3 6 5 1
              0: 1 . . . .
              1: . . . . .
              2: . . . . .
              3: . . . . .
              4: . 3 . . .
              5: . . . . .
              6: . . . . .
              7: . . 2 . .
              8: . . 4 5 1

    o24 : BettiTally

## See also

- brunsIdeal -- Returns an ideal generated by three elements whose 2nd syzygy module agrees with the given ideal

## Ways to use bruns:

- `bruns(Matrix)`
- `bruns(Module)`

## For the programmer

The object bruns is a method function.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/Bruns.m2:288:0.