Why is it that $x^4+2x^2+1$ is reducible in $\mathbb{Z}[x]$ but has no roots in $\mathbb{Q}$? $\textbf{ Lemma:}$  A non constant primitive polynomial $f(x) \in \mathbb{Z}[x]$ is irreducible in $\mathbb{Q}[x]$ if and only if $f(x)$ is irreducible in $\mathbb{Z}[x]$.
I am reading a book in which it is given that $f(x)=x^4+2x^2+1$ is primitive in $\mathbb{Z}[x]$ and it has no roots in $\mathbb{Q}$ but it is reducible over $\mathbb{Z} $ as $f(x)=(x^2+1)(x^2+1)$.
My question is doen't it conradict this lemma?  since irreducible over $\mathbb{Z}$ and irreducible over $\mathbb{Q}$ is the same thing for primitive polynomial.

There is no contradiction here.  The polynomial $f(x)=x^4+2x^2+1$ is reducible both in $\mathbb{Q}[x]$ and in $\mathbb{Z}[x]$, since it can be factored as $(x^2+1)(x^2+1)$ in either ring.  All that's going on is that a polynomial can be reducible without having any roots.
