next | previous | forward | backward | up | top | index | toc | Macaulay2 website
Complexes :: ComplexMap ** ComplexMap

ComplexMap ** ComplexMap -- the map of complexes between tensor complexes

Synopsis

Description

The maps $f : C \to D$ and $g : E \to F$ of chain complexes induces the map $h = f \otimes g : C \otimes E \to D \otimes F$ defined by $c \otimes e \mapsto f(c) \otimes g(e)$.

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

o1 = S

o1 : PolynomialRing
i2 : C = freeResolution coker vars S

      1      3      3      1
o2 = S  <-- S  <-- S  <-- S
                           
     0      1      2      3

o2 : Complex
i3 : D = (freeResolution coker matrix{{a^2,a*b,b^3}})[-1]

      1      3      2
o3 = S  <-- S  <-- S
                    
     1      2      3

o3 : Complex
i4 : f = randomComplexMap(D,C)

                   1
o4 = 0 : 0 <----- S  : 0
              0

          1                                                3
     1 : S  <-------------------------------------------- S  : 1
               | 24a-36b-30c -29a+19b+19c -10a-29b-8c |

          3                           3
     2 : S  <----------------------- S  : 2
               {2} | -22 -24 -16 |
               {2} | -29 -38 39  |
               {3} | 0   0   0   |

          2                  1
     3 : S  <-------------- S  : 3
               {3} | 21 |
               {4} | 0  |

o4 : ComplexMap
i5 : E = (dual C)[-3]

      1      3      3      1
o5 = S  <-- S  <-- S  <-- S
                           
     0      1      2      3

o5 : Complex
i6 : F = (dual D)[-3]

      2      3      1
o6 = S  <-- S  <-- S
                    
     0      1      2

o6 : Complex
i7 : g = randomComplexMap(F,E)

          2                            1
o7 = 0 : S  <------------------------ S  : 0
               {-3} | 34          |
               {-4} | 19a-47b-39c |

          3                                                     3
     1 : S  <------------------------------------------------- S  : 1
               {-2} | -18          -47        45           |
               {-2} | -13          38         -34          |
               {-3} | -43a-15b-28c 2a+16b+22c -48a-47b+47c |

          1         3
     2 : S  <----- S  : 2
               0

                   1
     3 : 0 <----- S  : 3
              0

o7 : ComplexMap
i8 : h = f ** g

                   1
