Macaulay2 » Documentation
Packages » OldChainComplexes :: OldChainComplexes
next | previous | forward | backward | up | index | toc

# OldChainComplexes -- legacy implementation of chain complexes

## Description

This package contains legacy code that was extracted from the Core in order to preserve the existing functionality of chain complexes, graded modules, and resolutions for backwards compatibility.

Beginning in the 1.25.11 release, this package will not be preloaded anymore and current routines involving chain complexes and graded modules will be superseded by new functorial homological algebra routines in the Complexes package.

Users and package developers are encouraged to preview the upcoming changes by adding

    HomologicalAlgebraPackage = "Complexes"

to their initialization file and reporting any bugs via email or GitHub. Once the transition is complete, adding

    HomologicalAlgebraPackage = "OldChainComplexes"

will provide a workaround for running old scripts or benchmarking against previous algorithms to detect potential regressions.

For additional common operations and a comprehensive list of all routines provided in this package which return or use chain complexes or maps between chain complexes, see ChainComplex and ChainComplexMap.

## See also

- ChainComplexExtras -- More ChainComplex Functionality.
- ChainComplexOperations -- Symmetric and exterior squares of a complex and the 2nd Adams operation

### Menu

- free resolutions of modules
- extracting information from chain complexes
- making chain complexes by hand
- manipulating chain complexes
- maps between chain complexes
- GradedModule -- the class of all graded modules
- GradedModuleMap -- the class of all maps between graded modules
- ChainComplex -- the class of all chain complexes
- ChainComplexMap -- the class of all maps between chain complexes
- Resolution -- the class of all resolution computations

## Version

This documentation describes version 0.1 of OldChainComplexes, released 7 March 2025.

## Exports

- Types
  - ChainComplex -- the class of all chain complexes
  - ChainComplexMap -- the class of all maps between chain complexes
  - GradedModule -- the class of all graded modules
  - GradedModuleMap -- the class of all maps between graded modules
  - Resolution -- the class of all resolution computations
- Functions and commands
  - chainComplex -- make a chain complex
  - gradedModuleMap -- make a map of graded modules
  - resolution -- projective resolution
  - syzygyScheme -- construct a syzygy scheme
