I'm currently working a bit on Enderton's logic textbook (2nd ed), and, on the second chapter, he marks the following exercise on definability with an asterisk.
Let $(\mathbb{R}; +, \cdot)$ be the reals with the usual operations. Consider the usual first-order language plus symbols for multiplication and addition. Enderton asks us to show that any finite union of intervals with algebraic endpoints is definable in that structure. By this, I suppose he means that we must give a formula with free variables whose satisfaction set will be precisely the unions in question. I'm a bit at loss about how to proceed, though. It seems that one should first produce a formula which express the notion of order (but that is not too difficult), which would allow one to define the notion of an interval. Then one would need to define finite union of intervals (but that is also not difficult, I suppose; just take the disjunction of the formulas for intervals). Finally, one would also need to define algebraic numbers (but I'm not sure about how to do this). Is this right? If so, how can I define the algebraic numbers?
In addition, aside from Tarski's paper on definable sets of reals, are there any references that give a step by step proof of this theorem and its converse (that those are the only definable sets of reals)? I'm specially interested in textbooks.
First, order can be defined by defining "nonnegative" to mean having a square root, and $x \leq y$ to mean that $\exists z (x + z = y \text{and $z$ is nonnegative})$.
Next, you'll want to establish that every integer is definable. Start with $1$.
You don't need to define a statement "$x$ is algebraic." Given a particular algebraic number $\alpha$, you merely want to define the statement "$x > \alpha$." If you let $f(x)$ be a nonzero polynomial with integer coefficients of minimal degree with $\alpha$ as a root, then $\alpha$ is a simple root of $f(x)$. (There's some algebra involved here.) So $f$ crosses the $x$-axis at $\alpha$.
Say, for instance, that $f$ is increasing near $\alpha$. (Otherwise, use $-f$.) Then take two rational numbers $p$ and $q$ such that $f$ is positive on $(\alpha,q]$ and negative on $(p,\alpha]$. The statement $x > \alpha$ can be defined by the condition "($f(x) > 0$ and $x > p$) or $x > q$".
A statement such as $x > p = a/b$, where $a$ and $b$ are integers, can itself be defined by saying that $bx > a$.
You probably need to show that $x = \alpha$ is also definable, and this can be done analogously.
The kind of statement you were talking about is then a finite combination (using connectives) of statements of the type $x > \alpha_i$ and $x = \alpha_i$, where $\alpha_1, \alpha_2, \dots, \alpha_r$ are a fixed list of algebraic numbers.
I'm sorry, but I don't know where this theorem might be proved.