Macaulay2 » Documentation
Packages » DGAlgebras » Low-level differential computations and validity checks » getBoundaryPreimage(DGModule,List)
next | previous | forward | backward | up | index | toc

getBoundaryPreimage(DGModule,List) -- Lift a list of boundaries sharing a hom-degree through the module differential

Description

The list form of getBoundaryPreimage(DGModule,Vector) solves multiple preimage problems in a single // call. Zero entries are permitted and contribute zero columns; all nonzero entries must share a hom-degree. When every boundary lifts, the returned list preserves the order of boundaryList.

i1 : R = QQ[x]

o1 = R

o1 : PolynomialRing
i2 : A = koszulComplexDGA R

o2 = {Ring => R                    }
      Underlying algebra => R[T   ]
                               1,1
      Differential => {x}

o2 : DGAlgebra
i3 : M = freeDGModule(A, {0, 1})

o3 = {Base ring => R                       }
      DG algebra => R[T   ]
                       1,1
                                 2
      Natural module => (R[T   ])
                            1,1
      Generator degrees => {{0, 0}, {1, 0}}
      Differentials on gens => {0, 0}

o3 : DGModule
i4 : natGens = apply(rank M.natural, i -> (M.natural)_i)

o4 = {| 1 |, | 0 |}
      | 0 |  | 1 |

o4 : List
i5 : setDiff(M, {0, x * natGens#0})

o5 = {Base ring => R                       }
      DG algebra => R[T   ]
                       1,1
                                 2
      Natural module => (R[T   ])
                            1,1
      Generator degrees => {{0, 0}, {1, 0}}
      Differentials on gens => {0, | x |}
                                   | 0 |

o5 : DGModule
i6 : b = x * natGens#0

o6 = | x |
     | 0 |

              2
o6 : (R[T   ])
         1,1
i7 : (ok, lifts) = getBoundaryPreimage(M, {b, 0_(M.natural)})

o7 = (true, {| T_(1,1) |, 0})
             |    0    |

o7 : Sequence
i8 : assert(ok === true)
i9 : assert(diff(M, lifts#0) == b)
i10 : assert(diff(M, lifts#1) == 0)

See also

Ways to use this method:


The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/DGAlgebras/doc.m2:7207:0.