Macaulay2 » Documentation
Packages » Complexes :: Complex _ Array
next | previous | forward | backward | up | index | toc

Complex _ Array -- the canonical inclusion or projection map of a direct sum

Synopsis

Description

The direct sum is an n-ary operator with projection and inclusion maps from each component satisfying appropriate identities.

One can access these maps as follows.

i1 : S = ZZ/101[a,b,c];
i2 : C1 = freeResolution coker vars S

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

o2 : Complex
i3 : C2 = complex (ideal(a,b,c))

o3 = image | a b c |
      
     0

o3 : Complex
i4 : D = C1 ++ C2

                            3      3      1
o4 = image | 1 0 0 0 | <-- S  <-- S  <-- S
           | 0 a b c |                    
                           1      2      3
     0

o4 : Complex
i5 : D_[0]

                                           1
o5 = 0 : image | 1 0 0 0 | <------------- S  : 0
               | 0 a b c |    {0} | 1 |
                              {1} | 0 |
                              {1} | 0 |
                              {1} | 0 |

          3                     3
     1 : S  <----------------- S  : 1
               {1} | 1 0 0 |
               {1} | 0 1 0 |
               {1} | 0 0 1 |

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

          1                 1
     3 : S  <------------- S  : 3
               {3} | 1 |

o5 : ComplexMap
i6 : D_[1]

o6 = 0 : image | 1 0 0 0 | <----------------- image | a b c | : 0
               | 0 a b c |    {0} | 0 0 0 |
                              {1} | 1 0 0 |
                              {1} | 0 1 0 |
                              {1} | 0 0 1 |

o6 : ComplexMap
i7 : D^[0] * D_[0] == 1

o7 = true
i8 : D^[1] * D_[1] == 1

o8 = true
i9 : D^[0] * D_[1] == 0

o9 = true
i10 : D^[1] * D_[0] == 0

o10 = true
i11 : D_[0] * D^[0] + D_[1] * D^[1] == 1

o11 = true

The default names for the components are the non-negative integers. However, one can choose any name.

i12 : E = (mike => C1) ++ (greg => C2)

                             3      3      1
o12 = image | 1 0 0 0 | <-- S  <-- S  <-- S
            | 0 a b c |                    
                            1      2      3
      0

o12 : Complex
i13 : E_[mike]

                                            1
o13 = 0 : image | 1 0 0 0 | <------------- S  : 0
                | 0 a b c |    {0} | 1 |
                               {1} | 0 |
                               {1} | 0 |
                               {1} | 0 |

           3                     3
      1 : S  <----------------- S  : 1
                {1} | 1 0 0 |
                {1} | 0 1 0 |
                {1} | 0 0 1 |

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

           1                 1
      3 : S  <------------- S  : 3
                {3} | 1 |

o13 : ComplexMap
i14 : E_[greg]

o14 = 0 : image | 1 0 0 0 | <----------------- image | a b c | : 0
                | 0 a b c |    {0} | 0 0 0 |
                               {1} | 1 0 0 |
                               {1} | 0 1 0 |
                               {1} | 0 0 1 |

o14 : ComplexMap
i15 : E^[mike] * E_[mike] == 1

o15 = true
i16 : E^[greg] * E_[greg] == 1

o16 = true
i17 : E^[mike] * E_[greg] == 0

o17 = true
i18 : E^[greg] * E_[mike] == 0

o18 = true
i19 : E_[mike] * E^[mike] + E_[greg] * E^[greg] == 1

o19 = true

One can also access inclusion and projection maps of sub-direct sums.

i20 : F = directSum(C1, C2, (complex S^13)[-4])

                             3      3      1      13
o20 = image | 1 0 0 0 | <-- S  <-- S  <-- S  <-- S
            | 0 a b c |                           
                            1      2      3      4
      0

o20 : Complex
i21 : F^[0,1]

o21 = 0 : image | 1 0 0 0 | <------------------- image | 1 0 0 0 | : 0
                | 0 a b c |    {0} | 1 0 0 0 |         | 0 a b c |
                               {1} | 0 1 0 0 |
                               {1} | 0 0 1 0 |
                               {1} | 0 0 0 1 |

           3                     3
      1 : S  <----------------- S  : 1
                {1} | 1 0 0 |
                {1} | 0 1 0 |
                {1} | 0 0 1 |

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

           1                 1
      3 : S  <------------- S  : 3
                {3} | 1 |

                    13
      4 : 0 <----- S   : 4
               0

o21 : ComplexMap
i22 : F_[0,2]

                                            1
o22 = 0 : image | 1 0 0 0 | <------------- S  : 0
                | 0 a b c |    {0} | 1 |
                               {1} | 0 |
                               {1} | 0 |
                               {1} | 0 |

           3                     3
      1 : S  <----------------- S  : 1
                {1} | 1 0 0 |
                {1} | 0 1 0 |
                {1} | 0 0 1 |

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

           1                 1
      3 : S  <------------- S  : 3
                {3} | 1 |

           13                                     13
      4 : S   <--------------------------------- S   : 4
                 | 1 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 1 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 1 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 1 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 1 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 1 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 1 |

o22 : ComplexMap

See also

Ways to use this method: