The computation is done using the exterior algebra method described by Eisenbud and Schreyer, in Eisenbud, David; Schreyer, Frank-Olaf ``Relative Beilinson monad and direct image for families of coherent sheaves.'' Trans. Amer. Math. Soc. 360 (2008), no. 10, 5367–5396.
The computation requires knowing the Castelnuovo-Mumford regularity of M in the variables y_i. If not provided by the user, it is computed by the function. The default is Regularity => null, which means it must be computed.
The ring A must be a polynomial ring. For the moment, the module M must be homogeneous for the variables of A as well as for the variables of S (bihomogeneous).
It is proven in loc. cit. that every complex of free modules can be realized as the direct image of a vector bundle on $\PP^n_A$.
The following example can be used to study the loci in the family of extensions of a pair of vector bundles on $\PP^1$ where the extension bundle has a given splitting type: this type is calculated by the Fitting ideals of the matrices defining the direct image complexes of various twists of the bundle. See Section 5 in loc. cite. It is conjectured there that all the sums of these Fitting ideals for the universal extension of $\mathcal O_{\PP^1}^{r-1}$ by $\mathcal O_{\PP^1}(d)$ are radical, as in the example below.
First we examine the extensions of ${\mathcal O}_{\PP^1}(1)$ by ${\mathcal O}_{\PP^1}(-3)$. There is a 3-dimensional vector space $$ Ext^1({\mathcal O}_{\PP^1}(1),{\mathcal O}_{\PP^1}(-3)) $$ of extensions. The ``universal extension'' is thus a bundle on $\PP^1\times Ext$. The locus where the extension bundle splits as ${\mathcal O}_{\PP^1}(-2) \oplus {\mathcal O}_{\PP^1}$ is the locus where the map in the direct image complex drops rank, and this is the (cone over a) conic, defined by the determinant of this matrix.
i1 : M=universalExtension({-3}, {1})
o1 = cokernel {3, 0} | x_0 x_1 x_2 |
{2, 1} | y_0 0 0 |
{2, 1} | y_1 y_0 0 |
{2, 1} | 0 y_1 y_0 |
{2, 1} | 0 0 y_1 |
ZZ ZZ 5
o1 : ---[x ..x ][y ..y ]-module, quotient of (---[x ..x ][y ..y ])
101 0 2 0 1 101 0 2 0 1
|
i2 : S = ring M; |
i3 : A = coefficientRing S; |
i4 : F = directImageComplex M
2 2
o4 = 0 <-- A <-- A <-- 0
-2 -1 0 1
o4 : ChainComplex
|
i5 : F.dd_0
o5 = | x_1 x_0 |
| -x_2 -x_1 |
2 2
o5 : Matrix A <--- A
|
i6 : det (F.dd_0)
2
o6 = - x + x x
1 0 2
o6 : A
|
Here is a larger example, the extension of ${\mathcal O}_{\PP^1}^2$ by ${\mathcal O}_{\PP^1}(6)$
i7 : r=3; |
i8 : d=6; |
i9 : M=universalExtension(splice {(r-1):0}, {d})
o9 = cokernel {0, 0} | x_0 x_1 x_2 x_3 x_4 |
{0, 0} | x_5 x_6 x_7 x_8 x_9 |
{-1, 1} | y_0 0 0 0 0 |
{-1, 1} | y_1 y_0 0 0 0 |
{-1, 1} | 0 y_1 y_0 0 0 |
{-1, 1} | 0 0 y_1 y_0 0 |
{-1, 1} | 0 0 0 y_1 y_0 |
{-1, 1} | 0 0 0 0 y_1 |
ZZ ZZ 8
o9 : ---[x ..x ][y ..y ]-module, quotient of (---[x ..x ][y ..y ])
101 0 9 0 1 101 0 9 0 1
|
i10 : S = ring M; |
i11 : A = coefficientRing S; |
i12 : L = for i from -d to 0 list directImageComplex(S^{{i,0}}**M);
|
i13 : netList L
+-----------------------+
| 10 1 |
o13 = |0 <-- A <-- A <-- 0|
| |
|-2 -1 0 1|
+-----------------------+
| 8 2 |
|0 <-- A <-- A <-- 0 |
| |
|-2 -1 0 1 |
+-----------------------+
| 6 3 |
|0 <-- A <-- A <-- 0 |
| |
|-2 -1 0 1 |
+-----------------------+
| 4 4 |
|0 <-- A <-- A <-- 0 |
| |
|-2 -1 0 1 |
+-----------------------+
| 2 5 |
|0 <-- A <-- A <-- 0 |
| |
|-2 -1 0 1 |
+-----------------------+
| 6 |
|0 <-- 0 <-- A <-- 0 |
| |
|-2 -1 0 1 |
+-----------------------+
| 9 |
|0 <-- 0 <-- A <-- 0 |
| |
|-2 -1 0 1 |
+-----------------------+
|
i14 : maps = apply(L, F-> F.dd_0)
o14 = {| x_0 |, | x_1 x_0 |, | x_2 -x_0 -x_1 |, | x_3 x_0 x_1 x_2 |, | -x_0 -x_1 -x_2 x_4 -x_3 |, 0, 0}
| x_5 | | x_6 x_5 | | x_7 -x_5 -x_6 | | x_8 x_5 x_6 x_7 | | -x_5 -x_6 -x_7 x_9 -x_8 |
| -x_1 | | -x_2 -x_1 | | -x_3 x_1 x_2 | | -x_4 -x_1 -x_2 -x_3 |
| -x_6 | | -x_7 -x_6 | | -x_8 x_6 x_7 | | -x_9 -x_6 -x_7 -x_8 |
| x_2 | | x_3 x_2 | | x_4 -x_2 -x_3 |
| x_7 | | x_8 x_7 | | x_9 -x_7 -x_8 |
| -x_3 | | -x_4 -x_3 |
| -x_8 | | -x_9 -x_8 |
| x_4 |
| x_9 |
o14 : List
|