Cadabra
a field theory motivated approach to computer algebra

CommutingAsProduct

Makes an object behave as a product when commuting.
This makes an object behave, for purposes of commutation rules, as a product. That is, when trying to move another object through it, the sign that is picked up is determined by moving the other object through all the non-index children.
A(#)::CommutingAsProduct; {Q,X,Y,Z}::AntiCommuting; ex:= A(Y)(Z)(Q)*A(X);
\(\displaystyle{}\text{Attached property CommutingAsProduct to }A(\#).\)
\(\displaystyle{}\text{Attached property AntiCommuting to }(Q, X, Y, Z).\)
\(\displaystyle{}A(Y Z Q) A(X)\)
sort_product(_);
\(\displaystyle{}-A(X) A(Y Z Q)\)
The minus sign arises because it would also have been present when sorting (Y*Z*Q)*X.
Copyright © 2001-2017 Kasper Peeters
Questions? info@cadabra.science