Macaulay2 » Documentation
Packages » OldChainComplexes » ChainComplex » ChainComplex ^ Array
next | previous | forward | backward | up | index | toc

# ChainComplex ^ Array -- projection onto summand

- Operator: ^
- Usage:
    `M^[i,j,...,k]`
- Inputs:
  - M, a chain complex
  - [i,j,...,k], an array of indices
- Outputs:
  - a chain complex map

## Description

The chain complex M should be a direct sum, and the result is the map obtained by projection onto the sum of the components numbered or named i, j, ..., k. Free modules are regarded as direct sums of modules.

    i1 : M = ZZ^2 ++ ZZ^3

           5
    o1 = ZZ

    o1 : ZZ-module, free

    i2 : M^[0]

    o2 = | 1 0 0 0 0 |
         | 0 1 0 0 0 |

                  2       5
    o2 : Matrix ZZ  <-- ZZ

    i3 : M^[1]

    o3 = | 0 0 1 0 0 |
         | 0 0 0 1 0 |
         | 0 0 0 0 1 |

                  3       5
    o3 : Matrix ZZ  <-- ZZ

    i4 : M^[1,0]

    o4 = | 0 0 1 0 0 |
         | 0 0 0 1 0 |
         | 0 0 0 0 1 |
         | 1 0 0 0 0 |
         | 0 1 0 0 0 |

                  5       5
    o4 : Matrix ZZ  <-- ZZ

If the components have been given names (see directSum), use those instead.

    i5 : R = QQ[x,y,z];

    i6 : C = res coker vars R

          1      3      3      1
    o6 = R  <-- R  <-- R  <-- R  <-- 0

         0      1      2      3      4

    o6 : ChainComplex

    i7 : D = (a=>C) ++ (b=>C)

          2      6      6      2
    o7 = R  <-- R  <-- R  <-- R  <-- 0

         0      1      2      3      4

    o7 : ChainComplex

    i8 : D^[a]

              1               2
    o8 = 0 : R  <----------- R  : 0
                   | 1 0 |

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

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

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

         4 : 0 <----- 0 : 4
                  0

    o8 : ChainComplexMap

## See also

- directSum -- direct sum of modules or maps
- Matrix ^ Array -- component of map corresponding to summand of target
- Module _ Array -- inclusion from summand
- Module ^ List -- projection onto summand

## Ways to use this method:

- ChainComplex ^ Array -- projection onto summand

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/OldChainComplexes/docs/caret-doc.m2:72:0.