Proof of: If $x_0\in \mathbb R^n$ is a local minimum of $f$, then $\nabla f(x_0) = 0$. 
Let $f \colon \mathbb R^n\to\mathbb R$ be a differentiable function.
If $x_0\in \mathbb R^n$ is a local minimum of $f$, then $\nabla f(x_0) = 0$.

Where can I find a proof for this theorem? This is a theorem for max/min in calculus of several variables.

Here is my attempt:
Let $x_0$ = $[x_1,x_2,\ldots, x_n]$
Let $g_i(x) = f(x_0+(x-x_i)e_i)$ where $e_i$ is the $i$-th standard basis vector of dimension $n$.
Since $f$ has local min at $x_0$, then $g_i$ has local minimum at $x_i$.
So by Fermat's theorem, $g'(x_i)= 0$ which is equal to $f_{x_i}(x_0)$.
Therefore $f_{x_i}(x_0) = 0$ which is what you wanted to show.
Is this right?

Do you know the proof for $n=1$? Can you try to mimic it for more variables, say $n=2$? Since $\nabla f(t)$ is a vector what you want to prove is that $\frac{\partial f}{\partial x_i}(t)=0$ for each $i$. That is why you need to mimic the $n=1$ proof, mostly.
Recall that for the $n=1$, we prove that $$f'(t)\leq 0$$ and $$f'(t)\geq 0$$ by looking at $x\to t^{+}$ and $x\to t^{-}$. You should do the same in each $$\frac{\partial f}{\partial x_i}(t)=\lim_{h\to 0}\frac{f(t_1,\dots,t_i+h,\dots,t_n)-f(t_1,\dots,t_n)}h$$ 
ADD Suppose $f:\Bbb R\to \Bbb R$ is differentiable and $f$ has a local minimum in $t=0$. Then $f'(t)=0$. 
P Since $f$ has a local minimum at $t=0$, for suitably small $h$, $$f(t+h)-f(t)\geq 0$$
If $h>0$ then this gives  $$\frac{f(t+h)-f(t)}{h}\geq 0$$
While if $h<0$ we get $$\frac{f(t+h)-f(t)}{h}\leq 0$$
Since $f'$ exist, the side limits also exist and equal $f'(t)$. From the above we conclude $f'(t)\geq 0$ and $f'(t)\leq 0$, so that $f'(t)=0 \;\;\blacktriangle$.
Now, just apply that coordinatewise, and you're done.