- Methods
  - - ChainComplexMap (missing documentation)
  - - GradedModuleMap (missing documentation)
  - ambient(GradedModule) (missing documentation)
  - `betti(ChainComplex)` -- see betti(GradedModule) -- Betti diagram showing the of degrees in a graded module or chain complex
  - betti(GradedModule) -- Betti diagram showing the of degrees in a graded module or chain complex
  - betti(Resolution) (missing documentation)
  - ChainComplex ** ChainComplex -- tensor product
  - `ChainComplex ** Module` -- see ChainComplex ** ChainComplex -- tensor product
  - `Module ** ChainComplex` -- see ChainComplex ** ChainComplex -- tensor product
  - ChainComplex ** ChainComplexMap -- tensor product
  - `Module ** ChainComplexMap` -- see ChainComplex ** ChainComplexMap -- tensor product
  - ChainComplex ** GradedModule -- tensor product
  - ChainComplex ** Ring
  - ChainComplex ++ ChainComplex -- direct sum
  - `ChainComplexMap ++ ChainComplexMap` -- see ChainComplex ++ ChainComplex -- direct sum
  - `GradedModule ++ GradedModule` -- see ChainComplex ++ ChainComplex -- direct sum
  - ChainComplex == ChainComplex (missing documentation)
  - ChainComplex == ZZ (missing documentation)
  - ChainComplex ^ Array -- projection onto summand
  - ChainComplex ^ ZZ -- access member, cohomological degree
  - ChainComplex _ Array -- inclusion from summand
  - ChainComplex _ ZZ -- component
  - `GradedModule _ ZZ` -- see ChainComplex _ ZZ -- component
  - ChainComplex _ ZZ = Thing -- install component of chain complex
  - ChainComplex Array -- degree shift
  - chainComplex(GradedModule) -- make a chain complex from a graded module
  - chainComplex(List) -- make a chain complex
  - `chainComplex(Sequence)` -- see chainComplex(List) -- make a chain complex
  - chainComplex(Matrix) -- make a small chain complex
  - chainComplex(Ring) -- make an empty chain complex over a ring
  - ChainComplexMap * ChainComplexMap (missing documentation)
  - ChainComplexMap ** ChainComplex -- tensor product
  - `ChainComplexMap ** Module` -- see ChainComplexMap ** ChainComplex -- tensor product
  - ChainComplexMap ** ChainComplexMap -- tensor product
  - ChainComplexMap + ChainComplexMap (missing documentation)
  - ChainComplexMap + RingElement (missing documentation)
  - ChainComplexMap + ZZ (missing documentation)
  - ChainComplexMap - ChainComplexMap (missing documentation)
  - ChainComplexMap - RingElement (missing documentation)
  - ChainComplexMap == ChainComplexMap (missing documentation)
  - ChainComplexMap == RingElement (missing documentation)
  - ChainComplexMap == ZZ (missing documentation)
  - ChainComplexMap ^ Array (missing documentation)
  - ChainComplexMap ^ ZZ -- iterated composition
  - `GradedModuleMap ^ ZZ` -- see ChainComplexMap ^ ZZ -- iterated composition
  - ChainComplexMap _ Array -- component of map corresponding to summand of source
  - `GradedModuleMap _ Array` -- see ChainComplexMap _ Array -- component of map corresponding to summand of source
  - ChainComplexMap _ ZZ -- component map
  - `GradedModuleMap _ ZZ` -- see ChainComplexMap _ ZZ -- component map
  - ChainComplexMap _ ZZ = Thing -- install component of chain complex map
  - ChainComplexMap Array -- degree shift
  - coimage(ChainComplexMap) (missing documentation)
  - coimage(GradedModuleMap) (missing documentation)
  - cokernel(ChainComplexMap) (missing documentation)
  - cokernel(GradedModuleMap) (missing documentation)
  - complete(ChainComplex) -- complete the internal parts
  - `complete(ChainComplexMap)` -- see complete(GradedModule)
  - complete(GradedModule)
  - components(ChainComplex)
  - components(ChainComplexMap) (missing documentation)
  - components(GradedModule) (missing documentation)
  - components(GradedModuleMap) (missing documentation)
  - cone(ChainComplexMap)
  - cover(GradedModule) (missing documentation)
  - degree(ChainComplexMap) (missing documentation)
  - degree(GradedModuleMap) (missing documentation)
  - directSum(ChainComplex) (missing documentation)
  - directSum(GradedModule) (missing documentation)
  - dual(ChainComplex) -- dual
  - dual(ChainComplexMap) -- dual of a chain complex
  - extend(ChainComplex,ChainComplex,Matrix)
  - formation(ChainComplex) (missing documentation)
  - formation(ChainComplexMap) (missing documentation)
  - formation(GradedModule) (missing documentation)
  - formation(GradedModuleMap) (missing documentation)
  - GradedModule ** ChainComplex -- tensor product
  - GradedModule ** GradedModule
  - GradedModule ** Module
  - `Module ** GradedModule` -- see GradedModule ** Module
  - GradedModule ++ Module (missing documentation)
  - GradedModule == GradedModule (missing documentation)
  - GradedModule Array -- degree shift
  - `gradedModule(ChainComplex)` -- see gradedModule(List) -- make a graded module
  - gradedModule(List) -- make a graded module
  - `gradedModule(Module)` -- see gradedModule(List) -- make a graded module
  - `gradedModule(Sequence)` -- see gradedModule(List) -- make a graded module
  - `gradedModuleMap(List)` -- see gradedModuleMap -- make a map of graded modules
  - `gradedModuleMap(Matrix)` -- see gradedModuleMap -- make a map of graded modules
  - `gradedModuleMap(Sequence)` -- see gradedModuleMap -- make a map of graded modules
  - GradedModuleMap * GradedModuleMap (missing documentation)
  - GradedModuleMap + GradedModuleMap (missing documentation)
  - GradedModuleMap + RingElement (missing documentation)
  - GradedModuleMap ++ GradedModuleMap (missing documentation)
  - GradedModuleMap - GradedModuleMap (missing documentation)
  - GradedModuleMap - RingElement (missing documentation)
  - GradedModuleMap == GradedModuleMap (missing documentation)
  - GradedModuleMap == RingElement (missing documentation)
  - GradedModuleMap == ZZ (missing documentation)
  - GradedModuleMap ^ Array (missing documentation)
  - GradedModuleMap | GradedModuleMap
  - GradedModuleMap || GradedModuleMap
  - HH ChainComplex -- homology of a chain complex
  - HH ChainComplexMap -- homology of a chain complex map
  - HH^ZZ ChainComplex -- cohomology of a chain complex
  - HH^ZZ ChainComplexMap -- cohomology of a chain complex map
  - HH_ZZ ChainComplex -- homology of a chain complex
  - HH_ZZ ChainComplexMap -- homology of a chain complex map
  - `Hom(ChainComplex,Module)` -- see Hom(Module,ChainComplex) -- the Hom functor
  - `Hom(ChainComplexMap,Module)` -- see Hom(Module,ChainComplex) -- the Hom functor
  - Hom(Module,ChainComplex) -- the Hom functor
  - `Hom(Module,ChainComplexMap)` -- see Hom(Module,ChainComplex) -- the Hom functor
  - image(ChainComplexMap) (missing documentation)
  - image(GradedModuleMap) (missing documentation)
  - inducedMap(ChainComplex,ChainComplex) (missing documentation)
  - isDirectSum(ChainComplex) (missing documentation)
  - isDirectSum(GradedModule) (missing documentation)
  - isHomogeneous(ChainComplex) (missing documentation)
  - isHomogeneous(ChainComplexMap) (missing documentation)
  - kernel(ChainComplexMap) -- kernel of a chain complex map
  - `kernel(GradedModuleMap)` -- see kernel(ChainComplexMap) -- kernel of a chain complex map
  - length(ChainComplex) -- length of a chain complex or graded module
  - length(GradedModule) -- length of a graded module
  - map(ChainComplex,ChainComplex,ChainComplexMap) (missing documentation)
  - map(ChainComplex,ChainComplex,Function) -- make a map of chain complexes
  - `map(GradedModule,GradedModule,Function)` -- see map(ChainComplex,ChainComplex,Function) -- make a map of chain complexes
  - mathML(ChainComplex) (missing documentation)
  - mathML(ChainComplexMap) (missing documentation)
  - mathML(GradedModule) (missing documentation)
  - mathML(GradedModuleMap) (missing documentation)
  - max(GradedModule)
  - min(GradedModule)
  - minimalPresentation(ChainComplex) (missing documentation)
  - minimalPresentation(ChainComplexMap) (missing documentation)
  - minimalPresentation(GradedModule) (missing documentation)
  - minimalPresentation(GradedModuleMap) (missing documentation)
  - Module ++ GradedModule (missing documentation)
  - net(ChainComplex) (missing documentation)
  - net(ChainComplexMap) (missing documentation)
  - net(GradedModule) (missing documentation)
  - net(GradedModuleMap) (missing documentation)
  - new ChainComplex -- make a new chain complex from scratch
  - new ChainComplex from Resolution (missing documentation)
  - `nullhomotopy(ChainComplexMap)` -- see nullhomotopy -- make a null homotopy
  - poincare(ChainComplex) -- assemble degrees of a chain complex into a polynomial
  - poincareN(ChainComplex) -- assemble degrees into polynomial
  - prune(ChainComplex) (missing documentation)
  - prune(ChainComplexMap) (missing documentation)
  - prune(GradedModule) (missing documentation)
  - prune(GradedModuleMap) (missing documentation)
  - rank(GradedModule) (missing documentation)
  - regularity(ChainComplex) -- compute the Castelnuovo-Mumford regularity
  - resolution(Ideal) -- compute a projective resolution of (the quotient ring corresponding to) an ideal
  - resolution(Matrix) -- compute the comparison map between resolutions of the source and target of a module map represented by a matrix
  - resolution(Module) -- compute a free resolution of a module
  - Ring ^ BettiTally -- construct a chain complex with prescribed Betti table
  - ring(ChainComplex) (missing documentation)
  - ring(ChainComplexMap) (missing documentation)
  - ring(GradedModule) (missing documentation)
  - ring(GradedModuleMap) (missing documentation)
  - ring(Resolution) (missing documentation)
  - RingElement * ChainComplexMap (missing documentation)
  - RingElement * GradedModuleMap (missing documentation)
  - RingElement + ChainComplexMap (missing documentation)
  - RingElement + GradedModuleMap (missing documentation)
  - RingElement - ChainComplexMap (missing documentation)
  - RingElement - GradedModuleMap (missing documentation)
  - RingElement == ChainComplexMap (missing documentation)
  - RingElement == GradedModuleMap (missing documentation)
  - RingMap ChainComplex (missing documentation)
  - RingMap ChainComplexMap (missing documentation)
  - source(ChainComplexMap) -- find the source of a map of chain complexes
  - source(GradedModuleMap) -- find the source of a map of graded modules
  - status(ChainComplex) -- status of a resolution computation
  - `status(Resolution)` -- see status(ChainComplex) -- status of a resolution computation
  - sum(ChainComplex) -- direct sum of the components of a chain complex
  - sum(ChainComplexMap) -- direct sum of the components of a chain map
  - super(GradedModule) (missing documentation)
  - target(ChainComplexMap) -- find the target of a map of chain complexes
  - target(GradedModuleMap) -- find the target of a map of graded modules
  - tensorAssociativity(ChainComplex,ChainComplex,ChainComplex) (missing documentation)
  - tensorAssociativity(GradedModule,GradedModule,GradedModule) (missing documentation)
  - texMath(ChainComplex) (missing documentation)
  - texMath(GradedModule) (missing documentation)
  - texMath(GradedModuleMap) (missing documentation)
  - toString(Resolution) (missing documentation)
  - transpose(ChainComplexMap) -- transpose a map of chain complexes
  - ZZ * ChainComplexMap (missing documentation)
  - ZZ * GradedModuleMap (missing documentation)
  - ZZ + ChainComplexMap (missing documentation)
  - ZZ == ChainComplex (missing documentation)
  - ZZ == ChainComplexMap (missing documentation)
  - ZZ == GradedModuleMap (missing documentation)

## For the programmer

The object OldChainComplexes is a package, defined in OldChainComplexes.m2, with auxiliary files in OldChainComplexes/.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/OldChainComplexes.m2:125:0.