# ChainComplexExtras -- More ChainComplex Functionality.

## Version

This documentation describes version 1.1 of ChainComplexExtras.

## Source code

The source code from which this documentation is derived is in the file ChainComplexExtras.m2.

## Exports

• Functions and commands
• Methods
• "appendZeroMap(ChainComplex)" -- see appendZeroMap -- append a zero map to chain complex
• "cartanEilenbergResolution(ChainComplex)" -- see cartanEilenbergResolution -- Computes free resolution of a ChainComplex
• "chainComplexMap(ChainComplex,ChainComplex,List)" -- see chainComplexMap -- Defines a ChainComplexMap via a list of matrices.
• "extendFromMiddle(ChainComplex,ChainComplex,Matrix,ZZ)" -- see extendFromMiddle -- extends a map between ChainComplexes
• Hom(ChainComplex,ChainComplex) -- Create the homomorphism complex of a pair of chain complexes.
• "isChainComplex(ChainComplex)" -- see isChainComplex -- tests whether the differentials compose to zero
• "isChainComplexMap(ChainComplexMap)" -- see isChainComplexMap -- Test to see if the ChainComplexMap commutes with the differentials.
• "isExact(ChainComplex)" -- see isExact -- Test to see if the ChainComplex is exact.
• "isQuasiIsomorphism(ChainComplexMap)" -- see isQuasiIsomorphism -- Test to see if the ChainComplexMap is a quasi-isomorphism.
• "koszulComplex(Ideal)" -- see koszulComplex -- Gives the Koszul complex on the generators of I.
• "minimize(ChainComplex)" -- see minimize -- minimal quotient complex of a free ChainComplex
• "nonzeroMax(ChainComplex)" -- see nonzeroMax -- computes the homological position of the last non-zero module in a ChainComplex
• "nonzeroMin(ChainComplex)" -- see nonzeroMin -- computes the homological position of the first non-zero module in a ChainComplex
• "prependZeroMap(ChainComplex)" -- see prependZeroMap -- prepend a zero map to chain complex
• "removeZeroTrailingTerms(ChainComplex)" -- see removeZeroTrailingTerms -- remove trailing zero terms of a chain complex
• resolution(ChainComplex) -- Resolves a ChainComplex.
• "resolutionOfChainComplex(ChainComplex)" -- see resolutionOfChainComplex -- free resolution of a chain complex
• "scarfComplex(MonomialIdeal)" -- see scarfComplex -- constructs the algebraic Scarf complex of a monomial ideal
• substitute(ChainComplex,Ring) -- Change the ring over which the ChainComplex is defined.
• "taylor(ZZ,MonomialIdeal)" -- see taylor -- Gives the nth differential in the Taylor resolution of a monomial ideal I.
• "taylorResolution(MonomialIdeal)" -- see taylorResolution -- Gives the Taylor resolution of a monomial ideal I.
• "trivialHomologicalTruncation(ChainComplex,ZZ,ZZ)" -- see trivialHomologicalTruncation -- return the trivial truncation of a chain complex
• Symbols
• InitialDegree -- Used to specify an initial degree for chainComplexMap.

## For the programmer

The object ChainComplexExtras is .