F = minimalSemifreeResolution MF = minimalSemifreeResolution(A, M)F = minimalSemifreeResolution(A, M, EndDegree => n)Produces a semifree resolution whose generator count in each hom-degree is minimal among all semifree resolutions of M over A. Two ingredients make the output minimal:
First, M is replaced by prune M, giving a minimal presentation over the (graded-)local base ring. The number of hom-degree-0 generators is therefore the minimal number of generators of M over R.
Second, each column of presentation(prune M) is tested with getBoundaryPreimage against the DG-algebra-induced differential. If a relation is already a boundary, it is not adjoined; if only a residue is a non-boundary, the adjoined generator's differential is that residue rather than the original relation. This is what makes the output minimal over A, not merely over R.
The iterative killCycles(DGModule) passes then use the canonical pruning map of homology(n, F) to pick a minimal generating set of representative cycles at each stage.
|
|
|
|
|
|
Over the c.i. R = k[x, y]/(x^2, y^2) the minimal semifree resolution of k has rank F_n = n+1, matching the Betti numbers of k over R.
|
As with semifreeResolution, the Module-only form infers koszulComplexDGA(ring M) as the DG algebra:
|
|
|
|
|
A more substantial example: take the Koszul DG algebra on a regular sequence cutting out a complete intersection, and resolve a module over the resulting DG algebra. Here A = koszulComplexDGA(I_*) with I = (x^2, y^2) is a DG algebra over Q = ZZ/101[x, y] whose degree-zero homology is the complete intersection Q/I, and A itself is the minimal DG algebra resolution of Q/I over Q. We resolve the Q/I-module M = Q/(x^2, x*y, y^2) as a DG A-module:
|
|
|
|
|
|
|
|
Matrix factorizations on hypersurfaces. Over a hypersurface R = Q/(f) every maximal Cohen-Macaulay module's free resolution is eventually 2-periodic with differentials forming a matrix factorization (phi, psi) of f (Eisenbud). The minimal semifree resolution over A = koszulComplexDGA(ideal f) exhibits this periodicity directly in its printed differentials. Here is the classic example f = x^5:
|
|
|
|
The 2x2 blocks alternate between an x-pattern and an x^4-pattern; their product is x^5 times an identity matrix, which is exactly the matrix factorization x * x^4 = x^5. Similarly, for the quadric form f = x^2 + y^2 the module coker [[x, y], [y, -x]] is already a matrix factorization of f, so its minimal semifree resolution stabilizes in hom-degree one:
|
|
|
|
|
For the three-variable quadric f = x^2 + y^2 + z^2, resolving the residue field stabilizes at rank 8, reflecting the 8-dimensional Clifford algebra of a nondegenerate ternary quadratic form:
|
|
|
|
Minimality relies on A.ring being (graded-)local so that prune returns a minimal presentation. For A = koszulComplexDGA R with R a standard graded quotient of a polynomial ring over a field, this is satisfied.
The object minimalSemifreeResolution is a method function with options.
The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/DGAlgebras/doc.m2:5891:0.