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

toricRR -- computes the BGG functor of a module over a multigraded polynomial ring.

Synopsis

Description

Let $A$ be a finitely generated free abelian group. Given an $A$-graded polynomial ring $S$ with $A \oplus \mathbb{Z}$-graded Koszul dual exterior algebra E, the BGG functor $\mathbf{R}$ sends an $S$-module $M$ to a free differential $E$-module with linear differential: see Section 3 of the paper accompanying this package for details. The free $E$-module underlying $\mathbf{R}(M)$ is $\bigoplus_{d \in A} M_d \otimes_k E^*(-d, 0)$, where $E^*$ denotes the dual of $E$ over the ground field $k$. This module has rank given by the dimension of $M$ as a $k$-vector space, which is typically infinite. Thus, this method usually only computes a finite rank quotient of $\mathbf{R}(M)$. Specifically: toricRR(M) is the quotient of $\mathbf{R}(M)$ given by those summands $M_d \otimes_k E^*(-d, 0)$ such that $d = e + a \operatorname{deg}(x_i)$, where $e$ is a generating degree of $M$, $a \in \{0,1\}$, and $0 \le i \le n$.

i1 : S = ring weightedProjectiveSpace {1,1,2}

o1 = S

o1 : PolynomialRing
i2 : M = coker random(S^2, S^{3:{-5}});
i3 : toricRR M

                 14                 14                 14
o3 = (QQ[e ..e ])   <-- (QQ[e ..e ])   <-- (QQ[e ..e ])
          0   2              0   2              0   2
                                            
     -1                 0                  1

o3 : DifferentialModule
i4 : T = ring hirzebruchSurface 3;
i5 : M' = coker matrix{{x_0}}

o5 = cokernel | x_0 |

                            1
o5 : T-module, quotient of T
i6 : toricRR M'

                 9                 9                 9
o6 = (QQ[e ..e ])  <-- (QQ[e ..e ])  <-- (QQ[e ..e ])
          0   3             0   3             0   3
                                          
     -1                0                 1

o6 : DifferentialModule

There is also an optional input for a list L of degrees in $A$: toricRR(M, L) is the quotient $\bigoplus_{a \in L} M_d \otimes_k E^*(-d, 0)$ of $\mathbf{R}(M)$.

i7 : L = {{0,0}, {1,0}}

o7 = {{0, 0}, {1, 0}}

o7 : List
i8 : toricRR(M',L)

                 2                 2                 2
o8 = (QQ[e ..e ])  <-- (QQ[e ..e ])  <-- (QQ[e ..e ])
          0   3             0   3             0   3
                                          
     -1                0                 1

o8 : DifferentialModule

For some lists of degrees L, the denominator of the quotient is not a differential module. Hence, the method sometimes enlarges the list of degrees in order to have a well-defined quotient. We demonstrate that phenomenon with the following example.

i9 : S = ring hirzebruchSurface 1

o9 = S

o9 : PolynomialRing
i10 : L1 = {{0,0}, {1,0}, {0,1}}

o10 = {{0, 0}, {1, 0}, {0, 1}}

o10 : List
i11 : L2 = {{0,0}, {1,0}, {0,1}, {-1,1}};
i12 : N1 = toricRR(S^1, L1);
i13 : N2 = toricRR(S^1, L2);
i14 : phi = map(ring N2, ring N1, gens ring N2)

o14 = map (QQ[e ..e ], QQ[e ..e ], {e , e , e , e })
               0   3       0   3     0   1   2   3

o14 : RingMap QQ[e ..e ] <-- QQ[e ..e ]
                  0   3          0   3
i15 : assert(phi N1.dd_0 - N2.dd_0 == 0)

Caveat

A heft vector is necessary for the computation to produce a well-defined differential module.

See also

Ways to use toricRR :

For the programmer

The object toricRR is a method function.