next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
CompleteIntersectionResolutions :: exteriorTorModule

exteriorTorModule -- Tor as a module over an exterior algebra or bigraded algebra

Synopsis

Description

If M,N are S-modules annihilated by the elements of the matrix ff = (f1..fc), and k is the residue field of S, then the script exteriorTorModule(f,M) returns TorS(M, k) as a module over an exterior algebra k<e1,...,ec>, where the ei have degree 1, while exteriorTorModule(f,M,N) returns TorS(M,N) as a module over a bigraded ring SE = S<e1,..,ec>, where the ei have degrees di,1, where di is the degree of fi. The module structure, in either case, is defined by the homotopies for the fi on the resolution of M, computed by the script makeHomotopies1.

The scripts call makeModule to compute a (non-minimal) presentation of this module.

From the description by matrix factorizations and the paper *** of Eisenbud, Peeva and Schreyer it follows that when M is a high syzygy and F is its resolution, then the presentation of Tor(M,S1/mm) always has generators in degrees 0,1, corresponding to the targets and sources of the stack of maps B(i), and that the resolution is componentwise linear in a suitable sense. In the following example, these facts are verified. The Tor module does NOT split into the direct sum of the submodules generated in degrees 0 and 1, however.

i1 : kk = ZZ/101

o1 = kk

o1 : QuotientRing
i2 : S = kk[a,b,c]

o2 = S

o2 : PolynomialRing
i3 : f = matrix"a4,b4,c4"

o3 = | a4 b4 c4 |

             1       3
o3 : Matrix S  <--- S
i4 : R = S/ideal f

o4 = R

o4 : QuotientRing
i5 : p = map(R,S)

o5 = map(R,S,{a, b, c})

o5 : RingMap R <--- S
i6 : M = coker map(R^2, R^{3:-1}, {{a,b,c},{b,c,a}})

o6 = cokernel | a b c |
              | b c a |

                            2
o6 : R-module, quotient of R
i7 : betti (FF =res( M, LengthLimit =>6))

            0 1 2 3 4  5  6
o7 = total: 2 3 4 6 9 13 18
         0: 2 3 . . .  .  .
         1: . . 1 . .  .  .
         2: . . 3 3 .  .  .
         3: . . . 3 3  .  .
         4: . . . . 3  3  .
         5: . . . . 3  9  6
         6: . . . . .  .  3
         7: . . . . .  1  9

o7 : BettiTally
i8 : MS = prune pushForward(p, coker FF.dd_6);
i9 : T = exteriorTorModule(f,MS);
i10 : betti T

              0   1
o10 = total: 84 252
          0: 13  39
          1: 33  99
          2: 29  87
          3:  9  27

o10 : BettiTally
i11 : betti res (PT = prune T)

              0  1  2   3   4
o11 = total: 31 55 87 127 175
          0: 13 24 39  58  81
          1: 18 31 48  69  94

o11 : BettiTally
i12 : ann PT

o12 = ideal(e e e )
             0 1 2

o12 : Ideal of kk[e , e , e ]
                   0   1   2
i13 : PT0 = image (inducedMap(PT,cover PT)* ((cover PT)_{0..12}));
i14 : PT1 = image (inducedMap(PT,cover PT)* ((cover PT)_{13..30}));
i15 : betti res prune PT0

              0  1  2  3  4
o15 = total: 13 24 39 58 81
          0: 13 24 39 58 81

o15 : BettiTally
i16 : betti res prune PT1

              0  1  2  3  4
o16 = total: 18 28 39 51 64
          1: 18 28 39 51 64

o16 : BettiTally
i17 : betti res prune PT

              0  1  2   3   4
o17 = total: 31 55 87 127 175
          0: 13 24 39  58  81
          1: 18 31 48  69  94

o17 : BettiTally

See also

Ways to use exteriorTorModule :