Ask Your Question
0

How to compute the different ideal of a number field extension in Sage?

asked 2024-06-10 11:16:08 +0100

Ys1123 gravatar image

updated 2024-06-10 11:55:15 +0100

Let $K/F$ be $\mathbb{Q}(\sqrt[3]{2},\zeta_3)/\mathbb{Q}(\sqrt[3]{2})$. I want to compute the different ideal $\mathfrak{d}$ for $K/F$ and check the formula of $N_{K/F} (\mathfrak{d})=\Delta_{K/F}$ where $\zeta_n$ is a $n$-th root of unity and $\Delta_{K/F}$ is the relative discriminat of $K/F$.

But, at first, I tried to compute one more easier case for $\mathbb{Q}(\sqrt{-5})/\mathbb{Q}$. It might be $\mathfrak{d}_{\mathbb{Q}(\sqrt{-5})/\mathbb{Q}}=(2\sqrt{-5})$ since $\Delta_{\mathbb{Q}(\sqrt{-5})/\mathbb{Q}}=(20)$.

My attempt is following:

x=polygen(ZZ, 'x')
K.<a>=NumberField(x^2+5)
gp(K.diff)

But this makes an error. Could you show me the correct code for this and for original setting?

edit retag flag offensive close merge delete

Comments

In Sage/Python, you need to add the parenthesis to "call" the function. Without the parenthesis, it returns the function itself:

sage: K.discriminant
<bound method NumberField_quadratic.discriminant of Number Field in a with defining polynomial x^2 + 5>
sage: K.discriminant()
-20

Also the function (also called method) diff does not exists for K, that is, writting K.d and hitting the TAB key does not list any method called diff for the number field K.

Sébastien gravatar imageSébastien ( 2024-06-10 15:54:39 +0100 )edit

OK, then how can I get the different ideal (not the discriminant)?

Ys1123 gravatar imageYs1123 ( 2024-06-10 17:49:06 +0100 )edit

If you want to list methods of K containing the word "ideal", you may do:

sage: K.*ideal*?
K.fractional_ideal
K.ideal
K.ideal_monoid
K.idealchinese
K.ideals_of_bdd_norm
K.principal_ideal
K.unit_ideal
K.zero_ideal

If you want to list methods of K containing the word "different", you may do:

sage: K.*different*?
K.absolute_different
K.different
K.relative_different
Sébastien gravatar imageSébastien ( 2024-06-11 12:10:48 +0100 )edit

1 Answer

Sort by » oldest newest most voted
0

answered 2024-06-11 12:15:20 +0100

Sébastien gravatar image

updated 2024-06-11 12:47:00 +0100

For the easier example, you may do:

sage: x=polygen(ZZ, 'x')
sage: K.<a>=NumberField(x^2+5)
sage: K.different()
Fractional ideal (2*a)

which returns the ideal generated by 2*a you are expecting.

For the original example, I am not familiar at all with the subject, but trying to adapt the example shown in the documentation of K.relative_different accessible online here, one can do:

sage: x = polygen(ZZ, 'x')
sage: K.<a> = NumberField(x^3-2)
sage: PK.<t> = K[]
sage: L.<zeta3> = K.extension(t^2+t+1)
sage: L.relative_different()
Fractional ideal ((1/3*a^2 + 2/3*a + 1/3)*zeta3 + 2/3*a^2 + 1/3*a - 1/3)

Or maybe you want the absolute different:

sage: L.absolute_different()
Fractional ideal ((-2*a^2 + 2*a - 2)*zeta3 - a^2 - 2*a - 4)
edit flag offensive delete link more

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: 2024-06-10 11:16:08 +0100

Seen: 172 times

Last updated: Jun 11