Every DGModule (and its DGSubmodule / DGQuotientModule variants) carries an underlying graded A.natural-module, accessible via M.natural. The standard Module methods — numgens, rank, degrees, isHomogeneous, super, cover, relations — are lifted directly onto the DG types, so code written against ordinary modules can often be reused on DG objects unchanged.
Two DG-specific predicates are added:
isFreeDGModule — is the underlying M.natural a free graded A.natural-module? Every DGModule built via freeDGModule satisfies this; user-built DGModules with non-free .natural slots are tolerated by isWellDefined as long as the differential closes.
isZero — does the DG object have zero natural generators? Consistent across DGModule, DGSubmodule, DGQuotientModule, and DGIdeal, so predicates can be written generically.
|
|
|
|
|
|
|
|
|
On quotient DG modules, super and cover both return the ambient DGModule, and relations returns the matrix of the killed inclusion — mirroring M2's cokernel encoding of a quotient.
|
|
|
|
|
|
|
The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/DGAlgebras/doc.m2:3405:0.