If I evaluate D[f[1, 1], x]
the output is zero, as it should, because f[1,1]
does not depend on x
. The D operator acts on expressions that contain variables with symbolic names such as x,y etc. With D you take the derivative of the expression with respect to a variable.
The Derivative operator acts on functions, which are constructs that have numbered slots: slot number 1, slot number 2 etc. With Derivative
you take the derivative with respect to a slot, which we identify with its number, not with a variable name. The function f[x_,y_]=x^2y
has two slots, forget about the variables which are used to define f
. Then Derivative[1,0][f][x,y]
is the first derivative with respect to the first slot and zeroeth derivative with respect to the second slot. Then the slots are filled in with whatever is x
and y
.
When we call Derivative[0,1][f][whatever arguments]
the f
object must be something for which f[x,y]
makes sense. It does not make sense to call Derivative[0,1][x^2y]
, because (x^2y)[3,2]
has no meaning.
What you call Subscript[f, yx]
would correspond to Derivative[1,1][f][whatever arguments]
.