Macaulay2 » Documentation
Packages » Complexes :: yonedaMap'(ComplexMap)
next | previous | forward | backward | up | index | toc

yonedaMap'(ComplexMap) -- identifies the element of Ext corresponding to a map of free resolutions

Synopsis

Description

The module $\operatorname{Ext}^d_R(M,N)$ is constructed from a free resolution $F$ of $M$, \[ 0 \leftarrow M \leftarrow F_0 \leftarrow F_1 \leftarrow \dots \leftarrow F_d \leftarrow \ldots, \] by taking the homology of the complex $\operatorname{Hom}_R(F, N)$. An element of $\operatorname{Ext}^d_R(M,N)$ is represented by an element of $\operatorname{Hom}_R(F_d, N)$. Given a map $g$ extending a map of degree $-d$ from $F$ to the free resolution of $N$, this method returns the corresponding element in the Ext module.

We illustrate this method by choosing a random element in an Ext module, constructing the corresponding map $g$ between free resolutions.

i1 : S = ZZ/101[a..d]

o1 = S

o1 : PolynomialRing
i2 : I = ideal"a2,ab,ac,b3"

             2             3
o2 = ideal (a , a*b, a*c, b )

o2 : Ideal of S
i3 : E = Ext^1(I, S^1/I)

o3 = subquotient ({-3} | 0 a b 0 0 0 0 0  |, {-3} | -b a  0 0  0  0  0  ac ab a2 0  0  0  0  0  0  0  b3 0  0  |)
                  {-3} | 0 0 c a 0 0 0 b2 |  {-3} | -c 0  a 0  0  0  0  0  0  0  ac ab a2 0  0  0  0  0  b3 0  |
                  {-3} | 0 0 0 0 c b a 0  |  {-3} | 0  -c b 0  0  0  0  0  0  0  0  0  0  ac ab a2 0  0  0  b3 |
                  {-4} | 1 0 0 0 0 0 0 0  |  {-4} | 0  b2 0 -a ac ab a2 0  0  0  0  0  0  0  0  0  b3 0  0  0  |

                               4
o3 : S-module, subquotient of S
i4 : B = basis(0, E)

o4 = {-4} | bc3 bc2d bcd2 bd3 c4 c3d c2d2 cd3 d4 0  0  0  0  0  0  0 |
     {-2} | 0   0    0    0   0  0   0    0   0  d2 0  0  0  0  0  0 |
     {-2} | 0   0    0    0   0  0   0    0   0  0  0  0  0  0  0  0 |
     {-2} | 0   0    0    0   0  0   0    0   0  0  d2 0  0  0  0  0 |
     {-2} | 0   0    0    0   0  0   0    0   0  0  0  c2 cd d2 0  0 |
     {-2} | 0   0    0    0   0  0   0    0   0  0  0  0  0  0  0  0 |
     {-2} | 0   0    0    0   0  0   0    0   0  0  0  0  0  0  d2 0 |
     {-1} | 0   0    0    0   0  0   0    0   0  0  0  0  0  0  0  d |

                   16
o4 : Matrix E <-- S
i5 : f0 = B * random(S^16, S^1)

o5 = {-4} | 24bc3+19c4-36bc2d+19c3d-30bcd2-10c2d2-29bd3-29cd3-8d4 |
     {-2} | -22d2                                                 |
     {-2} | 0                                                     |
     {-2} | -29d2                                                 |
     {-2} | -24c2-38cd-16d2                                       |
     {-2} | 0                                                     |
     {-2} | 39d2                                                  |
     {-1} | 21d                                                   |

                   1
o5 : Matrix E <-- S
i6 : g = yonedaMap f0

          1                                                                                                            4
o6 = 0 : S  <-------------------------------------------------------------------------------------------------------- S  : 1
               | -22ad2 21b2d-29ad2 -24c3-38c2d+39ad2-16cd2 24bc3+19c4-36bc2d+19c3d-30bcd2-10c2d2-29bd3-29cd3-8d4 |

          4                              1
     1 : S  <-------------------------- S  : 2
               {2} | -39d2          |
               {2} | -29d2          |
               {2} | 24c2+38cd+38d2 |
               {3} | 21d            |

