Consider 3 non-commutative elements $A,B,C$ and we have the relation $CB=\alpha BC$.

I want to compute things like : $(A\otimes BC ) ( B \otimes B) = AB \otimes \alpha B^2C$

Is there any package doing this ?

  • 4
    $\begingroup$ Check the NCAlgebra package (I am not very familiar with it so I can't give an answer, but it's the biggest/oldest package dealing with such problems). $\endgroup$ – Szabolcs Mar 21 '19 at 8:25
  • $\begingroup$ try www.github.com/NCAlgebra/NC $\endgroup$ – Slepecky Mamut Mar 21 '19 at 8:39
  • $\begingroup$ This package deals with non commutative algebra but it doesn't seem to treat tensor products $\endgroup$ – Nico045 Mar 21 '19 at 10:16
  • 1
    $\begingroup$ You don't need a package. Just give Mathematica the rules for working with non-commutative multiplication and tensor product. $\endgroup$ – Somos Mar 21 '19 at 14:46

Using Dot for your noncommutative multiplication, we can encode your relation with:

B /: C . B := α B . C

Using KroneckerProduct for your "⊗" operation, the output you want to get can then be obtained with:

KroneckerProduct[A, B.C].KroneckerProduct[B, B] //TensorExpand

α KroneckerProduct[A.B, B.B.C]

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.