I'm constantly dealing with non-commutative algebras.
** is inbuilt, non-commutative and associative. That's good :-) But it is not distributive. Rats.
- What is a simple way (I probably won't need much more) to have, say,
(a1 + a2 + a3)**(b1 + b2 + b3)always expand to
a1**b1 + ... + a3**b3, on the fly?
- And if I like to add (also executed on the fly) laws like
a1**b1 = c1 + d1?
- And, last question, if I did and have
a2**a1 = e1forced), do
a2**(c1+d1), respectively, or both to
e1**b1due to flatness of