# Push forward vector field

I currently have a very limited understanding of this topic and would be very grateful if someone could work me through a solution to this question:

Let $\phi : M \to N$ be a diffeomorphism of manifolds. For a vector field $X$ on $M$ define the push-forward vector field $Z = \phi_* X$ on $N$ by $$Z|_y = \mathrm{d}\phi_x(X|_x)$$ where $x = \phi^{-1}(y)$. Show that for any function $f:N \to \mathbb{R}$ $$(\phi_*X)\cdot f = (X \cdot (f \circ \phi))\circ \phi^{-1}.$$

Where do I start? I don't really have a great understanding of vector fields to begin with, let alone how to manipulate the algebra to get to this solution. Thanks in advance.

By definition, $(\phi_*X).f=df(y).(\phi_*X)(y)$
$=df(y).d\phi(\phi^{-1}(y))(X(\phi^{-1}(y)))$.
$X.(f\circ \phi)(x)=d(f\circ\phi)(x).X(x)=df(\phi(x)).d\phi(x)(X(x))$.
This implies that $X.(f\circ \phi)(\phi^{-1}(y))=df(\phi(\phi^{-1}(y)).d\phi(\phi^{-1}(y))(X(\phi^{-1}(y)))$
$=df(y).d\phi(\phi^{-1}(y))(X(\phi^{-1}(y))$.