For a DG module M over a DG algebra A, the package supports two parallel views of homology:
HH_ZZ DGModule returns a single degree H_n(M) as a module over the base ring A.ring. This is the natural per-degree shape and matches the convention of HH_ZZ DGAlgebra.
HH DGModule (equivalently homologyModule) returns the full graded object H_*(M) assembled as a module over the homology algebra HH(A), with the HH(A)-action coming from multiplication by cycle classes.
Maps f : M -> N of DG modules induce maps on homology at each level: homology(DGModuleMap,ZZ) returns the induced map H_n(M) -> H_n(N) as a map of A.ring-modules, and HH DGModuleMap assembles those pieces into a map of HH(A)-modules.
For quotients, HH_ZZ DGQuotientModule and HH DGQuotientModule (equivalently homologyModule(DGQuotientModule)) work the same way, using toComplex to reduce to an underlying complex. A DGSubmodule is a DGModule, so its homology is computed by the DG module methods directly.
To extract an explicit representative of a given homology class, use homologyClass(DGModule,Vector); given a cycle in M.natural it returns the corresponding element of prune homology(n, M).
|
|
|
|
|
|
|
|
|
The identity on M induces the identity on every H_n(M), a baseline sanity check that each of the pieces fits together.
The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/DGAlgebras/doc.m2:4185:0.