substitutions in differential equations



  Hello,

I'm new to this mailing list and therefore I do not know, weather this 
is the right place for asking quastions.

My question is, is there a way to substitute differential operators in 
explorations.

Maybe an example can show what I mean.

There are two different things I want to do. the first one is to 
substitute only the function, not the derivatives, to zero.

Mathematically:

f(x=a) = 0 where a can be a constant number for example 0.

therefore I want to do (only the inputs):

Input: depends( f , x );
Input: P : x - f / diff( f , x );
Input: atvalue( f( x ) , x = 0 , 0); # or something else.

output for P
x - f / (d/dx f);

Expected output for P after substitution or whatever:
P = x # because of the f(0) = 0

What I have tried:
1)
Input: P,x=0;
Output:
Attempt to differentiate with respect to a number: 0

2)
Input: subst(0, f, P);
Output: Division by 0

Is there any other way to simplify those equations?

The second thing is about substitutions aswell but here I want to 
substitute a whole expr like : "(d^2/dx^2) t" to A(x) or whatever.

Is there a way to do it?

Example:

Input: Q : P + diff( t , x);
Output: x - f / (d/dx f) + d/dx t;

after that something like:
Input: subst( Q , diff( t ,x) , a)
Expected Output: x - f / (d/dx f) + a;

It would be great, if you would have an answer for me.

Tanks.