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

coApproximation -- Maximal Cohen-Macaulay co-approximation of M

Synopsis

Description

If R is a Gorenstein ring, and M is a finitely generated R-module, then, according to the theory of Auslander and Buchweitz (a good exposition is in Ding's Thesis) there are unique exact sequences $$0\to K \to M' \to M\to 0$$ and $$0\to M \to N\to M''\to 0$$ such that K and N are of finite projective dimension, M' and M'' are maximal Cohen-Macaulay, and M'' has no free summands. The call

approximation M

returns the map $M'\to M$, while the call

coApproximation M

returns the map $M\to N$.

Since the script coApproximation begins by computing the approximation, it may shorten the computation if the user knows the depth of M in advance, specified with the option Depth => d.

i1 : setRandomSeed 100

o1 = 100
i2 : c = 3;d=3;
i4 : S = setupRings(c,d);
i5 : R = S_c; -- complete intersection, codim = c
i6 : R' = S_(c-1); --codim c-1
i7 : Mc = coker vars R;
i8 : (M,k,p) = setupModules(S,Mc); --M_(c-1) is Mc as an R_(c-1)-module
i9 : ca = coApproximation M_(c-1);

o9 : Matrix
i10 : M'' = coker ca;
i11 : N = target ca

o11 = cokernel {-4} | x_0^2x_1^2x_2 14x_0^2x_2^3  8x_1^2x_2^3     14x_2 |
               {-4} | x_0^2x_2^3    x_0^2x_1x_2^2 8x_2^5          x_1   |
               {-4} | 15x_1^2x_2^3  8x_2^5        15x_0x_1^2x_2^2 x_0   |

                               3
o11 : R'-module, quotient of R'
i12 : profondeur M'' == dim ring M'' -- an MCM module

o12 = true
i13 : M'' == source approximation(M'', Total=>false) -- no free summands

o13 = false
i14 : 2 == length res(N, LengthLimit =>10) -- projective dimension <\infty

o14 = true

See also

Ways to use coApproximation:

For the programmer

The object coApproximation is a method function with options.