# Tensor Product of Two Matrices coming from Algebra Representations

Is there a command in sage to compute the tensor product of two Matrices coming from Algebra representations? In groups, x(v tensor w) = xv tensor xw, and the sage command Matrix1.tensor_product(Matrix2) appears to give the matrix corresponding to this. But in an algebra x(v tensor w) = xv tensor w + v tensor xw. How can I compute the corresponding matrix here?

edit retag close merge delete

What you need is perhaps "tensor sum", "Kronecker sum".

( 2013-11-13 05:51:06 +0200 )edit

Sort by » oldest newest most voted

Hi,

If M1 is your first matrix (of dimension n1) and M2 is your second matrix (of dimension n2), then the answer should be:

M1.tensor_product(identity_matrix(n2)) +
identity_matrix(n1).tensor_product(M2)


Vincent

more

M1 "tensor_sum" M2 = eye(n2) "tensor_product" M1 + eye(n1) "tensor_product" M2 .. the tensor product operation is not commutative, I guess. Hence, identity_matrix(n2).tensor_product(M1) + M2.tensor_product(identity_matrix(n1)) , or?

( 2013-11-13 05:54:20 +0200 )edit

but this command is too long.. we have to write a my_function or the function "tensor_sum" is already implemented in some packages, such as maxima, Scipy ....

( 2013-11-13 05:57:16 +0200 )edit