# map(Complex,Complex,Function) -- make a map of chain complexes

## Synopsis

• Function: map
• Usage:
f = map(D, C, fcn)
• Inputs:
• C, ,
• D, ,
• fcn, , whose values at integers are the maps between the corresponding terms
• Optional inputs:
• Degree => an integer, default value null, the degree of the resulting map
• DegreeLift => ..., default value null, unused
• DegreeMap => ..., default value null, unused
• Outputs:
• f, ,

## Description

A map of complexes $f : C \rightarrow D$ of degree $d$ is a sequence of maps $f_i : C_i \rightarrow D_{d+i}$. No relationship between the maps $f_i$ and and the differentials of either $C$ or $D$ is assumed.

We construct a map of chain complexes by specifying a function which determines the maps between the terms.

 i1 : R = ZZ/101[x]/x^3; i2 : M = coker vars R o2 = cokernel | x | 1 o2 : R-module, quotient of R i3 : C = freeResolution(M, LengthLimit => 6) 1 1 1 1 1 1 1 o3 = R <-- R <-- R <-- R <-- R <-- R <-- R 0 1 2 3 4 5 6 o3 : Complex i4 : D = C[1] 1 1 1 1 1 1 1 o4 = R <-- R <-- R <-- R <-- R <-- R <-- R -1 0 1 2 3 4 5 o4 : Complex i5 : f = map(D, C, i -> if odd i then map(D_i, C_i, {{x}}) else map(D_i, C_i, {{x^2}}) ) 1 1 o5 = 0 : R <-------------- R : 0 {1} | x2 | 1 1 1 : R <------------- R : 1 {3} | x | 1 1 2 : R <-------------- R : 2 {4} | x2 | 1 1 3 : R <------------- R : 3 {6} | x | 1 1 4 : R <-------------- R : 4 {7} | x2 | 1 1 5 : R <------------- R : 5 {9} | x | o5 : ComplexMap i6 : assert isWellDefined f i7 : assert isCommutative f i8 : assert(source f == C) i9 : assert(target f == D)