next | previous | forward | backward | up | top | index | toc | Macaulay2 website
DGAlgebras :: koszulComplexDGA

koszulComplexDGA -- Returns the Koszul complex as a DGAlgebra

Synopsis

Description

To construct the Koszul complex of a minimal set of generators as a DGAlgebra one uses

i1 : R = ZZ/101[a,b,c]/ideal{a^3,b^3,c^3}

o1 = R

o1 : QuotientRing
i2 : A = koszulComplexDGA(R)

o2 = {Ring => R                      }
      Underlying algebra => R[T ..T ]
                               1   3
      Differential => {a, b, c}

o2 : DGAlgebra
i3 : complexA = toComplex A

      1      3      3      1
o3 = R  <-- R  <-- R  <-- R
                           
     0      1      2      3

o3 : ChainComplex
i4 : complexA.dd

          1                 3
o4 = 0 : R  <------------- R  : 1
               | a b c |

          3                        3
     1 : R  <-------------------- R  : 2
               {1} | -b -c 0  |
               {1} | a  0  -c |
               {1} | 0  a  b  |

          3                  1
     2 : R  <-------------- R  : 3
               {2} | c  |
               {2} | -b |
               {2} | a  |

o4 : ChainComplexMap
i5 : ranks = apply(4, i -> numgens prune HH_i(complexA))

o5 = {1, 3, 3, 1}

o5 : List
i6 : ranks == apply(4, i -> numgens prune HH_i(koszul vars R))

o6 = true

One can also compute the homology of A directly with HH_ZZ DGAlgebra. One may also specify the name of the variable using the Variable option.

Ways to use koszulComplexDGA :

For the programmer

The object koszulComplexDGA is a method function with options.