a field-theory motivated approach to computer algebra

## CommutingAsSum

Makes an object behave as a sum when commuting.
This makes an object behave, for purposes of commutation rules, as a sum.
A(#)::CommutingAsSum; {Q,X,Y,Z}::AntiCommuting; ex:= A(Y)(Z)*A(X);
$$\displaystyle{}\text{Attached property CommutingAsSum to }A(\#).$$
$$\displaystyle{}\text{Attached property AntiCommuting to }(Q, X, Y, Z).$$
$$\displaystyle{}A(Y Z) A(X)$$
sort_product(_);
$$\displaystyle{}-A(X) A(Y Z)$$
The minus sign arises because it would also have been present when sorting the expression (Y+Z)*X.