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

ciOperatorResolution -- "lift resolution from complete intersection using higher ci-operators"

Synopsis

Description

If S is a ring, R = S/(f1..fc) a complete intersection, A the lift to S of an R-free resolution of a module M, and L the Koszul complex resolving R over S, the script constructs the "higher ci operators" on A of Eisenbud-Peeva-Schreyer and uses them to construct a -usually nonminimal- S-free resolution of M. The resulting resolution has the structure of a module over the exterior algebra.

This construction is in some sense dual to the Shamash construction of an R-free resolution from an S-free resolution, that uses higher homotopies and yields a resolution that is a module over the divided power algebra.

The same procedure would work starting with an algebra resolution of any S-algebra R, given a description of the multiplication on the algebra resolution.

i1 : needsPackage "CompleteIntersectionResolutions"

o1 = CompleteIntersectionResolutions

o1 : Package
i2 : S = ZZ/101[a,b,c];
i3 : ff = matrix"a4,b4,c4";

             1      3
o3 : Matrix S  <-- S
i4 : N = coker matrix"a,b,c;b,c,a";
i5 : R = S/ideal ff;
i6 : M = highSyzygy (R**N);
i7 : AA = res(M, LengthLimit => 5);
i8 : Alist = apply(length AA, i-> lift(AA.dd_(i+1), S));
i9 : A = chainComplex Alist;
i10 : L = trueKoszul ff;
i11 : AL = ciOperatorResolution(A,L)

       13      57      117      170      222      282
o11 = S   <-- S   <-- S    <-- S    <-- S    <-- S
                                                  
      0       1       2        3        4        5

o11 : ChainComplex
i12 : G = res pushForward(map(R,S),M)

       13      33      29      9
o12 = S   <-- S   <-- S   <-- S  <-- 0
                                      
      0       1       2       3      4

o12 : ChainComplex
i13 : betti AL

              0  1   2   3   4   5
o13 = total: 13 57 117 170 222 282
          9:  3  .   .   .   .   .
         10:  9  6   .   .   .   .
         11:  .  3   3   .   .   .
         12:  1 18  18  10   .   .
         13:  . 27  18   3   3   .
         14:  .  .  12  27  30  15
         15:  .  3  36  54  30   3
         16:  .  .  27  18  15  39
         17:  .  .   .  18  63  90
         18:  .  .   3  30  54  30
         19:  .  .   .   9   6  27
         20:  .  .   .   .  12  57
         21:  .  .   .   1   9  18
         22:  .  .   .   .   .   .
         23:  .  .   .   .   .   3

o13 : BettiTally
i14 : betti G

              0  1  2 3
o14 = total: 13 33 29 9
          9:  3  .  . .
         10:  9  6  . .
         11:  .  3  . .
         12:  1 15  . .
         13:  .  9  8 .
         14:  .  .  6 .
         15:  .  . 12 .
         16:  .  .  3 3
         17:  .  .  . 3
         18:  .  .  . 3

o14 : BettiTally

See also

Ways to use ciOperatorResolution :

For the programmer

The object ciOperatorResolution is a method function.