If A is a DGAlgebra, and z is a cycle of A, then left multiplication of A by z gives a chain map from A to A. This command converts A to a complex using toComplex, and constructs a ChainComplexMap that represents left multiplication by z. This command is used to determine the module structure that is computed in homologyModule.
i1 : R = QQ[x,y,z]/ideal{x^3,y^3,z^3} o1 = R o1 : QuotientRing |
i2 : KR = koszulComplexDGA R o2 = {Ring => R } Underlying algebra => R[T ..T ] 1 3 Differential => {x, y, z} o2 : DGAlgebra |
i3 : z1 = x^2*T_1 2 o3 = x T 1 o3 : R[T ..T ] 1 3 |
i4 : phi = dgAlgebraMultMap(KR,z1) 3 1 o4 = 1 : R <-------------- R : 0 {1} | x2 | {1} | 0 | {1} | 0 | 3 3 2 : R <------------------- R : 1 {2} | 0 x2 0 | {2} | 0 0 x2 | {2} | 0 0 0 | 1 3 3 : R <------------------ R : 2 {3} | 0 0 x2 | o4 : ChainComplexMap |
As you can see, the degree of phi is the homological degree of z:
i5 : degree phi == first degree z o5 = true |
Care is also taken to ensure the resulting map is homogeneous if R and z are:
i6 : isHomogeneous phi o6 = true |
One may then view the action of multiplication by the homology class of z upon taking the induced map in homology:
i7 : Hphi = prune HH(phi); (Hphi#0,Hphi#1,Hphi#2) o8 = ({3} | 1 |, {6} | 0 1 0 |, {9} | 0 0 1 |) {3} | 0 | {6} | 0 0 1 | {3} | 0 | {6} | 0 0 0 | o8 : Sequence |
The object dgAlgebraMultMap is a method function.