Yes, there are lots of ways to simplify these expressions. In this case,
rat suffices (don't even need factor) -- the del's drop out. But there are
messier cases:
(%i1) diff(x*y)/diff(x/y);
(%o1) (x*del(y)+y*del(x))/(del(x)/y-x*del(y)/y^2)
(%i2) factor(%);
(%o2) -y^2*(x*del(y)+y*del(x))/(x*del(y)-y*del(x)) <<< no better
Ratsubst to the rescue:
(%i3) ratsubst('diff(y,x),del(x)/del(y),%o1);
(%o3) (y^3*'diff(y,x,1)+x*y^2)/(y*'diff(y,x,1)-x)
(%i4) solve(%o3=z,'diff(y,x));
(%o4) ['diff(y,x,1) = (x*z+x*y^2)/(y*z-y^3)] << another way of looking at
it
-s
On Mon, Feb 20, 2012 at 10:40, Henry Baker <hbaker1 at pipeline.com> wrote:
> You should probably wrap a "factor" around this, to try to get rid of as
> many del()'s as possible.
>
> E.g.,
>
> (%i1) diff(x^2*y^2)/diff(x*y);
> 2 2
> 2 x y del(y) + 2 x y del(x)
> (%o1) -----------------------------
> x del(y) + y del(x)
> (%i2) %,factor;
> (%o2) 2 x y
>
> At 11:31 PM 2/19/2012, Robert Dodier wrote:
> >On 2/16/12, Stavros Macrakis <macrakis at alum.mit.edu> wrote:
> >
> >> Actually, a little reflection makes it clear that diff(f(x),g(x)) should
> >> not be an error or a noun form, because in fact it is perfectly
> >> well-defined and meaningful:
> >>
> >> diff(A,B) == ev(diff(A)/diff(B),del)
> >
> >Looks OK to me. OK by me to merge this in.
> >
> >best
> >
> >Robert Dodier
>
>