o6 : ComplexMap
i7 : assert(degree g === -1)
i8 : f = yonedaMap' g

o8 = {-4} | 24bc3+19c4-36bc2d+19c3d-30bcd2-10c2d2-29bd3-29cd3-8d4 |
     {-2} | -22d2                                                 |
     {-2} | 0                                                     |
     {-2} | -29d2                                                 |
     {-2} | -24c2-38cd-16d2                                       |
     {-2} | 0                                                     |
     {-2} | 39d2                                                  |
     {-1} | 21d                                                   |

                   1
o8 : Matrix E <-- S
i9 : assert isWellDefined f
i10 : assert(degree f == {0})
i11 : assert isHomogeneous f
i12 : source f === S^1

o12 = true
i13 : target f === E

o13 = true
i14 : assert(f == f0)

The method yonedaMap' is only a one-sided inverse to yonedaMap.

i15 : R = ZZ/101[x,y,z]/(y^2*z-x*(x-z)*(x-2*z));
i16 : M = image vars R

o16 = image | x y z |

                              1
o16 : R-module, submodule of R
i17 : B = basis(-4, Ext^3(M, M))

o17 = {-4} | 0 0 0 |
      {-4} | 0 0 0 |
      {-4} | 1 0 0 |
      {-4} | 0 0 0 |
      {-4} | 0 1 0 |
      {-4} | 0 0 1 |
      {-3} | 0 0 0 |
      {-3} | 0 0 0 |
      {-3} | 0 0 0 |
      {-3} | 0 0 0 |
      {-3} | 0 0 0 |
      {-3} | 0 0 0 |
      {-3} | 0 0 0 |
      {-3} | 0 0 0 |
      {-3} | 0 0 0 |
      {-3} | 0 0 0 |

o17 : Matrix
i18 : f0 = B_{2}

o18 = {-4} | 0 |
      {-4} | 0 |
      {-4} | 0 |
      {-4} | 0 |
      {-4} | 0 |
      {-4} | 1 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |

o18 : Matrix
i19 : g = yonedaMap(f0, LengthLimit => 8)

           3                       4
o19 = 0 : R  <------------------- R  : 3
                {1} | 0 0 1 0 |
                {1} | 1 0 0 0 |
                {1} | 0 0 0 0 |

           4                        4
      1 : R  <-------------------- R  : 4
                {2} | 1 0 0  0 |
                {2} | 0 0 0  0 |
                {2} | 0 0 0  0 |
                {3} | 0 0 -1 0 |

           4                       4
      2 : R  <------------------- R  : 5
                {3} | 0 0 0 0 |
                {4} | 1 0 0 0 |
                {4} | 0 0 0 0 |
                {4} | 0 0 1 0 |

           4                        4
      3 : R  <-------------------- R  : 6
                {5} | 0 0 0  0 |
                {5} | 1 0 0  0 |
                {5} | 0 0 0  0 |
                {6} | 0 0 -1 0 |

           4                       4
      4 : R  <------------------- R  : 7
                {6} | 0 0 0 0 |
                {7} | 1 0 0 0 |
                {7} | 0 0 0 0 |
                {7} | 0 0 1 0 |

           4                        4
      5 : R  <-------------------- R  : 8
                {8} | 0 0 0  0 |
                {8} | 1 0 0  0 |
                {8} | 0 0 0  0 |
                {9} | 0 0 -1 0 |

o19 : ComplexMap
i20 : f = yonedaMap' g

o20 = {-4} | 0 |
      {-4} | 0 |
      {-4} | 0 |
      {-4} | 0 |
      {-4} | 0 |
      {-4} | 1 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |
      {-3} | 0 |

o20 : Matrix
i21 : assert isWellDefined f
i22 : assert isHomogeneous f
i23 : assert(degree f === {-4})
i24 : assert(f != f0)
i25 : assert(yonedaMap(f, LengthLimit => 8) == g)

See also

Ways to use this method: