How assign a function which is a derivative of another function

I am trying to assign a function which is a derivative of a previous on:

f[x_] := x^2;
D[f[x], x]

I would like j to be the derivative of f, so it would be also a function of x (namely, 2x)

How do I do that?

Trying to use do it with the following line gives an error

j[x_] := D[f[x], x]
j[1]

works on my computer. maybe you previously used f or j.

Hi Omer,

f[x_] := x^2;
j[x_] := D[f[x], x]

In the above, the definition of j uses SetDelayed ( := ). This means it will not evaluate the right side until the definition is used.

In[3]:= j[1]

During evaluation of In[3]:= General::ivar: 1 is not a valid variable. >>

So when we evaluate j[1], x is replaced by 1 in D[f[x],x] before the derivative is attempted, which does not work.

Below, Set rather than SetDelayed is used in the definition.

In[4]:= jj[x_] = D[f[x], x]

Out[4]= 2 x

In[5]:= jj[1]

Out[5]= 2

By using Set ( = ) rather than SetDelayed, the symbolic derivative is evaluated immediately and used as the definition.

Excellent! Thanks for the explanation