next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
DGAlgebras :: torAlgebra(Ring,Ring)

torAlgebra(Ring,Ring) -- Computes Tor_R(S,k) up to a specified generating and relating degree.

Synopsis

Description

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

o1 = R

o1 : QuotientRing
i2 : M = coker matrix {{a^3*b^3*c^3*d^3}};
i3 : S = R/ideal{a^3*b^3*c^3*d^3}

o3 = S

o3 : QuotientRing
i4 : HB = torAlgebra(R,S,GenDegreeLimit=>4,RelDegreeLimit=>8)
Computing generators in degree 1 :      -- used 0.00851077 seconds
Computing generators in degree 2 :      -- used 0.0158153 seconds
Computing generators in degree 3 :      -- used 0.0307326 seconds
Computing generators in degree 4 :      -- used 0.027077 seconds
Finding easy relations           :      -- used 0.576057 seconds
Computing relations in degree 1  :      -- used 0.0319553 seconds
Computing relations in degree 2  :      -- used 0.0823248 seconds
Computing relations in degree 3  :      -- used 0.0811183 seconds
Computing relations in degree 4  :      -- used 0.0858934 seconds
Computing relations in degree 5  :      -- used 0.293031 seconds
Computing relations in degree 6  :      -- used 0.416719 seconds
Computing relations in degree 7  :      -- used 0.575211 seconds
Computing relations in degree 8  :      -- used 0.807813 seconds

o4 = HB

o4 : QuotientRing
i5 : numgens HB

o5 = 35
i6 : apply(5,i -> #(flatten entries getBasis(i,HB)))

o6 = {1, 1, 4, 10, 20}

o6 : List
i7 : Mres = res(M, LengthLimit=>8)

      1      1      4      10      20      35      56      84      120
o7 = R  <-- R  <-- R  <-- R   <-- R   <-- R   <-- R   <-- R   <-- R
                                                                   
     0      1      2      3       4       5       6       7       8

o7 : ChainComplex
Note that in this example, Tor*R(S,k) has trivial multiplication, since the map from R to S is a Golod homomorphism by a theorem of Levin and Avramov.