Logged In: YES
user_id=895922
Originator: YES
Another thing: 'at' doesn't check for the "freeof" case; for example:
(%i24) diff(f(z),z);
(%o24) 'diff(f(z),z,1)
(%i25) at(%,[x=1]);
(%o25) at('diff(f(z),z,1),[x=1])
(%i26) at(diff(f(x),x),[x=b]);
(%o26) at('diff(f(x),x,1),[x=b])
(%i27) at(%,[b=a]);
(%o27) at('diff(f(x),x,1),[x=b])
(%o27) should either be at('diff(f(x),x,1),[x=a]) or at(at('diff(f(x),x,1),[x=b]),[b=a])
Also, I think 'at' should be a simplifying function.
Logged In: YES
user_id=895922
Originator: YES
Another thing: 'at' doesn't check for the "freeof" case; for example:
(%i24) diff(f(z),z);
(%o24) 'diff(f(z),z,1)
(%i25) at(%,[x=1]);
(%o25) at('diff(f(z),z,1),[x=1])
Logged In: YES
user_id=895922
Originator: YES
And yet another thing: Maxima should sort the second argument to 'at.' This
would allow more expressions to simplify to zero; example:
(%i29) diff(f(x,y),x,1,y,1);
(%o29) 'diff(f(x,y),x,1,y,1)
(%i30) at(%,[x=a,y=b]) - at(%,[y=b,x=a]);
(%o30) at('diff(f(x,y),x,1,y,1),[x=a,y=b])-at('diff(f(x,y),x,1,y,1),[y=b,x=a])
Since 'at' does multiple substitutions in series, not parallel, the logic could be
complicated. Should the subs be done in parallel?
Fixed in comm2.lisp revision 1.38. The composition of AT is more correct and the list of equations is sorted.
There is one open problem: AT doesn't check for the "freeof" case. This topic needs more discussions and perhaps a new bug report.
Closing this bug report as fixed.
Dieter Kaiser
Log in to post a comment.