next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
TateOnProducts :: upperCorner

upperCorner -- compute the upper corner

Synopsis

Description

Let k = -|d| be the total degree and G ⊂Fk the summand spanned by the generators of Fk in degree d, H ⊂Fk-1 the summand spanned by generators of degree d’ with 0 ≤d’-d ≤n. The function returns the corresponding submatrix m: G -> H of the differential.

So the source will be generated in a single degree, and the target will be generated in multiple degrees. The names comes from the fact that when we resolve this map, this map creates the "upper corner" in the corner complex.

i1 : n={1,2}; kk=ZZ/101; (S,E)=setupRings(kk,n);
i4 : F=dual res((ker transpose vars E)**E^{{ 2,3}},LengthLimit=>4)

      70      35      15      5      1
o4 = E   <-- E   <-- E   <-- E  <-- E
                                     
     -4      -3      -2      -1     0

o4 : ChainComplex
i5 : cohomologyTable(F,-{3,3},{4,4})

o5 = | 0 0 0 15 0  0  0  0 |
     | 0 0 0 10 20 0  0  0 |
     | 0 0 0 6  12 18 0  0 |
     | 0 0 0 3  6  9  12 0 |
     | 0 0 0 1  2  3  4  5 |
     | 0 0 0 0  0  0  0  0 |
     | 0 0 0 0  0  0  0  0 |
     | 0 0 0 0  0  0  0  0 |

                      8                8
o5 : Matrix (ZZ[h, k])  <--- (ZZ[h, k])
i6 : betti F

            -4 -3 -2 -1 0
o6 = total: 70 35 15  5 1
         0: 70 35 15  5 1

o6 : BettiTally
i7 : tallyDegrees F

o7 = (Tally{{-1, -3} => 20}, Tally{{-1, -2} => 12}, Tally{{-1, -1} => 6},
            {-2, -2} => 18         {-2, -1} => 9          {-2, 0} => 3   
            {-3, -1} => 12         {-3, 0} => 4           {0, -2} => 6
            {-4, 0} => 5           {0, -3} => 10
            {0, -4} => 15
     ------------------------------------------------------------------------
     Tally{{-1, 0} => 2}, Tally{{0, 0} => 1})
           {0, -1} => 3

o7 : Sequence
i8 : deg={2,1}

o8 = {2, 1}

o8 : List
i9 : m=upperCorner(F,deg);

             30       9
o9 : Matrix E   <--- E
i10 : tally degrees target m, tally degrees source m

o10 = (Tally{{-2, -2} => 18}, Tally{{-2, -1} => 9})
             {-3, -1} => 12

o10 : Sequence
i11 : Fm=(res(coker m,LengthLimit=>4))[sum deg+1]

       30      9      2      3      8
o11 = E   <-- E  <-- E  <-- E  <-- E
                                    
      -4      -3     -2     -1     0

o11 : ChainComplex
i12 : betti Fm

             -4 -3 -2 -1 0
o12 = total: 30  9  2  3 8
          0: 30  9  .  . .
          1:  .  .  2  1 .
          2:  .  .  .  . 1
          3:  .  .  .  2 7

o12 : BettiTally
i13 : cohomologyTable(Fm,-{3,3},{4,4})

o13 = | 0 0  0 0  0   0  0  0 |
      | 0 0  0 0  0   0  0  0 |
      | 0 0  0 0  0   18 0  0 |
      | 0 0  0 0  0   9  12 0 |
      | 0 h2 0 h  2h  0  0  0 |
      | 0 0  0 0  0   0  0  0 |
      | 0 0  0 0  0   0  0  0 |
      | 0 0  0 h3 2h3 0  0  0 |

                       8                8
o13 : Matrix (ZZ[h, k])  <--- (ZZ[h, k])

Ways to use upperCorner :