h = masseyTripleProduct(A,h1,h2,h3)
These functions compute the Massey triple product of either three homology classes or three cycles that represent nonzero homology classes for which the Massey triple product is defined.
For an example, we return to an example due to Lukas Katthan which was discussed in isGolod. First, we define the algebra:
|
|
|
|
The following are cycles:
|
|
|
and z1*z2, z2*z3 vanish in homology:
|
|
Note that the first return value of getBoundaryPreimage indicates that the inputs are indeed boundaries, and the second value is the lift of the boundary along the differential.
Given cycles z1,z2,z3 such that z1*z2 and z2*z3 are boundaries, the Massey triple product of the homology classes represented by z1,z2 and z3 is the homology class of lift12*z3 + z1*lift23. To see this, we compute and check:
|
|
One may also compute Massey triple products directly on elements of the homology algebra itself, as is seen with the command masseyTripleProduct:
|
|
|
|
|
|
The object masseyTripleProduct is a method function.