Proving the countability of algebraic numbers

The hint pretty much tells you what to do.

First, consider the polynomials of degree $1$ in which the sum of the absolute value of the coefficients is $1$; there's only finitely many of them, each with finitely many roots. (Think of this collection as corresponding to the pair $(1,1)$, the first $1$ giving the degree, the second $1$ giving the sum of the absolute value of the coefficients).

Then, consider the polynomials of degree $2$ whose sum of the absolute value of the coefficients is $1$; again, only finitely many, each with finitely many roots; make this set correspond to $(2,1)$.

Then, the polynomials of degree $1$ whose sum of the absolute value of the coefficients is $2$; only finitely many, each with finitely many roots. The set corresponds to the pair $(1,2)$.

Then consider the pair $(3,1)$; then the pair $(2,2)$; then the pair $(1,3)$. Then move on to the pair $(4,1)$, followed by $(3,2)$, followed by $(2,3)$, followed by $(1,4)$. Etc.

This will ensure that you cover each and every polynomial of positive degree with integer coefficients after finitely many steps; many algebraic numbers will occur more than once, but that's not a problem to showing they are at most countable (that they are infinite should be trivial).


That's exactly the right approach! The hint provided to you is about how might you go about enumerating the polynomials over $\mathbb{Z}$. Can you show there are finitely many polynomials over $\mathbb{Z}$ of degree $n$ and with sum-of-absolute-values-of-coefficients less than $m$, for any $m$? How many polynomials of degree $n$ are there over $\mathbb{Z}$, then? How many polynomials over $\mathbb{Z}$ are there, then? How many roots of polynomials over $\mathbb{Z}$ (i.e. algebraic numbers) are there, then?


HINT $\ $ Enumerate the polynomials by "height" := max(degree, max |coefficient|)