o8 = 0 : 0 <----- S  : 0
              0

          2                                                                                                             6
     1 : S  <--------------------------------------------------------------------------------------------------------- S  : 1
               {-3} | 0 0 0 8a-12b-10c                   24a+40b+40c                   -37a+24b+31c                |
               {-4} | 0 0 0 -49a2+6ab-25b2+9ac-14bc-42c2 -46a2+7ab+16b2-23ac-18bc-34c2 12a2+20ab+50b2+36ac-8bc+9c2 |

          9                                                                                                                                                                                                                                                                                                                                 15
     2 : S  <----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- S   : 2
               {-2} | 0 0 0 -28a+42b+35c                   -17a-25b-4c                  -31a-4b-37c                  17a-39b-39c                 50a+16b+16c                8a+47b+47c                -22a+17b+43c                  -35a+50b-28c                   -46a+8b+44c                    0            0            0          |
               {-2} | 0 0 0 -9a-37b-14c                    3a+46b-29c                   -8a+12b+10c                  -27a-45b-45c                9a+15b+15c                 -24a-40b-40c              29a-27b+3c                    24a+9b-c                       37a-24b-31c                    0            0            0          |
               {-3} | 0 0 0 -22a2-24ab+35b2+12ac+44bc+32c2 48a2+9ab+30b2-37ac+41bc+47c2 -41a2-6ab-25b2+43ac+21bc+4c2 35a2+22ab+18b2-5ac-9bc-27c2 43a2-22ab+b2+6ac+15bc+14c2 -22a2+47ab+16b2+48ac-16c2 26a2-17ab+31b2+18ac+23bc+22c2 -20a2-16ab+41b2-34ac+42bc+26c2 -25a2+44ab+50b2+15ac+23bc+28c2 0            0            0          |
               {-1} | 0 0 0 0                              0                            0                            0                           0                          0                         0                             0                              0                              -41          -8           -39        |
               {-2} | 0 0 0 0                              0                            0                            0                           0                          0                         0                             0                              0                              -14a+24b+50c 49a+17b+27c  -a+45b+18c |
               {-1} | 0 0 0 0                              0                            0                            0                           0                          0                         0                             0                              0                              24           21           13         |
               {-2} | 0 0 0 0                              0                            0                            0                           0                          0                         0                             0                              0                              -46a+50b+20c -15a-32b-33c 34a-15b-6c |
               {0}  | 0 0 0 0                              0                            0                            0                           0                          0                         0                             0                              0                              0            0            0          |
               {-1} | 0 0 0 0                              0                            0                            0                           0                          0                         0                             0                              0                              0            0            0          |

          14                                                                                                                                                                  20
     3 : S   <-------------------------------------------------------------------------------------------------------------------------------------------------------------- S   : 3
                {0}  | 0 0 0 0 0 0 0 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          24           20           28          17           31          -15          45           -13          0           |
                {0}  | 0 0 0 0 0 0 0 0 0 0 -17         -28          41           9           -3           8           6            -2           39           0           |
                {-1} | 0 0 0 0 0 0 0 0 0 0 37a+27b+10c -44a-49b+21c 46a+24b-24c  22a-44b-35c -48a+20b-23c 41a+17b-17c -19a+38b+44c -32a+47b-49c -40a+45b-45c 0           |
                {0}  | 0 0 0 0 0 0 0 0 0 0 17          50           8            -23         -32          7           5            -15          38           0           |
                {0}  | 0 0 0 0 0 0 0 0 0 0 -27         9            -24          -11         -30          -21         -2           -33          -13          0           |
                {-1} | 0 0 0 0 0 0 0 0 0 0 35a+31b+4c  43a+41b-32c  -22a+50b-50c 18a-36b-47c 25a-2b-28c   6a-32b+32c  40a+21b+19c  -23a+18b+50c 47a-15b+15c  0           |
                {1}  | 0 0 0 0 0 0 0 0 0 0 0           0            0            0           0            0           0            0            0            0           |
                {1}  | 0 0 0 0 0 0 0 0 0 0 0           0            0            0           0            0           0            0            0            0           |
                {0}  | 0 0 0 0 0 0 0 0 0 0 0           0            0            0           0            0           0            0            0            0           |
                {0}  | 0 0 0 0 0 0 0 0 0 0 0           0            0            0           0            0           0            0            0            7           |
                {-1} | 0 0 0 0 0 0 0 0 0 0 0           0            0            0           0            0           0            0            0            -5a+23b-11c |
                {1}  | 0 0 0 0 0 0 0 0 0 0 0           0            0            0           0            0           0            0            0            0           |
                {0}  | 0 0 0 0 0 0 0 0 0 0 0           0            0            0           0            0           0            0            0            0           |

          9                                                                         15
     4 : S  <--------------------------------------------------------------------- S   : 4
               {2} | 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           0          |
               {3} | 0 0 0 0 0 0 0 0 0 0 0 0 0          0           0          |
               {1} | 0 0 0 0 0 0 0 0 0 0 0 0 26         23          36         |
               {1} | 0 0 0 0 0 0 0 0 0 0 0 0 30         -10         -7         |
               {0} | 0 0 0 0 0 0 0 0 0 0 0 0 6a-12b+18c 42a+33b-43c 2a+23b-23c |
               {2} | 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           0          |
               {1} | 0 0 0 0 0 0 0 0 0 0 0 0 0          0           0          |

          2         6
     5 : S  <----- S  : 5
               0

                   1
     6 : 0 <----- S  : 6
              0

o8 : ComplexMap
i9 : assert isWellDefined h
i10 : assert(source h === C ** E)
i11 : assert(target h === D ** F)

If one argument is a Complex or Module, then the identity map of the corresponding complex is used.

i12 : fE = f ** E

                    1
