Proving the algebraic set corresponding to a polynomial is infinite.

This is an exercise from Miles Reid, Undergraduate Algebraic Geometry. The proof has two parts, one of which I can do and one of which I can't. I could have some misunderstandings about notations here as well so anything people can point out will be helpful.

a) Let $k$ be an infinite field and $f\in k[X_1,...,X_n]$ be nonconstant. Prove $$V(f)=\{P\in \mathbb{A}^n_k|f(P)=0\}\neq \mathbb{A}^n_k.$$

$A^n_k$ here is the point set $k^n$.

My proof (which follows from a hint of his) is write $f=\sum a_i(X_1,...,X_{n-1})X_n^i$. Then $V(f)$ consists of two kinds of points

1. $P=(p_1,...,p_{n-1},p_n=0)$
2. $P=(p_1,...,p_{n-1},p_n\neq 0 )$ with $\sum a_i(p_1,...,p_{n-1})p_{n}^i=0$

In the first case we have $V(f)\neq \mathbb{A}^n_k$. Assume we have $P$ like in the second case and now write $f=\sum b_i(X_1,...,\hat{X}_{n-1},X_n)X_{n-1}^i$. Here again, either $P=(p_1,...,p_{n-1}=0,p_n\neq 0)$ and $V(f)\neq \mathbb{A}^n_k$ or $p_{n-1}\neq 0$, and by induction we should get to $V(f)\neq \mathbb{A}^n_k$.

b) Now let $k$ be algebraically closed. Let $a_m(X_1,...,X_{n-1})X_n^m$ be the leading term of $f$. Show that when $a_m\neq 0$, there is a finite set of points of $V(f)$ corresponding to every value $(X_1,...,X_{n-1})$. Thus, $V(f)$ infinite for $n \geq 2$.

So I have kinda no idea what to do. A given value of $(X_1,...,X_{n-1})$ corresponds to points in $V(f)$ $P=(p_1,...,p_{n-1},p_n)$ where $f(P)=0$, but I don't know anything about the value of $p_n$; if it vanishes then clearly there is a correspondence $(X_1,...,X_n)\to (p_1,...,p_{n-1},0)$ but I guess I need to show there are a finite number of $p_n$ where this is true and I don't know how.

-
For (b) given any fixed value $(X_1,\ldots,X_{n-1})$, then you're just looking at a polynomial in the variable $X_n$ no? – user38268 Aug 23 '13 at 23:21

For the first part, fix $a_1,...,a_{n-1}\in k$ and consider the polynomial $g(x)=f(a_1,...,a_{n-1},x)$. Then $g$ is a polynomial in one variable so its solution set is finite. As $k$ is infinite, this means that there exists $a_n$ such that $g(a_n)\not= 0$. Then the point $(a_1,...,a_n)$ is in $\mathbb{A}_k^n$ but not in $V(f)$.
For the second part, note that for any $a_1,...,a_{n-1}\in k$ the polynomial $g(x)$ from above must have at least one solution. This is because $k$ is algebraically closed. Since all algebraically closed fields are infinite, there are infinitely many choices for the first $n-1$ coordinates.
Dear jkramerm47, what about $f(x_1,x_2)=x_1\cdot x_2$ and $a_1=0$: do you think that the solution set of $g(x)=0\cdot x$ is finite and that you can find $a_2$ with $g(a_2)=0\cdot a_2\neq 0$ ? – Georges Elencwajg Aug 26 '13 at 18:31
He didn't say it explicitly in his answer, but part of the assumption for the proof is that $a_m\neq 0$ for highest $m$. – levitopher Aug 31 '13 at 5:08