# Matrix _ Array -- component of map corresponding to summand of source

## Synopsis

• Usage:
F_[i,j,...,k]
• Operator: _
• Inputs:
• F, , or or
• [i,j,...,k], an array of indices
• Outputs:
• , , or

## Description

The source of the module or chain complex F should be a direct sum, and the result is the component of this map corresponding to the sum of the components numbered or named i, j, ..., k. Free modules are regarded as direct sums of modules. In otherwords, this routine returns the map given by certain blocks of columns.
 `i1 : R = ZZ[a..d];` ```i2 : F = (vars R) ++ ((vars R) ++ matrix{{a-1,b-3}}) o2 = | a b c d 0 0 0 0 0 0 | | 0 0 0 0 a b c d 0 0 | | 0 0 0 0 0 0 0 0 a-1 b-3 | 3 10 o2 : Matrix R <--- R``` ```i3 : F_[1] o3 = | 0 0 0 0 0 0 | | a b c d 0 0 | | 0 0 0 0 a-1 b-3 | 3 6 o3 : Matrix R <--- R``` ```i4 : F_[1]^[1] o4 = | a b c d 0 0 | | 0 0 0 0 a-1 b-3 | 2 6 o4 : Matrix R <--- R```

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

 ```i5 : N = (a=>vars R) ++ (b=>vars R) o5 = | a b c d 0 0 0 0 | | 0 0 0 0 a b c d | 2 8 o5 : Matrix R <--- R``` ```i6 : N_[a] o6 = | a b c d | | 0 0 0 0 | 2 4 o6 : Matrix R <--- R``` ```i7 : N = directSum(x1 => matrix{{a,b-1}}, x2 => matrix{{a-3,b-17,c-35}}, x3 => vars R) o7 = | a b-1 0 0 0 0 0 0 0 | | 0 0 a-3 b-17 c-35 0 0 0 0 | | 0 0 0 0 0 a b c d | 3 9 o7 : Matrix R <--- R``` ```i8 : N_[x1,x3] o8 = | a b-1 0 0 0 0 | | 0 0 0 0 0 0 | | 0 0 a b c d | 3 6 o8 : Matrix R <--- R```

This works the same way for maps between chain complexes.