o12 = 0 : 0 <----- S  : 0
               0

           1                                                           6
      1 : S  <------------------------------------------------------- S  : 1
                {-3} | 0 0 0 24a-36b-30c -29a+19b+19c -10a-29b-8c |

           6                                                                                                                                                 15
      2 : S  <--------------------------------------------------------------------------------------------------------------------------------------------- S   : 2
                {-2} | 0 0 0 24a-36b-30c 0           0           -29a+19b+19c 0            0            -10a-29b-8c 0           0           0   0   0   |
                {-2} | 0 0 0 0           24a-36b-30c 0           0            -29a+19b+19c 0            0           -10a-29b-8c 0           0   0   0   |
                {-2} | 0 0 0 0           0           24a-36b-30c 0            0            -29a+19b+19c 0           0           -10a-29b-8c 0   0   0   |
                {-1} | 0 0 0 0           0           0           0            0            0            0           0           0           -22 -24 -16 |
                {-1} | 0 0 0 0           0           0           0            0            0            0           0           0           -29 -38 39  |
                {0}  | 0 0 0 0           0           0           0            0            0            0           0           0           0   0   0   |

           14                                                                                                                                                                        20
      3 : S   <-------------------------------------------------------------------------------------------------------------------------------------------------------------------- S   : 3
                 {-1} | 0 24a-36b-30c 0           0           -29a+19b+19c 0            0            -10a-29b-8c 0           0           0   0   0   0   0   0   0   0   0   0  |
                 {-1} | 0 0           24a-36b-30c 0           0            -29a+19b+19c 0            0           -10a-29b-8c 0           0   0   0   0   0   0   0   0   0   0  |
                 {-1} | 0 0           0           24a-36b-30c 0            0            -29a+19b+19c 0           0           -10a-29b-8c 0   0   0   0   0   0   0   0   0   0  |
                 {0}  | 0 0           0           0           0            0            0            0           0           0           -22 0   0   -24 0   0   -16 0   0   0  |
                 {0}  | 0 0           0           0           0            0            0            0           0           0           0   -22 0   0   -24 0   0   -16 0   0  |
                 {0}  | 0 0           0           0           0            0            0            0           0           0           0   0   -22 0   0   -24 0   0   -16 0  |
                 {0}  | 0 0           0           0           0            0            0            0           0           0           -29 0   0   -38 0   0   39  0   0   0  |
                 {0}  | 0 0           0           0           0            0            0            0           0           0           0   -29 0   0   -38 0   0   39  0   0  |
                 {0}  | 0 0           0           0           0            0            0            0           0           0           0   0   -29 0   0   -38 0   0   39  0  |
                 {1}  | 0 0           0           0           0            0            0            0           0           0           0   0   0   0   0   0   0   0   0   0  |
                 {1}  | 0 0           0           0           0            0            0            0           0           0           0   0   0   0   0   0   0   0   0   0  |
                 {1}  | 0 0           0           0           0            0            0            0           0           0           0   0   0   0   0   0   0   0   0   0  |
                 {0}  | 0 0           0           0           0            0            0            0           0           0           0   0   0   0   0   0   0   0   0   21 |
                 {1}  | 0 0           0           0           0            0            0            0           0           0           0   0   0   0   0   0   0   0   0   0  |

           16                                                                                                 15
      4 : S   <--------------------------------------------------------------------------------------------- S   : 4
                 {0} | 24a-36b-30c -29a+19b+19c -10a-29b-8c 0   0   0   0   0   0   0   0   0   0  0  0  |
                 {1} | 0           0            0           -22 0   0   -24 0   0   -16 0   0   0  0  0  |
                 {1} | 0           0            0           0   -22 0   0   -24 0   0   -16 0   0  0  0  |
                 {1} | 0           0            0           0   0   -22 0   0   -24 0   0   -16 0  0  0  |
                 {1} | 0           0            0           -29 0   0   -38 0   0   39  0   0   0  0  0  |
                 {1} | 0           0            0           0   -29 0   0   -38 0   0   39  0   0  0  0  |
                 {1} | 0           0            0           0   0   -29 0   0   -38 0   0   39  0  0  0  |
                 {2} | 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  0  |
                 {2} | 0           0            0           0   0   0   0   0   0   0   0   0   0  0  0  |
                 {1} | 0           0            0           0   0   0   0   0   0   0   0   0   21 0  0  |
                 {1} | 0           0            0           0   0   0   0   0   0   0   0   0   0  21 0  |
                 {1} | 0           0            0           0   0   0   0   0   0   0   0   0   0  0  21 |
                 {2} | 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  0  |
                 {2} | 0           0            0           0   0   0   0   0   0   0   0   0   0  0  0  |

           9                                    6
      5 : S  <-------------------------------- S  : 5
                {2} | -22 -24 -16 0  0  0  |
                {2} | -29 -38 39  0  0  0  |
                {3} | 0   0   0   0  0  0  |
                {2} | 0   0   0   21 0  0  |
                {2} | 0   0   0   0  21 0  |
                {2} | 0   0   0   0  0  21 |
                {3} | 0   0   0   0  0  0  |
                {3} | 0   0   0   0  0  0  |
                {3} | 0   0   0   0  0  0  |

           2                  1
      6 : S  <-------------- S  : 6
                {3} | 21 |
                {4} | 0  |

