In this post, I’m going to prove just two things. First, algebraic numbers form a field. Second, algebraic integers form a ring; in particular, the algebraic integers lying in a specific number field form a ring.

We can take the set of all numbers that are algebraic over **Q**, that is, the set of all complex numbers that satisfy some polynomial with rational coefficients. The reason to use complex numbers is something called the fundamental theorem of algebra, which says that every polynomial with complex coefficients has a complex root (for example, *i* is a root of *x*^2 + 1). In particular, every polynomial with rational coefficients has a root in **C**.

We’ll call this set **A**, for typographical reasons. The standard notation is **Q** with a bar on top of it: . But it’s not even a Unicode character, let alone an ASCII one.

To see that **A** is a field, note first that a complex number *a* is algebraic iff **Q**[*a*] has finite dimension over **Q**. If *a* is algebraic, then it satisfies some polynomial of the form *c*(*n*)*x*^*n* + … + *c*1*x* + *c*0, where *c*(*n*) is not zero. So we can divide by *c*(*n*) to get something of the form *a*^*n* = *d*(*n*-1)*a*^(*n*-1) + … + *d*1*a* + *d*0. So {1, *a*, *a*^2, …, *a*^(*n*-1)} spans *a*^*n*. Likewise, it’s easy to prove now that it spans *a*^(*n*+1), *a*^(*n*+2)… so that it spans all of **Q**[*a*].

Conversely, if **Q**[*a*] has dimension *n* over **Q**, then the set {1, *a*, *a*^2, …, *a*^*n*} is linearly dependent. That gives us some polynomial with rational coefficients in *a* that is equal to 0. So *a* is the root of some polynomial over **Q**, which means it’s algebraic.

Now, this is important because if **Q**[*a*] and **Q**[*b*] have finite dimension over **Q**, then so does **Q**[*a*, *b*], the ring of all polynomials in *a* and *b* over **Q**. So **Q**[*a*+*b*], **Q**[*a*–*b*], and **Q**[*ab*] have finite dimension over **Q**.

Finally, if *a* is a root of *f*(*x*) and *a* is non-zero, then 1/*a* is a root of *f*(1/*x*). The function *f*(1/*x*) is not a polynomial, but it’s of the form *c*(*n*)/*x*^*n* + … + *c*1/*x* + *c*0, so if we multiply by *x*^*n*, we get a polynomial that still has 1/*a* as a root. As **A** is closed under the four basic arithmetic operations, it’s a field.

Although every number field is contained in **A**, and every element in **A** is contained in a number field, **A** itself is not a number field. It has infinite dimension over **Q** – for a start, it has the infinite linearly independent set {SQRT(2), SQRT(3), SQRT(5)…}, just like **R**.

Recall that an algebraic integer is a number that satisfies a monic polynomial with coefficients in** Z**. Obviously, every algebraic integer is in **A**. I’ll call the set of algebraic integers **B**; again, it’s a nonstandard notation (the standard one is **Z** with a bar over it), but it’s the best I can do in ASCII.

The proof that **B** is a ring is largely the same as the proof that **A** is a field. You can generalize vector spaces to something called modules, which work like vector spaces except that instead of a field of scalars, there’s only a ring of scalars.

Modules tend to give a lot of trouble with dimensions – for a start, if R is not a PID, and I is a non-principal ideal of R, then R is an R-module of dimension 1, while I is an R-submodule of higher dimension. Fortunately, if the underlying ring is a PID, this doesn’t happen.

Now, iff *a* is an algebraic integer, then the ring **Z**[*a*] is a finitely-generated **Z**-module. If *a*^*n* = *c*(*n*-1)*a*^(*n*-1) + … + *c*1*a* + *c*0, then {1, *a*, *a*^2, …, *a*^(*n*-1)} spans *a*^*n*, and similarly it spans *a*^(*n*+1), *a*^(*n*+2)… so it spans **Z**[*a*]. Conversely, if **Z**[*a*] has dimension *n*, then some collection of *n* elements spans it. If *k* is larger than the highest power of *a* appearing in the collection, then writing *a*^*k* in terms of these elements will give us a monic polynomial over **Z** that has *a* as a root.

As before, if *a* and *b* are algebraic integers, then **Z**[*a*, *b*] is still finitely-generated over **Z**. So **Z**[*ab*], **Z**[*a*+*b*], and **Z**[*a*–*b*] are finitely-generated over **Z**, which means that *ab*, *a*+*b*, and *a*–*b* are algebraic integers.

You write that A has infinite dimension over Q, as {SQRT(2), SQRT(3), SQRT(5)…} is a linearly independent set. This seems very reasonable to me, but how do you actually prove it?

I’m going to post about it later today… thanks for asking; I had to think about it for a little while, but I think what I have works (the basic idea is to look at conjugates of elements).