Ask Your Question
1

solving system of equations over number field

asked 2020-02-23 23:05:24 +0100

Acanti gravatar image

updated 2020-06-01 11:07:52 +0100

FrédéricC gravatar image

I am trying to solve two, 2-variable polynomial equations over $F:=\mathbb{Q}(i)$ modulo $K:=F(\sqrt{2})$. Specifically, if p1 = $a^2+6b^2$, p2 = $3a^2+2b^2$, and $K^{\ast4}:=\langle k^4\vert k\in K\setminus 0 \rangle$ i.e. the group of 4th powers of nonzero elements of $K$. I want to find (all?) $a$ and $b$ in $F$ such that p1$\equiv$1 modulo $K^{\ast4}$ and p2$\equiv$-1 modulo $K^{\ast4}$.

Any amount of walk through or pointing in the right direction, or telling me this might not be doable would be great! I am relatively new to sage, or at least it has been years since I've used it.

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
0

answered 2020-02-27 11:31:43 +0100

rburing gravatar image

updated 2020-02-27 11:39:54 +0100

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.)

edit flag offensive delete link more

Comments

1

"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}$" Didn't know I could do that, thanks for that idea!

Acanti gravatar imageAcanti ( 2020-02-28 08:20:07 +0100 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

Stats

Asked: 2020-02-23 23:05:24 +0100

Seen: 406 times

Last updated: Feb 27 '20