I'm trying to know if there is an efficient way to find the smallest (i.e lexicographically) triplet $(a,b,c)$ of integers verifying $$a^2+b^2+c^2 = x$$ $$a^3+b^3+c^3=y$$ $$a^4+b^4 + c^4 = z$$ if $(x,y,z)$ is known.
We assume that a solution exists for that triplet $(x,y,z)$.
Originally, this question is part of an algorithmic problem. So what I want is a fast way to find the triplet without having to brute-force.
What I've tried (the brute-force approach): going through all the possible values of $a$ since we can deduce an upper bound for its value, we remain with three equations where it's easy to find $b$ and $c$ and see if they are integers.
EDIT: We may assume as well that $a<b<c$.
If $a,b,c$ are integers such that
$$a^2 + b^2 + c^2 = x$$ $$a^3 + b^3 + c^3 = y$$ $$a^4 + b^4 + c^4 = z$$
then the following divisibility conditions must hold:
$$ \left( a + b + c \right) \mid \left( x^2 - 2z \right) $$
$$ \left( 4\left(ab + bc + ca\right) \right) \mid \left( x^4 + 6x^2z - 16xy^2 + 9z^2 \right) $$
$$ \left( 2abc \right)^2 \mid \left( x^6 - 4x^3y^2 - 3x^2z^2 + 12xy^2z - 4y^4 - 2z^3 \right) $$
Of these, the last will cut down your search considerably.