next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
Macaulay2Doc :: ChainComplex _ ZZ

ChainComplex _ ZZ -- component

Synopsis

Description

i1 : R = QQ[x,y,z]/(x^3,y^3,z^3,x*y*z);
i2 : C = res(coker vars R, LengthLimit=>8)

      1      3      7      16      37      86      200      465      1081
o2 = R  <-- R  <-- R  <-- R   <-- R   <-- R   <-- R    <-- R    <-- R
                                                                     
     0      1      2      3       4       5       6        7        8

o2 : ChainComplex
i3 : rank C_7

o3 = 465
i4 : C.dd_3

o4 = {2} | x  0 -z2 0   0  -xy 0 y2 0 0   0  0  0 xz2 xy2 0   |
     {2} | -y 0 0   -z2 yz y2  0 0  0 0   x2 0  0 0   0   x2y |
     {2} | z  0 0   0   0  0   0 0  0 -y2 0  x2 0 0   0   0   |
     {3} | 0  z y   x   0  0   0 0  0 0   0  0  0 0   0   0   |
     {3} | 0  0 0   0   z  y   x 0  0 0   0  0  0 0   0   0   |
     {3} | 0  0 0   0   0  0   0 z  y x   0  0  0 0   0   0   |
     {3} | 0  0 0   0   0  0   0 0  0 0   z  y  x 0   0   0   |

             7       16
o4 : Matrix R  <--- R

Programming hint

The chain complex C is implemented as a hash table, but since the computation of a projective resolution can be stopped prematurely, Macaulay2 doesn't bother populating the hash table with the relevant free modules until explicitly requested by the user, for example, in response to the command C_i described above. The hash table C can be examined directly with code like C#i, but in order to populate the hash table completely, use complete(ChainComplex).

See also