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

EisenbudShamashTotal -- Precursor complex of total Ext

Synopsis

Description

Assume that M is defined over a ring of the form Rbar = R/(f_0..f_{c-1}), a complete intersection, and that M has a finite free resolution G over R. In this case M has a free resolution F over Rbar whose dual, F^* is a finitely generated, Z-graded free module over a ring Sbar\cong kk[s_0..s_{c-1},gens Rbar], where the degrees of the s_i are {-2, -degree f_i}. This resolution is is constructed from the dual of G, together with the duals of the higher homotopies on G defined by Eisenbud.

The function returns the differentials d0:F^*_{even} \to F^*_{odd} and d1:F^*_{odd}\to F^*_{even}.

The maps d0,d1 form a matrix factorization of sum(c, i->s_i*f_i). The have the property that for any Rbar module N,

HH_1 chainComplex \{d0**N, d1**N\} = Ext^{even}_{Rbar}(M,N)

S^{{1,0}}**HH_1 chainComplex \{S^{{-2,0}}**d1**N, d0**N\} = Ext^{odd}_{Rbar}(M,N)

This is encoded in the script newExt

Option defaults: Check=>false Variables=>getSymbol "s", Grading =>2}

If Grading =>1, then a singly graded result is returned (just forgetting the honological grading.)

i1 : n = 3

o1 = 3
i2 : c = 2

o2 = 2
i3 : kk = ZZ/101

o3 = kk

o3 : QuotientRing
i4 : R = kk[x_0..x_(n-1)]

o4 = R

o4 : PolynomialRing
i5 : I = ideal(x_0^2, x_2^3)

             2   3
o5 = ideal (x , x )
             0   2

o5 : Ideal of R
i6 : ff = gens I

o6 = | x_0^2 x_2^3 |

             1       2
o6 : Matrix R  <--- R
i7 : Rbar = R/I

o7 = Rbar

o7 : QuotientRing
i8 : bar = map(Rbar, R)

o8 = map (Rbar, R, {x , x , x })
                     0   1   2

o8 : RingMap Rbar <--- R
i9 : Mbar = prune coker random(Rbar^1, Rbar^{-2})

o9 = cokernel | x_0x_1+24x_1^2+49x_0x_2+3x_1x_2+5x_2^2 |

                                  1
o9 : Rbar-module, quotient of Rbar
i10 : (d0,d1) = EisenbudShamashTotal(Mbar,Grading =>1)

o10 = ({-2} | x_0^2                                  0    
       {-2} | x_0x_1+24x_1^2+49x_0x_2+3x_1x_2+5x_2^2 30s_0
       {-3} | x_2^3                                  0    
       {-7} | 0                                      x_2^3
      -----------------------------------------------------------------------
      -s_1                                      0        |, {0}  |
      0                                         -s_1     |  {-4} |
      s_0                                       0        |  {-5} |
      37x_0x_1-21x_1^2-5x_0x_2+10x_1x_2-17x_2^2 -37x_0^2 |  {-5} |
      -----------------------------------------------------------------------
      s_0                                       0       
      37x_0x_1-21x_1^2-5x_0x_2+10x_1x_2-17x_2^2 -37x_0^2
      -x_2^3                                    0       
      0                                         -x_2^3  
      -----------------------------------------------------------------------
      s_1                                    0     |)
      0                                      s_1   |
      x_0^2                                  0     |
      x_0x_1+24x_1^2+49x_0x_2+3x_1x_2+5x_2^2 30s_0 |

o10 : Sequence
i11 : d0*d1

o11 = {-2} | s_1x_2^3+s_0x_0^2 0                 0                
      {-2} | 0                 s_1x_2^3+s_0x_0^2 0                
      {-3} | 0                 0                 s_1x_2^3+s_0x_0^2
      {-7} | 0                 0                 0                
      -----------------------------------------------------------------------
      0                 |
      0                 |
      0                 |
      s_1x_2^3+s_0x_0^2 |

                                 4                          4
o11 : Matrix (kk[s ..s , x ..x ])  <--- (kk[s ..s , x ..x ])
                  0   1   0   2              0   1   0   2
i12 : d1*d0

o12 = {0}  | s_1x_2^3+s_0x_0^2 0                 0                
      {-4} | 0                 s_1x_2^3+s_0x_0^2 0                
      {-5} | 0                 0                 s_1x_2^3+s_0x_0^2
      {-5} | 0                 0                 0                
      -----------------------------------------------------------------------
      0                 |
      0                 |
      0                 |
      s_1x_2^3+s_0x_0^2 |

                                 4                          4
o12 : Matrix (kk[s ..s , x ..x ])  <--- (kk[s ..s , x ..x ])
                  0   1   0   2              0   1   0   2
i13 : S = ring d0

o13 = S

o13 : PolynomialRing
i14 : phi = map(S,R)

o14 = map (S, R, {x , x , x })
                   0   1   2

o14 : RingMap S <--- R
i15 : IS = phi I

              2   3
o15 = ideal (x , x )
              0   2

o15 : Ideal of S
i16 : Sbar = S/IS

o16 = Sbar

o16 : QuotientRing
i17 : SMbar = Sbar**Mbar

o17 = cokernel | x_0x_1+24x_1^2+49x_0x_2+3x_1x_2+5x_2^2 |

                                   1
o17 : Sbar-module, quotient of Sbar

Hom(d0,Sbar) and Hom(d1,Sbar) together form the resolution of Mbar; thus the homology of one composition is 0, while the other is Mbar

i18 : prune HH_1 chainComplex{dual (Sbar**d0), dual(Sbar**d1)} == 0

o18 = true
i19 : Mbar' = Sbar^1/(Sbar_0, Sbar_1)**SMbar

o19 = cokernel | x_0x_1+24x_1^2+49x_0x_2+3x_1x_2+5x_2^2 s_0 s_1 |

                                   1
o19 : Sbar-module, quotient of Sbar
i20 : ideal presentation prune HH_1 chainComplex{dual (Sbar**d1), dual(Sbar**d0)} == ideal presentation Mbar'

o20 = true

See also

Ways to use EisenbudShamashTotal :

For the programmer

The object EisenbudShamashTotal is a method function with options.