# concentration(ComplexMap) -- indices on which a complex map may be non-zero

## Synopsis

• Function: concentration
• Usage:
(lo,hi) = concentration f
• Inputs:
• f, ,
• Outputs:
• , a pair of integers lo, hi such that f_i = 0 for i < lo or i > hi.

## Description

In this package, each map of complexes has a concentration (lo, hi) such that lo <= hi. When lo <= i <= hi, the map f_i might be zero.

This function is mainly used in programming, to loop over all non-zero maps. This should not be confused with the support of the source or target.

 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 : concentration id_C o3 = (0, 3) o3 : Sequence i4 : D = C ++ C[5] 1 3 3 1 1 3 3 1 o4 = S <-- S <-- S <-- S <-- 0 <-- S <-- S <-- S <-- S -5 -4 -3 -2 -1 0 1 2 3 o4 : Complex i5 : concentration id_D o5 = (-5, 3) o5 : Sequence i6 : f = randomComplexMap(D, C) 1 1 o6 = 0 : S <---------- S : 0 | 24 | 3 3 1 : S <----------------------- S : 1 {1} | -36 19 -29 | {1} | -30 19 -8 | {1} | -29 -10 -22 | 3 3 2 : S <----------------------- S : 2 {2} | -29 -16 34 | {2} | -24 39 19 | {2} | -38 21 -47 | 1 1 3 : S <--------------- S : 3 {3} | -39 | o6 : ComplexMap i7 : concentration f o7 = (0, 3) o7 : Sequence

Indices that are outside of the concentration automatically return the zero object.

 i8 : f_-1 o8 = 0 o8 : Matrix 0 <--- 0 i9 : (id_D)_4 o9 = 0 o9 : Matrix 0 <--- 0

Maps inside the concentration may nevertheless be zero.

 i10 : (id_D)_-1 o10 = 0 o10 : Matrix 0 <--- 0

The concentration of a zero complex can be arbitrary, however, after pruning, its concentration will be (0,0).

 i11 : C0 = (complex S^0)[4] o11 = 0 -4 o11 : Complex i12 : g = id_C0 o12 = -4 : 0 <----- 0 : -4 0 o12 : ComplexMap i13 : concentration g o13 = (-4, -4) o13 : Sequence i14 : prune g o14 = 0 o14 : ComplexMap i15 : concentration oo o15 = (0, 0) o15 : Sequence