o12 : ComplexMap
i13 : assert(fE === f ** id_E)
i14 : k = coker vars S

o14 = cokernel | a b c |

                             1
o14 : S-module, quotient of S
i15 : gk = g ** k

o15 = 0 : cokernel {-3} | a b c 0 0 0 | <--------------- cokernel {-3} | a b c | : 0
                   {-4} | 0 0 0 a b c |    {-3} | 34 |
                                           {-4} | 0  |

      1 : cokernel {-2} | a b c 0 0 0 0 0 0 | <------------------------ cokernel {-2} | a b c 0 0 0 0 0 0 | : 1
                   {-2} | 0 0 0 a b c 0 0 0 |    {-2} | -18 -47 45  |            {-2} | 0 0 0 a b c 0 0 0 |
                   {-3} | 0 0 0 0 0 0 a b c |    {-2} | -13 38  -34 |            {-2} | 0 0 0 0 0 0 a b c |
                                                 {-3} | 0   0   0   |

      2 : cokernel | a b c | <----- cokernel {-1} | a b c 0 0 0 0 0 0 | : 2
                                0            {-1} | 0 0 0 a b c 0 0 0 |
                                             {-1} | 0 0 0 0 0 0 a b c |

      3 : 0 <----- cokernel | a b c | : 3
               0

o15 : ComplexMap
i16 : assert(gk == g ** id_(complex k))

This routine is functorial.

i17 : D' = (freeResolution coker matrix{{a^2,a*b,c^3}})[-1]

       1      3      3      1
o17 = S  <-- S  <-- S  <-- S
                            
      1      2      3      4

o17 : Complex
i18 : f' = randomComplexMap(D', D)

           1              1
o18 = 1 : S  <---------- S  : 1
                | 19 |

           3                                    3
      2 : S  <-------------------------------- S  : 2
                {2} | -16 15  39a+43b-17c  |
                {2} | 7   -23 -11a+48b+36c |
                {3} | 0   0   35           |

           3                               2
      3 : S  <--------------------------- S  : 3
                {3} | 11 -38a+33b+40c |
                {5} | 0  0            |
                {5} | 0  0            |

o18 : ComplexMap
i19 : (f' * f) ** g == (f' ** g) * (f ** id_E)

o19 = true
i20 : (f' * f) ** g == (f' ** id_F) * (f ** g)

o20 = true
i21 : F' = dual (freeResolution coker matrix{{a^2,a*b,a*c,b^3}})[-3]

       1      4      4      1
o21 = S  <-- S  <-- S  <-- S
                            
      0      1      2      3

o21 : Complex
i22 : g' = randomComplexMap(F', F)

           1                              2
o22 = 0 : S  <-------------------------- S  : 0
                {-4} | 11a+46b-28c 1 |

           4                                                                                     3
      1 : S  <--------------------------------------------------------------------------------- S  : 1
                {-3} | -3a+22b-47c                    27a-22b+32c               -19         |
                {-3} | -23a-7b+2c                     -9a-32b-20c               17          |
                {-3} | 29a-47b+15c                    24a-30b-48c               -20         |
                {-4} | -37a2-13ab+30b2-10ac-18bc+39c2 -15a2+39ab+33b2-49bc-33c2 44a-39b+36c |

           4                                                                     1
      2 : S  <----------------------------------------------------------------- S  : 2
                {-2} | 9a2-39ab+13b2+4ac-26bc+22c2                          |
                {-2} | -49a2-11ab+43b2-8ac-8bc+36c2                         |
                {-2} | -3a2-22ab+41b2-30ac+16bc-28c2                        |
                {-3} | -6a3+35a2b-35ab2+3b3-9a2c+6abc-31b2c+40ac2+25bc2-2c3 |

o22 : ComplexMap
i23 : f ** (g' * g) == (f ** g') * (id_C ** g)

o23 = true
i24 : f ** (g' * g) == (id_D ** g') * (f ** g)

o24 = true

See also