Proof verification - Minimal polynomial of $\alpha$ has integer coef.s iff its an alg. integer I want to prove the following theorem:
Theorem. The minimal polynomial of $\alpha$ has integer coefficients if and only if $\alpha$ is an algebraic integer.
Here is what I have done and I want to ask whether it has any problematic parts or not:
($\implies$) part is trivial. For the converse, let $q(X) \in \mathbb{Q}[X]$ be the minimal polynomial of $\alpha$ and $f(X) \in \mathbb{Z}[X]$ such that $f(\alpha)=0$. Then, since $q(X)$ is the minimal polynomial of $\alpha$, $f(X)=q(X)r(X)$ for some $r(X) \in \mathbb{Q}[X]$.
Assume that $q$ has at least one non-integer coefficient. Define
$ V = lcm\{$denominators of coefficients of $q(X) \}$.
$ U = lcm\{$denominators of coefficients of $r(X) \}$. Then,
$UVf(X) \equiv 0$ modulo ($UV$) but $Vq(X)Ur(X) \equiv UVq(X)r(X) \not \equiv 0$ . So, I think we are done.
 A: Essentially, the lemma we need to prove is:

Suppose $f(X) \in \mathbb Z[X]$ is a monic polynomial, and suppose $f(X) =q(X)r(X)$, where $q(X)$ and $r(X)$ are monic polynomials in $\mathbb Q[X]$. Then $q(X)$ is in $\mathbb Z[X]$.

I'll try my best  to guide you through a proof that incorporates as many of your ideas as possible.


*

*Define $V$ and $U$ to be the smallest positive integers such that $Vq(X) \in \mathbb Z[X]$ and $Ur(X) \in \mathbb Z[X]$. I invite you to check that the greatest common divisor of the coefficients of $Vq(X)$ is one. The same is true of the coefficients of $Ur(X)$. While checking this, it is important to think about why we need $q(X)$ and $r(X)$ to be monic.

*Suppose, for contradiction, that $V > 1$. Then there exists a prime number $p$ that divides $V$. Consider the equation
$$ (Vq(X))(Ur(X)) = UVf(X)$$
as an equation in $\mathbb Z_p[X]$. I encourage you to show that $UVf(X)$ is zero in $\mathbb Z_p[X]$, and that $Vq(X)$ and $Ur(X)$ are non-zero in $\mathbb Z_p[X]$.

*Finally, you can think about how this contradicts the fact that $\mathbb Z_p[X]$ is a integral domain, and hence, conclude that $V = 1$.
So the idea of this argument is very similar to your argument, except that we are working in $\mathbb Z_p[X]$ rather than $\mathbb Z_{(UV)}[X]$. The latter is not necessarily  an integral domain, and that is the important difference.
A: I assume the definition you have of algebraic integer is “a root of a monic polynomial with integer coefficients”.
Your attempt at a proof is invalid: there is no justification of the main step. Moreover “modulo $UV$” means you are working in a ring with zero divisors.
Thus one direction is obvious. For the other one, let $f(X)$ be the (monic) minimal polynomial of the algebraic integer $\alpha$ and let $g(X)$ be a monic polynomial with integer coefficients such that $g(\alpha)=0$.
Then $g(X)=f(X)q(X)$ for some $q(X)\in\mathbb{Q}[X]$.
We can write
$$
g(X)=\frac{a}{b}f_1(X)\cdot\frac{c}{d}q_1(X)
$$
where $f_1$ and $q_1$ have integer coefficients and greatest common divisor of the coefficients equal to $1$ (that is, they are primitive). It's not restrictive to assume the leading coefficient of $f_1(X)$ is positive.
Therefore
$$
bdg(X)=acf_1(X)q_1(X)
$$
Since $f(X)$ is irreducible in $\mathbb{Q}[X]$ and $f_1$ is primitive, also $f_1(X)$ is irreducible in $\mathbb{Z}[X]$ (Gauss’ lemma). Due to $\mathbb{Z}[X]$ being a UFD, $f_1(X)$ is prime and so it divides $g(X)$ in $\mathbb{Z}[X]$, because it divides neither $b$ nor $d$.
Hence $g(X)=f_1(X)q_2(X)$ in $\mathbb{Z}[X]$ and, comparing the leading coefficients, we conclude the leading coefficient of $f_1$ is $1$. Therefore $f_1(X)=f(X)$, because $f_1(\alpha)=0$.
