Defining derivative functions.



Thanks to the feedback, I'll just follow up and provide my final 
solution (I chose the easiest method, that is, least amount of typing ;)

eq : s*x^3 + t*x^2 +u*x + v $
define( f(x), eq ) $
define( df(x), diff( eq, 'x ) ) $


edA-qa mort-ora-y wrote:
> I need a way to define a function and its derivative as functions.  That 
> is, I want to accomplish what one might expect the following would do:
> 
> f(x) := q*x^2 + r;
> df(x) := diff( f('x), 'x );
> 
> But if you do this the x variable in df(x) is in no way related to the x 
> variable in f(x).  If you try this:
> 
> df(x) := diff( f(x), x );
> 
> It fails as obviously you are differentiating with whatever is passed to 
> df(x), not the symbolic variable x anymore.
> 
> I even tried using an intermediary:
> 
> eq : q*x^2 + r;
> f(x) := eq;
> df(x) := diff( eq, 'x );
> 
> But this also didn't work.
> 
> So, how do I do this, that is, create a function and then create its 
> derivative (also as a function).
> 
> 


-- 
edA-qa mort-ora-y
Idea Architect
http://disemia.com/