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

moduleAsExt -- Find a module with given asymptotic resolution

Synopsis

Description

The routine ``moduleAsExt'' is a partial inverse to the routine ExtModule, computed following ideas of Avramov and Jorgensen: given a module E over a polynomial ring k[x_1..x_c], it provides a module N over a specified polynomial ring in n variables such that Ext(N,k) agrees with $E'=E\otimes \wedge(k^n)$ after truncation. Here the grading on E is taken to be even, while $\wedge(k^n)$ has generators in degree 1. The routine hfModuleAsExt computes the resulting hilbert function for E'. This uses ideas of Avramov and Jorgensen. Note that the module Ext(N,k) (truncated) will automatically be free over the exterior algebra $\wedge(k^n)$ generated by Ext^1(k,k); not a typical Ext module.

More precisely:

Suppose that $R = k[a_1,\dots, a_n]/(f_1,\dots,f_c)$ let $KK = k[x_1,\dots,x_c]$, and let $\Lambda = \wedge k^n$. $E = KK\otimes\Lambda$, so that the minimal $R$-free resolution of $k$ has underlying module $R\otimes E^*$, where $E^*$ is the graded vector space dual of $E$.

Let MM be the result of truncating M at its regularity and shifting it so that it is generated in degree 0. Let $F$ be a $KK$-free resolution of $MM$, and write $F_i = KK\otimes V_i.$ Since linear forms over $KK$ correspond to CI operators of degree -2 on the resolution G of k over R, we may form a map $$ d_1+d_2: \sum_{i=0}^m G_{i+1}\otimes V_{m-i}^* \to \sum_{i=0}^m G_i\otimes V_{m-i}^* $$ where $d_1$ is the direct sum of the differentials $(G_{i+1}\to G_i)\otimes V_i^*$ and $d_2$ is the direct sum of the maps $\phi_i$ defined from the differentials of $F$ by substituting CI operators for linear forms, $\phi_i: G_{i+1}\otimes V_i \to G_{i-1}\otimes V_{i-1}$. The script returns the module N that is the cokernel of $d_1+d_2$.

The module $Ext_R(N,k)$ agrees, after a few steps, with the module derived from $MM$ by tensoring it with $\Lambda$, that is, with the moduleß $$ MM' = \sum_j (MM'(j)\otimes \Lambda_j) $$ so that $MM'_p = (MM_p\otimes Lambda_0) \oplus (MM_{p-1}\otimes Lambda_1) \oplus\cdots$.

The function hfModuleAsExt computes the Hilbert function of MM' numerically from that of MM.

i1 : kk = ZZ/101;
i2 : S = kk[a,b,c];
i3 : ff = matrix{{a^4, b^4,c^4}};

             1      3
o3 : Matrix S  <-- S
i4 : R = S/ideal ff;
i5 : Ops = kk[x_1,x_2,x_3];
i6 : MM = Ops^1/(x_1*ideal(x_2^2,x_3));
i7 : N = moduleAsExt(MM,R);
i8 : betti res( N, LengthLimit => 10)

             0  1  2  3  4  5  6  7  8  9 10
o8 = total: 36 27 29 31 33 35 37 39 41 43 45
        -6: 18  6  .  .  .  .  .  .  .  .  .
        -5:  .  .  .  .  .  .  .  .  .  .  .
        -4: 18 21 21  7  .  .  .  .  .  .  .
        -3:  .  .  .  .  .  .  .  .  .  .  .
        -2:  .  .  8 24 24  8  .  .  .  .  .
        -1:  .  .  .  .  .  .  .  .  .  .  .
         0:  .  .  .  .  9 27 27  9  .  .  .
         1:  .  .  .  .  .  .  .  .  .  .  .
         2:  .  .  .  .  .  . 10 30 30 10  .
         3:  .  .  .  .  .  .  .  .  .  .  .
         4:  .  .  .  .  .  .  .  . 11 33 33
         5:  .  .  .  .  .  .  .  .  .  .  .
         6:  .  .  .  .  .  .  .  .  .  . 12

o8 : BettiTally
i9 : hfModuleAsExt(12,MM,3)

o9 = (23, 25, 27, 29, 31, 33, 35, 37, 39, 41)

o9 : Sequence

Caveat

The elements f_1..f_c must be homogeneous of the same degree. The script could be rewritten to accommodate different degrees, but only by going to the local category

See also

Ways to use moduleAsExt :

For the programmer

The object moduleAsExt is a method function.