1 | initial version |
The best I can do is reduce it to a system of 8 equations in $12$ variables over $\mathbb{Q}$.
Write $a=x+yi$ and $b=z+wi$. We want $a^2+6b^2$ to be a fourth power, say $(a_1 + a_2i + a_3\sqrt{2} + a_4\sqrt{2}i)^4$. Similarly we want $-(3a^2 + 2b^2) = (b_1 + b_2i + b_3\sqrt{2} + b_4\sqrt{2}i)^4$. We can get the $\mathbb{Q}$-coefficients of these equations by making a polynomial ring over $K$ in the variables $x,y,z,w,a_1,a_2,a_3,a_4,b_1,b_2,b_3,b_4$, then using the vector space structure of $K$ and changing the ring of the vectors to a polynomial ring in the same variables over $\mathbb{Q}$.
x = polygen(QQ)
F.<i> = NumberField(x^2 + 1)
K.<t> = F.extension(x^2 - 2)
R.<x,y,z,w,a1,a2,a3,a4,b1,b2,b3,b4> = PolynomialRing(K, 2+2+2*4)
a = x + y*i
b = z + w*i
eq1 = a^2 + 6*b^2 - (a1 + a2*i + a3*t + a4*i*t)^4
eq2 = -(3*a^2 + 2*b^2) - (b1 + b2*i + b3*t + b4*i*t)^4
V, from_V, to_V = K.absolute_vector_space()
S = PolynomialRing(QQ, names=R.gens())
R_to_4S = lambda u: list(sum(to_V(c).change_ring(S)*S(m) for (c,m) in zip(u.coefficients(), u.monomials())))
I = S.ideal(R_to_4S(eq1) + R_to_4S(eq2))
I.gens()
Output:
[-a1^4 + 6*a1^2*a2^2 - a2^4 - 6*a1^2*a2*a3 + 2*a2^3*a3 - 12*a1^2*a3^2 + 12*a2^2*a3^2 - 4*a2*a3^3 - 4*a3^4 - 2*a1^3*a4 + 6*a1*a2^2*a4 + 48*a1*a2*a3*a4 - 12*a1*a3^2*a4 + 12*a1^2*a4^2 - 12*a2^2*a4^2 + 12*a2*a3*a4^2 + 24*a3^2*a4^2 + 4*a1*a4^3 - 4*a4^4 + x^2 - y^2 + 6*z^2 - 6*w^2, 2/3*a1^3*a2 - 2/3*a1*a2^3 - 10/3*a1^3*a3 + 10*a1*a2^2*a3 + 4*a1*a2*a3^2 - 20/3*a1*a3^3 + 10*a1^2*a2*a4 - 10/3*a2^3*a4 + 4*a1^2*a3*a4 - 4*a2^2*a3*a4 + 20*a2*a3^2*a4 + 8/3*a3^3*a4 - 4*a1*a2*a4^2 + 20*a1*a3*a4^2 - 20/3*a2*a4^3 - 8/3*a3*a4^3 - 1/3*x*y - 2*z*w, 6*a1^2*a2*a3 - 2*a2^3*a3 + 4*a2*a3^3 + 2*a1^3*a4 - 6*a1*a2^2*a4 + 12*a1*a3^2*a4 - 12*a2*a3*a4^2 - 4*a1*a4^3, 2/3*a1^3*a2 - 2/3*a1*a2^3 + 2/3*a1^3*a3 - 2*a1*a2^2*a3 + 4*a1*a2*a3^2 + 4/3*a1*a3^3 - 2*a1^2*a2*a4 + 2/3*a2^3*a4 + 4*a1^2*a3*a4 - 4*a2^2*a3*a4 - 4*a2*a3^2*a4 + 8/3*a3^3*a4 - 4*a1*a2*a4^2 - 4*a1*a3*a4^2 + 4/3*a2*a4^3 - 8/3*a3*a4^3 - 1/3*x*y - 2*z*w, -b1^4 + 6*b1^2*b2^2 - b2^4 - 6*b1^2*b2*b3 + 2*b2^3*b3 - 12*b1^2*b3^2 + 12*b2^2*b3^2 - 4*b2*b3^3 - 4*b3^4 - 2*b1^3*b4 + 6*b1*b2^2*b4 + 48*b1*b2*b3*b4 - 12*b1*b3^2*b4 + 12*b1^2*b4^2 - 12*b2^2*b4^2 + 12*b2*b3*b4^2 + 24*b3^2*b4^2 + 4*b1*b4^3 - 4*b4^4 - 3*x^2 + 3*y^2 - 2*z^2 + 2*w^2, 2/3*b1^3*b2 - 2/3*b1*b2^3 - 10/3*b1^3*b3 + 10*b1*b2^2*b3 + 4*b1*b2*b3^2 - 20/3*b1*b3^3 + 10*b1^2*b2*b4 - 10/3*b2^3*b4 + 4*b1^2*b3*b4 - 4*b2^2*b3*b4 + 20*b2*b3^2*b4 + 8/3*b3^3*b4 - 4*b1*b2*b4^2 + 20*b1*b3*b4^2 - 20/3*b2*b4^3 - 8/3*b3*b4^3 + x*y + 2/3*z*w, 6*b1^2*b2*b3 - 2*b2^3*b3 + 4*b2*b3^3 + 2*b1^3*b4 - 6*b1*b2^2*b4 + 12*b1*b3^2*b4 - 12*b2*b3*b4^2 - 4*b1*b4^3, 2/3*b1^3*b2 - 2/3*b1*b2^3 + 2/3*b1^3*b3 - 2*b1*b2^2*b3 + 4*b1*b2*b3^2 + 4/3*b1*b3^3 - 2*b1^2*b2*b4 + 2/3*b2^3*b4 + 4*b1^2*b3*b4 - 4*b2^2*b3*b4 - 4*b2*b3^2*b4 + 8/3*b3^3*b4 - 4*b1*b2*b4^2 - 4*b1*b3*b4^2 + 4/3*b2*b4^3 - 8/3*b3*b4^3 + x*y + 2/3*z*w]
This a $4$-dimensional ideal. The condition "to be nonzero" is not yet added. You might also want to try computing a Gröbner basis with respect to a good monomial ordering (I don't have the computing power right now).
2 | No.2 Revision |
The best I can do is reduce it to a system of 8 equations in $12$ variables over $\mathbb{Q}$.
Write $a=x+yi$ and $b=z+wi$. We want $a^2+6b^2$ to be a fourth power, say $(a_1 + a_2i + a_3\sqrt{2} + a_4\sqrt{2}i)^4$. Similarly we want $-(3a^2 + 2b^2) = (b_1 + b_2i + b_3\sqrt{2} + b_4\sqrt{2}i)^4$. We can get the $\mathbb{Q}$-coefficients of these equations by making a polynomial ring over $K$ in the variables $x,y,z,w,a_1,a_2,a_3,a_4,b_1,b_2,b_3,b_4$, then using the vector space structure of $K$ and changing the ring of the vectors to a polynomial ring in the same variables over $\mathbb{Q}$.
x = polygen(QQ)
F.<i> = NumberField(x^2 + 1)
K.<t> = F.extension(x^2 - 2)
R.<x,y,z,w,a1,a2,a3,a4,b1,b2,b3,b4> = PolynomialRing(K, 2+2+2*4)
a = x + y*i
b = z + w*i
eq1 = a^2 + 6*b^2 - (a1 + a2*i + a3*t + a4*i*t)^4
eq2 = -(3*a^2 + 2*b^2) - (b1 + b2*i + b3*t + b4*i*t)^4
V, from_V, to_V = K.absolute_vector_space()
S = PolynomialRing(QQ, names=R.gens())
R_to_4S = lambda u: list(sum(to_V(c).change_ring(S)*S(m) for (c,m) in zip(u.coefficients(), u.monomials())))
I = S.ideal(R_to_4S(eq1) + R_to_4S(eq2))
I.gens()
Output:
[-a1^4 + 6*a1^2*a2^2 - a2^4 - 6*a1^2*a2*a3 + 2*a2^3*a3 - 12*a1^2*a3^2 + 12*a2^2*a3^2 - 4*a2*a3^3 - 4*a3^4 - 2*a1^3*a4 + 6*a1*a2^2*a4 + 48*a1*a2*a3*a4 - 12*a1*a3^2*a4 + 12*a1^2*a4^2 - 12*a2^2*a4^2 + 12*a2*a3*a4^2 + 24*a3^2*a4^2 + 4*a1*a4^3 - 4*a4^4 + x^2 - y^2 + 6*z^2 - 6*w^2, 2/3*a1^3*a2 - 2/3*a1*a2^3 - 10/3*a1^3*a3 + 10*a1*a2^2*a3 + 4*a1*a2*a3^2 - 20/3*a1*a3^3 + 10*a1^2*a2*a4 - 10/3*a2^3*a4 + 4*a1^2*a3*a4 - 4*a2^2*a3*a4 + 20*a2*a3^2*a4 + 8/3*a3^3*a4 - 4*a1*a2*a4^2 + 20*a1*a3*a4^2 - 20/3*a2*a4^3 - 8/3*a3*a4^3 - 1/3*x*y - 2*z*w, 6*a1^2*a2*a3 - 2*a2^3*a3 + 4*a2*a3^3 + 2*a1^3*a4 - 6*a1*a2^2*a4 + 12*a1*a3^2*a4 - 12*a2*a3*a4^2 - 4*a1*a4^3, 2/3*a1^3*a2 - 2/3*a1*a2^3 + 2/3*a1^3*a3 - 2*a1*a2^2*a3 + 4*a1*a2*a3^2 + 4/3*a1*a3^3 - 2*a1^2*a2*a4 + 2/3*a2^3*a4 + 4*a1^2*a3*a4 - 4*a2^2*a3*a4 - 4*a2*a3^2*a4 + 8/3*a3^3*a4 - 4*a1*a2*a4^2 - 4*a1*a3*a4^2 + 4/3*a2*a4^3 - 8/3*a3*a4^3 - 1/3*x*y - 2*z*w, -b1^4 + 6*b1^2*b2^2 - b2^4 - 6*b1^2*b2*b3 + 2*b2^3*b3 - 12*b1^2*b3^2 + 12*b2^2*b3^2 - 4*b2*b3^3 - 4*b3^4 - 2*b1^3*b4 + 6*b1*b2^2*b4 + 48*b1*b2*b3*b4 - 12*b1*b3^2*b4 + 12*b1^2*b4^2 - 12*b2^2*b4^2 + 12*b2*b3*b4^2 + 24*b3^2*b4^2 + 4*b1*b4^3 - 4*b4^4 - 3*x^2 + 3*y^2 - 2*z^2 + 2*w^2, 2/3*b1^3*b2 - 2/3*b1*b2^3 - 10/3*b1^3*b3 + 10*b1*b2^2*b3 + 4*b1*b2*b3^2 - 20/3*b1*b3^3 + 10*b1^2*b2*b4 - 10/3*b2^3*b4 + 4*b1^2*b3*b4 - 4*b2^2*b3*b4 + 20*b2*b3^2*b4 + 8/3*b3^3*b4 - 4*b1*b2*b4^2 + 20*b1*b3*b4^2 - 20/3*b2*b4^3 - 8/3*b3*b4^3 + x*y + 2/3*z*w, 6*b1^2*b2*b3 - 2*b2^3*b3 + 4*b2*b3^3 + 2*b1^3*b4 - 6*b1*b2^2*b4 + 12*b1*b3^2*b4 - 12*b2*b3*b4^2 - 4*b1*b4^3, 2/3*b1^3*b2 - 2/3*b1*b2^3 + 2/3*b1^3*b3 - 2*b1*b2^2*b3 + 4*b1*b2*b3^2 + 4/3*b1*b3^3 - 2*b1^2*b2*b4 + 2/3*b2^3*b4 + 4*b1^2*b3*b4 - 4*b2^2*b3*b4 - 4*b2*b3^2*b4 + 8/3*b3^3*b4 - 4*b1*b2*b4^2 - 4*b1*b3*b4^2 + 4/3*b2*b4^3 - 8/3*b3*b4^3 + x*y + 2/3*z*w]
This a $4$-dimensional ideal. The condition "to be nonzero" is not yet added. You might also want to try computing a Gröbner basis with respect to a good monomial ordering (I don't have the computing power right now).
(The fractions are there in the equations because absolute_vector_space()
uses a basis different from the obvious one, but it doesn't matter.)