Strange Bug(?)



On 4/17/08, David Ronis <ronis at ronispc.chem.mcgill.ca> wrote:

>  I define a function C(s,sp):= A(s+sp)+B(s,sp)+B(sp,s);  where A and B
>  are defined earlier in the code.  Clearly, C(s,sp) should be symmetric
>  in s and sp.  However, if I simply type C(s,sp) at the maxima prompt,
>  what I get isn't.  On the other hand, C(x,y) is.

Well, I get is(C(s, sp) = C(sp, s)) => true. Doesn't that mean C is
symmetric? Maybe I am missing something here. What does
C(s, sp) - C(sp, s) yield when you try it?

It seems plausible that binding s to 'sp and sp to 's (by the function
call C(sp, s)) could cause strangeness in evaluation,
but I don't actually see any strangeness.

>  P.S., one last thing, is there some what to tell maxima that a function
>  is positive?  I don't think that I should have to have copies of some of
>  the assumes.

declare recognizes posfun (e.g. declare(foo, posfun)) but I don;t know if
the simplifier can do much with it.

best

Robert Dodier