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

exteriorTorModule -- Homology of a complex **k as a module over an exterior algebra

Synopsis

Description

Suppose that F is a minimal complex over a ring S with residue field k, and that multiplication by the elements of f are null-homotopic on F. This script calls makeHomotopies1 to compute homotopies for multiplication by the fi on F. This makes F a homotopy associative, homotopy commutative graded module over the Koszul complex of f. Thus F**k is a module over Λ(klength f).

The script calls makeModule to compute a (non-minimal) presentation of this module. From the description by matrix factorizations we see 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). We CONJECTURE that the relations are all in degrees 1,2, 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 : betti(F = res MS)

             0  1  2 3
o9 = total: 13 33 29 9
         9:  3  .  . .
        10:  9  6  . .
        11:  .  3  . .
        12:  1 15  . .
        13:  .  9  8 .
        14:  .  .  6 .
        15:  .  . 12 .
        16:  .  .  3 3
        17:  .  .  . 3
        18:  .  .  . 3

o9 : BettiTally
i10 : T = exteriorTorModule(f,F);
         0   1   2  3  4  5  6  7  8  9 10
total: 231 175 127 87 55 31 16 13 25 49 81
   -6: 123  94  69 48 31 18  9  4  3  3  3
   -5: 108  81  58 39 24 13  6  3  .  .  .
   -4:   .   .   .  .  .  .  .  .  7 18 33
   -3:   .   .   .  .  .  .  1  6 15 28 45
i11 : betti T

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

o11 : BettiTally
i12 : betti res (PT = prune T)

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

o12 : BettiTally
i13 : ann PT

o13 = ideal(e e e )
             0 1 2

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

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

o16 : BettiTally
i17 : betti res prune PT1

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

o17 : BettiTally
i18 : betti res prune PT

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

o18 : BettiTally

See also

  • makeModule -- realize a free module with (anti)-commuting operators as a module

Ways to use exteriorTorModule :

  • exteriorTorModule(Matrix,ChainComplex)