Macaulay2 » Documentation
Packages » LinearTruncations :: LinearTruncations
next | previous | forward | backward | up | index | toc

LinearTruncations -- truncations of a multigraded module that give linear resolutions

Description

Let $k$ be a field, $S$ a $\ZZ^r$-graded polynomial ring over $k$, and $M$ a finitely generated, $\ZZ^r$-graded $S$-module. Write $M_{\geq d}$ for the truncation $\oplus_{d'\geq d} M_d'$ of $M$ at $d$ (where $d'\geq d$ if $d'_i\geq d_i$ for all $i$). The main purpose of this package is to find the degrees $d\in\ZZ^r$ so that $M_{\geq d}$ has a linear resolution, i.e. satisfies the function isLinearComplex. No sufficient finite search space is known, so the result may not be complete.

i1 : S = ZZ/101[x_1..x_4,Degrees=>{{1,0},{1,0},{0,1},{0,1}}]

o1 = S

o1 : PolynomialRing
i2 : I = ideal(x_1^3*x_3, x_2*x_3*x_4, x_3^4*x_4, x_4*x_2^2, x_1^3*x_2^3, x_3^3)

             3             4     2     3 3   3
o2 = ideal (x x , x x x , x x , x x , x x , x )
             1 3   2 3 4   3 4   2 4   1 2   3

o2 : Ideal of S
i3 : M = S^1/I

o3 = cokernel | x_1^3x_3 x_2x_3x_4 x_3^4x_4 x_2^2x_4 x_1^3x_2^3 x_3^3 |

                            1
o3 : S-module, quotient of S
i4 : regularity M

o4 = 5
i5 : r = coarseMultigradedRegularity M

o5 = {6, 4}

o5 : List
i6 : L = linearTruncations({{0,0}, r}, M)

o6 = {{2, 3}, {3, 2}}

o6 : List
i7 : apply(L, i -> isLinearComplex res truncate(i,M))

o7 = {true, true}

o7 : List

If $M_{\geq d}$ has a linear truncation then $M_{\geq d'}$ has a linear truncation for all $d'\geq d$, so the function linearTruncations gives the minimal such multidegrees in a given range, using the function findRegion. The functions linearTruncationsBound and regularityBound estimate the linear truncation region and the multigraded regularity region of $M$, respectively, without calculating cohomology or truncations.

Caveat

If the ring $S$ is standard $\ZZ$-graded then $M_{\geq d}$ has a linear resolution if and only if $d\geq\operatorname{reg} M$, where $\operatorname{reg} M$ is the Castelnuovo-Mumford regularity of $M$.

See also

Authors

Certification a gold star

Version 1.0 of this package was accepted for publication in volume 12 of The Journal of Software for Algebra and Geometry on 18 May 2022, in the article Linear truncations package for Macaulay2. That version can be obtained from the journal or from the Macaulay2 source code repository.

Version

This documentation describes version 1.0 of LinearTruncations.

Source code

The source code from which this documentation is derived is in the file LinearTruncations.m2.

Exports

  • Functions and commands
    • "compMax" -- see compMin -- takes componentwise minimum or maximum of a list of lists
    • compMin -- takes componentwise minimum or maximum of a list of lists
    • diagonalMultidegrees -- t-tuples of non-negative integers with sum equal to d
    • findMins -- calculates the minimal elements of a subset of ZZ^r
    • findRegion -- finds minimal multidegree(s) in a given region where an ideal or module satisfies a Boolean function
    • irrelevantIdeal -- gives the irrelevant ideal of the coordinate ring of a product of projective spaces
    • isLinearComplex -- tests whether a complex of graded modules is linear
    • isQuasiLinear -- checks whether degrees in the resolution of a truncation are at most those of the irrelevant ideal
    • linearTruncations -- finds minimal multidegree(s) in a given range where the resolution of a truncated module is linear
    • linearTruncationsBound -- bounds the region where truncations of a module have linear resolutions
    • multigradedPolynomialRing -- produces polynomial rings with standard multigradings
    • partialRegularities -- calculates Castelnuovo-Mumford regularity in each component of a multigrading
    • regularityBound -- bounds the multigraded regularity of a module
    • supportOfTor -- computes multidegrees in the support of Tor_i(M,k), where k is the residue field
  • Methods
    • "compMax(List)" -- see compMin -- takes componentwise minimum or maximum of a list of lists
    • "compMax(List,List)" -- see compMin -- takes componentwise minimum or maximum of a list of lists
    • "compMin(List)" -- see compMin -- takes componentwise minimum or maximum of a list of lists
    • "compMin(List,List)" -- see compMin -- takes componentwise minimum or maximum of a list of lists
    • "diagonalMultidegrees(ZZ,List)" -- see diagonalMultidegrees -- t-tuples of non-negative integers with sum equal to d
    • "diagonalMultidegrees(ZZ,ZZ)" -- see diagonalMultidegrees -- t-tuples of non-negative integers with sum equal to d
    • "findMins(Ideal)" -- see findMins -- calculates the minimal elements of a subset of ZZ^r
    • "findMins(List)" -- see findMins -- calculates the minimal elements of a subset of ZZ^r
    • "findRegion(List,Ideal,Function)" -- see findRegion -- finds minimal multidegree(s) in a given region where an ideal or module satisfies a Boolean function
    • "findRegion(List,Module,Function)" -- see findRegion -- finds minimal multidegree(s) in a given region where an ideal or module satisfies a Boolean function
    • "irrelevantIdeal(Ring)" -- see irrelevantIdeal -- gives the irrelevant ideal of the coordinate ring of a product of projective spaces
    • "isLinearComplex(ChainComplex)" -- see isLinearComplex -- tests whether a complex of graded modules is linear
    • "isQuasiLinear(BettiTally)" -- see isQuasiLinear -- checks whether degrees in the resolution of a truncation are at most those of the irrelevant ideal
    • "isQuasiLinear(ChainComplex)" -- see isQuasiLinear -- checks whether degrees in the resolution of a truncation are at most those of the irrelevant ideal
    • "isQuasiLinear(List,Module)" -- see isQuasiLinear -- checks whether degrees in the resolution of a truncation are at most those of the irrelevant ideal
    • "linearTruncations(List,Module)" -- see linearTruncations -- finds minimal multidegree(s) in a given range where the resolution of a truncated module is linear
    • "linearTruncations(Module)" -- see linearTruncations -- finds minimal multidegree(s) in a given range where the resolution of a truncated module is linear
    • "linearTruncationsBound(Module)" -- see linearTruncationsBound -- bounds the region where truncations of a module have linear resolutions
    • "multigradedPolynomialRing(List)" -- see multigradedPolynomialRing -- produces polynomial rings with standard multigradings
    • "multigradedPolynomialRing(ZZ)" -- see multigradedPolynomialRing -- produces polynomial rings with standard multigradings
    • "partialRegularities(ChainComplex)" -- see partialRegularities -- calculates Castelnuovo-Mumford regularity in each component of a multigrading
    • "partialRegularities(Module)" -- see partialRegularities -- calculates Castelnuovo-Mumford regularity in each component of a multigrading
    • "regularityBound(Module)" -- see regularityBound -- bounds the multigraded regularity of a module
    • "supportOfTor(ChainComplex)" -- see supportOfTor -- computes multidegrees in the support of Tor_i(M,k), where k is the residue field
    • "supportOfTor(Module)" -- see supportOfTor -- computes multidegrees in the support of Tor_i(M,k), where k is the residue field
  • Symbols
    • "Inner" -- see findRegion -- finds minimal multidegree(s) in a given region where an ideal or module satisfies a Boolean function
    • "Outer" -- see findRegion -- finds minimal multidegree(s) in a given region where an ideal or module satisfies a Boolean function
    • "IrrelevantIdeal" -- see isQuasiLinear -- checks whether degrees in the resolution of a truncation are at most those of the irrelevant ideal

For the programmer

The object LinearTruncations is a package.

Menu