Solving polynomials in $\mathbb{Q}[X]$ exactly I wanted to write an equation solver for rational polynomials in one variable $X$. However, such solutions do not need to be in $\mathbb{Q}$. What I wanted was to display solutions "lossless", i.e. not $1.414$, but $\sqrt 2$. Somehow, I believe that solutions for Polynomials in $\mathbb{Q}[X]$ are always constructible with "$+$", "$\cdot$" and "$\sqrt[n]{}$".
Now, I have a lot of questions:


*

*Let's call $K:=\mathbb{Q}(i)(\sqrt[n]{2},\sqrt[n]{3}, \sqrt[n]{5}, ...)$ (brackets mean adjunction). Is $K$ algebraically closed? If not, what field do I need to solve polynomials in $\mathbb{Q}[X]$?

*Is it true that $K$ is exactly the set of algebraic numbers?

*Do you know a simple algorithm for constructing the solutions of a polynomial in $\mathbb{Q}[X]$? For maximum degree $4$, there are formulas, but what if the degree is higher? Important: The algorithm shall not approximate, I would like to have radical terms in the end.

 A: The Abel-Ruffini theorem implies that there is no formula for solving in radicals a general polynomial of degree at least 5. In practical terms, this means that for some polynomials of degree $n\geq 5$, you will be able to construct their root using addition, multiplication and radicals, but not for all. For example, consider the polynomial $x^5-x+1$. 
As for the field $K$, as mentionned in the comments, it is not algebraically closed; for example, $2+\sqrt{2}{} $ has no square root in $K$. The field in which all rational polynomials have a root is the algebraic closure of $\mathbb Q$ (in $\mathbb C$). The right way to deal with all your questions in through Galois theory, a branch of Abstract algebra.
A: As mentioned in the other answers there are polynomial root which cannot be expressed as radical expressions. Nevertheless there are different ways to store polynomial roots "lossless". The most intuitive one is an interval representation
$$(a,b,P)$$
with $a,b \in \mathbb{Q}; a < b$ and $P \in \mathbb{Q}[X]$ such that the open interval $(a,b)$ contains exactly one root of $P$. This representation can arbitrarily refined with a simple bisection algorithm. Interval representations containing exactly one root of a univariate polynomial with rational coefficients can be obtained with an algorithm using Sturm sequences. There are several implementations for example in GiNacRA. If you still want radicial expression but a complete representation of polynomial roots in $\mathbb{Q}[X]$ you can use Galois theory to decide whether there is a radical expression, compute it and in the other cases use complete representations like the above.
