How can I handle Operator Algebra ?

• To: mathgroup at smc.vnet.net
• Subject: [mg6482] How can I handle Operator Algebra ?
• From: "Koichiro Yamaguchi" <tigercat at da.mbn.or.jp>
• Date: Mon, 24 Mar 1997 21:38:28 -0500 (EST)
• Organization: Media,Tokyo,JAPAN
• Sender: owner-wri-mathgroup at wolfram.com

```Hello,

I am a beginner user of Mathematica version 2, so following question is
based on what I have done on Mathematica version 2.

I have a question about operator algebra. I think this question might be a
FAQ. But I could find no "answers for FAQ" of this newsgroup on my
newsserver, and also no explanation in the S.Wolfram's "Mathematica book
for version 3". So excuse me for asking this.

According to "Mathematica book" we can treat pure functions such as those
include some differential operators using "# and &" or "Function". Since it
seemed both of them gave same answers, only the results using "# and &" are
written below.

I tried to make an angular momentum operator as follows.

dv={D[#,x]&,D[#,y]&,D[#,z]&};
r={x,y,z};
Needs["Calculus`VectorAnalysis`"];
l=CrossProduct[r,dv]

And here I've got what I expected.

{-(z (D[#1, y] & )) + y (D[#1, z] & ),

z (D[#1, x] & ) - x (D[#1, z] & ),

-(y (D[#1, x] & )) + x (D[#1, y] & )}

Then I applied this operator to the length r.

rl=Sqrt[ DotProduct[r,r] ];
lx=l[[1]]
-(z (D[#1, y] & )) + y (D[#1, z] & )
rl // lx

But Mathematica did not accept multiple "&".
2    2    2
(-(z (D[#1, y] & )) + y (D[#1, z] & ))[Sqrt[x  + y  + z ]]

In case of single "&", I could get a correct answer.

lx2= (-z D[#,y] + y D[#,z])&
-(z D[#1, y]) + y D[#1, z] &
rl // lx2
0

However, if I use single "&" to define differential operator vector like
this,

dv={D[#,x],D[#,y],D[#,z]}&;

Mathematica rejects to recognize this as a vector. How should I I handle
Mathematica to do some elementary operator algebra like this ?