Proving that if $f'$ has at most $n-1$ zeros, then $f$ has at most $n$ zeros Is this proof correct?
The problem is the following.

Let $n$ be a natural number. Suppose that the function $f:\mathbb{R}\to\mathbb{R}$ is differentiable and that the following equation has at most $n-1$ solutions:
  $$f'(x)=0, \quad x \in \mathbb{R}.$$
  Prove that the following equation has at most $n$ solutions:
  $$f(x)=0,\quad x \in \mathbb{R}.$$

My proof is:
Let $f'(x)=0$ have solutions $x_1$, $x_2,\ldots ,x_{n-1}$.
since 
$$f'(x_1)=\lim\limits_{{x}\to{x_1}}\frac{f(x)-f(x_1)}{x-x_1} = 0$$
and doing so, $f(x)=f(x_{n-1})$
Therefore $f(x)=f(x_1)=f(x_2)=\cdots=f(x_{n-1})$.
Let $x_n$ be one of solutions of $f(x)=0$.
$$0=f(x_n)=f(x_1)=f(x_2)=\cdots=f(x_{n-1}),$$ 
so $f(x)=0$ has solutions like $x_1$, $x_2,\ldots, x_n$.
If there is wrong part, please let me know.
 A: Use the mean value theorem.
Fix $n=3$. (The argument generalizes for arbitrary $n \in \mathbb{N}$).
Suppose $f(x)=0$ has more than three (distinct) solutions, say $x_1 < x_2 < x_3 < x_4$. Then the mean value theorem (Rolle's Theorem) implies that there exist $c, d, e \in \mathbb{R}$ such that $x_1 < c < x_2 < d < x_3 < e < x_4$ and $f'(c)=f'(d)=f'(e)=0$, contradiction.
A: I'm not that clear on what you're doing, but your solution looks wrong. Just the conclusion that $f$ is zero at the the zeros of $f'$ (you have $n$ of them, by the way) is clearly false in general. You seem to be trying to do some variable point argument with $x$, and using the fact that the limit is zero to conclude that individual terms are zero. 
A valid solution is to note that there is a zero of $f'$ between any two zeros of $f$ by the mean value theorem. 
A: *

*You cannot simply assume that $f'(x)$ is a polynomial. That is not given in the problem, and there are plenty of other functions that can have a specific number of zeros.  (Also, the problem says that $f'(x)=0$ has at most $n-1$ solutions, not that it has exactly $n-1$ solutions, yet you assume it has this maximum).

*Even if you know that $f'(x)$ is a polynomial, you do not know that the degree is at most $n-1$; it's possible for a polynomial to have degree strictly larger than $k$, and yet have only $k$ distinct real roots.

*It's false that the fact that $f'(x_1)=0$ implies that $f(x_1)=0$. 

*The statement "and doing so, $f(x)=f(x_{n-1})$" makes no sense to me.

*You never showed that there are at most $n$ solutions to $f(x)=0$. 

*You seem to believe that the same numbers that are zeros of the derivative are zeros of the original function. This is not true, even for polynomials. $f(x) = x^2 - 3x + 2$ has zeros at $x=1$ and $x=2$, but the zero of $f'(x) = 2x-3$ is at $x=\frac{3}{2}$.
So, I would say that pretty much all of this argument is incorrect.
Suggestion. Either use the Mean Value Theorem, or use Darboux's Theorem.
Here's how an argument using the latter would go: 
Suppose the zeros of the derivative are $a_1\lt a_2 \lt\cdots \lt a_{n-1}$. By Darboux's Theorem, the derivative cannot change signs except at the points where it is equal to $0$. That means, for example, that it is either always positive or it is always negative on $(-\infty,a_1)$. That means that $f(x)$ is strictly monotone on $(-\infty,a_1)$: either strictly increasing, or strictly decreasing. How many zeros can a strictly monotone function have? So, how many zeros can $f(x)$ have on $(-\infty,a_1)$?
What about $(a_1,a_2)$? $(a_2,a_3)$? Etc.
But I suspect you'll want to use the Mean Value Theorem; Darboux's Theorem is not often covered in basic analysis courses.
A: Suppose $f(x)=0$ has more than n solutions and then show that then $f'(x)=0$ would have more than $n-1$ solutions.
It's a proof by contrapositive. 
Instead of showing that $a\implies b$, you show that $\neg b \implies \neg a$.
