Given R -modules M and N, return the tensor product M tensor R N as an ambient module T, together with the associated map f: M x N -> T. If M and N are graded, then T is graded also.
Given a complex C of R-modules and an R-module N, return C tensor R N. This is a new complex whose i-th term is Ci tensor R N (where Ci is the i-th term of C); the boundary maps are also derived from those of C in the natural way via the functor - tensor R N (see [Eis95, p.64]).
Given an integer i≥0 and R-modules M and N, return Tori(M, N). This is the homology at the i-th term of the complex C tensor R N where C is a free resolution of M.
> R<x,y,z> := PolynomialRing(RationalField(), 3); > M := quo<GradedModule(R, 3) | > [x*y, x*z, y*z], [y, x, y], > [0, x^3 - x^2*z, x^2*y - x*y*z], [y*z, x^2, x*y]>; > N := quo<GradedModule(R, 2) | > [x^2, y^2], [x^2, y*z], [x^2*z, x*y^2]>; > T, f := TensorProduct(M, N); > T; Graded Module R^6/<relations> Relations (Groebner basis): [x^2, y*z, 0, 0, 0, 0], [0, 0, 0, 0, x^2, y*z], [0, 0, 0, 0, 0, x*y*z - y*z^2], [x*y - y*z, 0, 0, 0, 0, 0], [0, x*y - y*z, 0, 0, 0, 0], [y*z, 0, 0, -y*z, x*y, 0], [y, 0, x, 0, y, 0], [0, y, 0, x, 0, y], [0, y^2 - y*z, 0, 0, 0, 0], [0, 0, 0, y^2 - y*z, 0, 0], [0, 0, 0, 0, 0, y^2 - y*z], [y*z^2, 0, 0, -y*z^2, 0, -y*z^2], [0, y*z^2, 0, y*z^2, 0, y*z^2]Note that f maps the cartesian product of M and N into T.
> f(<M.1, N.1>); [1, 0, 0, 0, 0, 0] > [f(<m, n>): n in Basis(N), m in Basis(M)]; [ [1, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0], [0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0], [0, 0, 0, 0, 1, 0], [0, 0, 0, 0, 0, 1] ]Finally we construct associated Tor modules.
> Tor(0, M, N); Graded Module R^6/<relations> Relations: [y, 0, x, 0, y, 0], [0, y, 0, x, 0, y], [0, 0, 0, 0, x*y - y*z, 0], [0, 0, 0, 0, 0, x*y - y*z], [y*z, x^2, 0, 0, 0, 0], [x*y*z - y*z^2, 0, 0, 0, 0, 0], [y^2 - y*z, 0, 0, 0, 0, 0], [0, 0, y*z, x^2, 0, 0], [0, 0, x*y*z - y*z^2, 0, 0, 0], [0, 0, y^2 - y*z, 0, 0, 0], [0, 0, 0, 0, y*z, x^2], [0, 0, 0, 0, y^2 - y*z, 0], [0, 0, 0, 0, x*y*z - y*z^2, 0] > Tor(1, M, N); Graded Module R^2/<relations> with grading [3, 3] Relations: [y - z, 0], [ z, -y], [ z^2, -x*y], [ 0, 0] > Tor(2, M, N); Free Reduced Module R^0