Factor bug



I tried to do this and got an error.  This seems like a bug to me, but I am not sure if it is a big problem.

(%i20) factor(-hbar^2/(2*m)*diff(f(x),x,2)=E*f(x)-mu*x^4*f(x));
Maxima encountered a Lisp error:
Error in MACSYMA-TOP-LEVEL [or a callee]: MACSYMA-TOP-LEVEL [or a callee] requires more than one argument.
Automatically continuing.
To reenable the Lisp debugger set *debugger-hook* to nil.

After trying to find out the cause it looks like it is f(x)
 
(%i21) factor(x^2+x=y^2+y);
Evaluation took 0.0000 seconds (0.0000 elapsed)
(%o21) x*(x+1)=y*(y+1)

this works just fine.

but this does not


(%i22) factor(f(x)^2+f(x)=f(y)^2+f(y));
Maxima encountered a Lisp error: 
Error in MACSYMA-TOP-LEVEL [or a callee]: MACSYMA-TOP-LEVEL [or a callee] requires more than one argument.
Automatically continuing.
To reenable the Lisp debugger set *debugger-hook* to nil.

It seems to have something to do with the function f(x).  I have not defined f(x) anywhere, I am just writing an expression involving it.  If you get rid of the reference to f(x) and change it to y then it works as expected.  But in the first case then you have to say 'diff or use depends(f,x) and then you get no error

(%i1) depends(f,x);
(%o1) [f(x)]
(%i2) factor(-hbar^2/(2*m)*diff(f,x,2)=E*f-mu*x^4*f);
(%o2) -(('diff(f,x,2))*hbar^2)/(2*m)=f*(E-mu*x^4)

I could not find a bug report about this being reported before but it could be a very old bug I think because of the spelling of MACSYMA instead of Maxima.

Rich





(%i1) build_info()$
Maxima version: 5.16.2
Maxima build date: 7:44 8/18/2008
host type: i686-pc-mingw32
lisp-implementation-type: GNU Common Lisp 
(GCL)lisp-implementation-version: GCL 2.6.8