>>11646902y is supposed to be a function of x, so it is actually y(x). The same holds true for y'(x) obviously.
If you only shift the y function. which actually entails a infinitesimal variation of the function itself, then you get a new function Y(x), which only differs infinitesimally little from y(x).
Now, if you reconsider the function and write it as f(x,y(x),y'(x)), you actually only differentiate by y and y' because x remains constant, so the function can be rewritten as f(a,y,y') which differentiated yields df(a,y,y') = (df/dy)*?y + (df/dy')*?y' where ?y = Y-y represents any small change of the function y independent of x.
>Is it the chain rule?No, It's the differentiation of a function with three arguments where the first one is taken as constant.
>if we change y, why does y' change too?Because dy/dx = y' and if we change y by ?y we get d(y+?y/dx which is y'+d?y/dx or since d?y/dx is equal to ?dy/dx, you get a new Y' = y'+?y'