Question: How do I define commutators of operators which are functions in the Maple Physics package?

I am trying to use second quatized operators in the Maple Physics package.  These operators obey the commutation relations:

[psiA(x1),psiB(x2)] = Dirac(x1-x2) and [psiA(x1),psiC(x2)] = 0 for example.  The commutator therefore depends on the arguments of the operators.


> with(Physics);

> Setup(quantumoperators = {psiA,psiB,psiC},algebrarules={%Commutator(psiA(w),psiB(v)) = Dirac(w-v),%Commutator(psiA(w),psiC(v))=0})

I get the following behaviour:

> Simplify(Commutator(psiA(s),psiB(r)));


which is correct.

But if I try

> Simplify(Commutator(psiA(s),psiC(r)))

I get the unresolved:  [psiA(s),psiC(r)]_

Using the parameter names in the initial commutator description gives the correct result

> Simplify(Commutator(psiA(w),psiC(v)))


So - in summary, when my quantum operators are functions of a variable, and the commutators depend on that variable, I am not able to define those functions which commutate (psiA and psiC here).  Is there a better way to setup this problem, or is the physics package unable to deal with such problems?

Many thanks for any help.

(Note, it is tempting to declare for the operators which always commute %Commutator(psiA,psiC)=0, but then Simplify(Commutator(psiA(w),psiC(v)))  gives the error "Error, (in Expand) expected the function psiA entering the Commutator algebra to depend on 0 variables, as in the definition of the rule (try > Setup(query, algebrarules)); received: psiA(w)")

Please Wait...