Macaulay2 » Documentation
Packages » MatrixFactorizations :: ZZdfactorization(Module,ZZ)
next | previous | forward | backward | up | index | toc

ZZdfactorization(Module,ZZ) -- convert a module/ring/ideal into a ZZ/d-graded factorization for specified period d

Description

A ZZ/d-graded factorization is a sequence of objects $C_i$, connected by maps $dd^C_i : C_i \rightarrow C_{i-1}$ such that the composition of any d consecutive maps is equal to a fixed scalar multiple of the identity.

In practice, a ZZdFactorization may be visualized as a sequence of R-module maps:

$$F_0 \leftarrow F_1 \leftarrow \cdots \leftarrow F_{d-1}$$

with the caveat that $d^F_0 : F_0 \to F_{d-1}$, since one should count degree modulo d.

Sometimes the user may wish to view a module as a ZZ/d-graded factorization with zeros in all other spots. This can be accomplished with the following syntax:

i1 : S = ZZ/101[a..c]

o1 = S

o1 : PolynomialRing
i2 : M = coker vars S

o2 = cokernel | a b c |

                            1
o2 : S-module, quotient of S
i3 : C1 = ZZdfactorization(M, 2)

o3 = cokernel | a b c | <-- 0 <-- cokernel | a b c |
                                   
     0                      1     0

o3 : ZZdFactorization
i4 : isWellDefined C1

o4 = true
i5 : isZZdComplex C1

o5 = true
i6 : C2 = ZZdfactorization(M, 3)

o6 = cokernel | a b c | <-- 0 <-- 0 <-- cokernel | a b c |
                                         
     0                      1     2     0

o6 : ZZdFactorization
i7 : C2'= ZZdfactorization(M, 3, Base => 1)

o7 = 0 <-- cokernel | a b c | <-- 0 <-- 0
                                         
     0     1                      2     0

o7 : ZZdFactorization
i8 : C2'' = ZZdfactorization(M, 3, Base => 2)

o8 = 0 <-- 0 <-- cokernel | a b c | <-- 0
                                         
     0     1     2                      0

o8 : ZZdFactorization

To start a factorization at a base different from zero, use the optional argument Base.

Caveat

This constructor minimizes computation and does very little error checking. To verify that a factorization is well constructed, use isWellDefined(ZZdFactorization).

See also

Ways to use this method:

  • ZZdfactorization(Ideal,ZZ)
  • ZZdfactorization(Module,ZZ) -- convert a module/ring/ideal into a ZZ/d-graded factorization for specified period d
  • ZZdfactorization(Ring,ZZ)

The source of this document is in MatrixFactorizations/MatrixFactorizationsDOC.m2:730:0.