next | previous | forward | backward | up | top | index | toc | Macaulay2 website
CompleteIntersectionResolutions :: Shamash

Shamash -- Computes the Shamash Complex

Synopsis

Description

Let R = ring F = ring ff, and Rbar = R/(ideal f), where ff = matrix{{f}} is a 1x1 matrix whose entry is a nonzerodivisor in R. The complex F should admit a system of higher homotopies for the entry of ff, returned by the call makeHomotopies(ff,F).

The complex FF has terms

FF_{2*i} = Rbar**(F_0 ++ F_2 ++ .. ++ F_i)

FF_{2*i+1} = Rbar**(F_1 ++ F_3 ++..++F_{2*i+1})

and maps made from the higher homotopies.

For the case of a complete intersection of higher codimension, or to see the components of the resolution as summands of FF_j, use the routine EisenbudShamash instead.

i1 : S = ZZ/101[x,y,z]

o1 = S

o1 : PolynomialRing
i2 : R = S/ideal"x3,y3"

o2 = R

o2 : QuotientRing
i3 : M = R^1/ideal(x,y,z)

o3 = cokernel | x y z |

                            1
o3 : R-module, quotient of R
i4 : F = res M

      1      3      5      7      9
o4 = R  <-- R  <-- R  <-- R  <-- R
                                  
     0      1      2      3      4

o4 : ChainComplex
i5 : ff = matrix{{z^3}}

o5 = | z3 |

             1       1
o5 : Matrix R  <--- R
i6 : R1 = R/ideal ff

o6 = R1

o6 : QuotientRing
i7 : betti F

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

o7 : BettiTally
i8 : FF = Shamash(ff,F,4)

     / R\1     / R\3     / R\6     / R\10     / R\15
o8 = |--|  <-- |--|  <-- |--|  <-- |--|   <-- |--|
     | 3|      | 3|      | 3|      | 3|       | 3|
     \z /      \z /      \z /      \z /       \z /
                                               
     0         1         2         3          4

o8 : ChainComplex
i9 : GG = Shamash(R1,F,4)

       1       3       6       10       15
o9 = R1  <-- R1  <-- R1  <-- R1   <-- R1
                                       
     0       1       2       3        4

o9 : ChainComplex
i10 : betti FF

             0 1 2  3  4
o10 = total: 1 3 6 10 15
          0: 1 3 3  1  .
          1: . . 3  9  9
          2: . . .  .  6

o10 : BettiTally
i11 : betti GG

             0 1 2  3  4
o11 = total: 1 3 6 10 15
          0: 1 3 3  1  .
          1: . . 3  9  9
          2: . . .  .  6

o11 : BettiTally
i12 : ring GG

o12 = R1

o12 : QuotientRing
i13 : apply(length GG, i->prune HH_i FF)

o13 = {cokernel | z y x |, 0, 0, 0}

o13 : List

Caveat

F is assumed to be a homological complex starting from F_0. The matrix ff must be 1x1.

See also

Ways to use Shamash :

For the programmer

The object Shamash is a method function.