Question: Physics trouble, again, or what?

June 13 2014 John Fredsted 1448

Consider the following code:

Setup(anticommutativeprefix = psi):
psiFermi := Vector(2,symbol = psi):
psiBose  := Vector(2,symbol = phi):
A := Matrix([[0,1],[1,0]]):
Transpose(psiFermi) . A;
Transpose(psiBose ) . A;

It produces the following output:

Why is the first line, for anticommuting components, not evaluated to the same form as the second line, for commuting components? The actual choice of the matrix A seems immaterial; the odd behaviour is present even if A is chosen to be the identity matrix!

In comparison, the 'contracted' (scalarly) expressions

Transpose(psiFermi) . A . psiFermi,
Transpose(psiBose ) . A . psiBose;

produce the following completely sensible output:

Please Wait...