# ChainComplexMap -- the class of all maps between chain complexes

## Description

The usual algebraic operations are available: addition, subtraction, scalar multiplication, and composition. The identity map from a chain complex to itself can be produced with id. An attempt to add (subtract, or compare) a ring element to a chain complex will result in the ring element being multiplied by the appropriate identity map.

## Methods that use a chain complex map :

• "RingElement * ChainComplexMap" -- see * -- a binary operator, usually used for multiplication
• "ChainComplexMap + RingElement" -- see + -- a unary or binary operator, usually used for addition
• "ChainComplexMap + ZZ" -- see + -- a unary or binary operator, usually used for addition
• "RingElement + ChainComplexMap" -- see + -- a unary or binary operator, usually used for addition
• "ZZ + ChainComplexMap" -- see + -- a unary or binary operator, usually used for addition
• "ChainComplexMap - RingElement" -- see - -- a unary or binary operator, usually used for negation or subtraction
• "RingElement - ChainComplexMap" -- see - -- a unary or binary operator, usually used for negation or subtraction
• "ChainComplexMap == ChainComplexMap" -- see == -- equality
• "ChainComplexMap == RingElement" -- see == -- equality
• "ChainComplexMap == ZZ" -- see == -- equality
• "RingElement == ChainComplexMap" -- see == -- equality
• "ZZ == ChainComplexMap" -- see == -- equality
• ChainComplexMap _ ZZ -- component map
• ChainComplexMap _ ZZ = Thing -- install component of chain complex map
• "coimage(ChainComplexMap)" -- see coimage -- coimage of a map
• "cokernel(ChainComplexMap)" -- see cokernel -- cokernel of a map of modules, graded modules, or chaincomplexes
• "complete(ChainComplexMap)" -- see complete
• "components(ChainComplexMap)" -- see components -- list the components of a direct sum
• cone(ChainComplexMap) -- mapping cone of a chain map
• degree(ChainComplexMap) (missing documentation)
• "formation(ChainComplexMap)" -- see formation -- recover the methods used to make a module
• HH ChainComplexMap -- homology of a chain complex map
• HH^ZZ ChainComplexMap -- cohomology of a chain complex map
• HH_ZZ ChainComplexMap -- homology of a chain complex map
• "image(ChainComplexMap)" -- see image -- image of a map
• isCommutative(ChainComplexMap) (missing documentation)
• "isHomogeneous(ChainComplexMap)" -- see isHomogeneous -- whether something is homogeneous (graded)
• kernel(ChainComplexMap) -- kernel of a chain complex map
• "ring(ChainComplexMap)" -- see ring -- get the associated ring of an object
• source(ChainComplexMap) -- find the source of a map of chain complexes
• sum(ChainComplexMap) -- direct sum of the components of a chain map
• target(ChainComplexMap) -- find the target of a map of chain complexes
• transpose(ChainComplexMap) -- transpose a map of chain complexes

## For the programmer

The object ChainComplexMap is a type, with ancestor classes GradedModuleMap < MutableHashTable < HashTable < Thing.