extension de corps

115 views
Skip to first unread message

ghamma...@gmail.com

unread,
Mar 19, 2014, 4:26:58 PM3/19/14
to sage-s...@googlegroups.com
Bonsoir
SVP, j'ai besoin de definir sur Sage 3 extensions de corps, mais je n'arrive pas. Je peux definir que deux extensions.

Christophe Bal

unread,
Mar 19, 2014, 6:54:05 PM3/19/14
to sage-s...@googlegroups.com
Hello,
this is an english list.

Christophe BAL

French PS: il va falloir traduire en anglais votre question.


2014-03-19 21:26 GMT+01:00 <ghamma...@gmail.com>:
Bonsoir
SVP, j'ai besoin de definir sur Sage 3 extensions de corps, mais je n'arrive pas. Je peux definir que deux extensions.

--
You received this message because you are subscribed to the Google Groups "sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sage-support...@googlegroups.com.
To post to this group, send email to sage-s...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Anton Sherwood

unread,
Mar 19, 2014, 8:13:54 PM3/19/14
to sage-s...@googlegroups.com
"Good evening
"If you please, I need to define on Sage 3 extensions of body[?],
but I do not succeed. I can define only two extensions."


--
*\\* Anton Sherwood *\\* www.bendwavy.org

Christophe Bal

unread,
Mar 19, 2014, 8:20:15 PM3/19/14
to sage-s...@googlegroups.com

Indeed you are talking about field extensions and not about bubonic body extensions.

This is just French humor. ;-)

--
You received this message because you are subscribed to the Google Groups "sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sage-support+unsubscribe@googlegroups.com.

John Cremona

unread,
Mar 20, 2014, 5:07:27 AM3/20/14
to SAGE support
You are going to have to make your question more specific: which
field are you starting from and wgat kind of extension are you trying
ot make? Which version of Sage are you using? Sure not version 3,
since the current one is version 6.1.1!

John Cremona


On 20 March 2014 00:20, Christophe Bal <proj...@gmail.com> wrote:
> Indeed you are talking about field extensions and not about bubonic body
> extensions.
>
> This is just French humor. ;-)
>
> Le 20 mars 2014 01:13, "Anton Sherwood" <bro...@pobox.com> a écrit :
>
>> On 2014-3-19 13:26, ghamma...@gmail.com wrote:
>>>
>>> Bonsoir
>>> SVP, j'ai besoin de definir sur Sage 3 extensions de corps,
>>
>> > mais je n'arrive pas. Je peux definir que deux extensions.
>>
>> "Good evening
>> "If you please, I need to define on Sage 3 extensions of body[?],
>> but I do not succeed. I can define only two extensions."
>>
>>
>> --
>> *\\* Anton Sherwood *\\* www.bendwavy.org
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sage-support" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to sage-support...@googlegroups.com.
>> To post to this group, send email to sage-s...@googlegroups.com.
>> Visit this group at http://groups.google.com/group/sage-support.
>> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-support" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-support...@googlegroups.com.

Simon King

unread,
Mar 20, 2014, 5:47:27 AM3/20/14
to sage-s...@googlegroups.com
Hi John,

On 2014-03-20, John Cremona <john.c...@gmail.com> wrote:
> You are going to have to make your question more specific: which
> field are you starting from and wgat kind of extension are you trying
> ot make?

+1

> Which version of Sage are you using? Sure not version 3,
> since the current one is version 6.1.1!

I think here you misunderstood, 'cause...

>>> On 2014-3-19 13:26, ghamma...@gmail.com wrote:
>>>>
>>>> Bonsoir
>>>> SVP, j'ai besoin de definir sur Sage 3 extensions de corps,
>>>
>>> > mais je n'arrive pas. Je peux definir que deux extensions.

So, in Sage of unspecified version, the OP wants to define three
field extensions, but only succeeds with two of them.

Anyway, we certainly need to know what extensions are considered and in
particular what definition fails, so that we can see *why* it fails.

Best regards,
Simon


Anton Sherwood

unread,
Mar 20, 2014, 6:01:46 AM3/20/14
to sage-s...@googlegroups.com
On 2014-3-20 02:07, John Cremona wrote:
> You are going to have to make your question more specific: which
> field are you starting from and wgat kind of extension are you trying
> ot make? Which version of Sage are you using?

(traduction bien libre)
"Vous devrez poser une question plus précise: quel espèce d'extension, à
partir de quel corps? De quelle version de Sage servez-vous?"

ghamma...@gmail.com

unread,
Mar 20, 2014, 1:58:13 PM3/20/14
to sage-s...@googlegroups.com
بتاريخ الأربعاء، 19 مارس، 2014 UTC+1 9:26:58 م، كتب ghamma...@gmail.com:
> Bonsoir
> SVP, j'ai besoin de definir sur Sage 3 extensions de corps, mais je n'arrive pas. Je peux definir que deux extensions.

Hello,

I use Sage 5.9
I need to define 3 field extensions Fp^2, Fp^6 and Fp^12.

Thanks

John Cremona

unread,
Mar 20, 2014, 3:38:35 PM3/20/14
to SAGE support
sage: p=101
sage: F2 = GF(p^2,'a')
sage: F6 = GF(p^6,'b')
sage: F12 = GF(p^12,'c')

or replace the last two lines by

sage: F6=F2.extension(3,'b')
sage: F12=F6.extension(2,'c')

The relative extensions of finite fields are (relatively) new so I
recommend upgrading as I do not think that was possible in 5.9.

John Cremona

> Thanks

ghamma...@gmail.com

unread,
Mar 20, 2014, 3:54:38 PM3/20/14
to sage-s...@googlegroups.com
بتاريخ الأربعاء، 19 مارس، 2014 UTC+1 9:26:58 م، كتب ghamma...@gmail.com:
> Bonsoir
> SVP, j'ai besoin de definir sur Sage 3 extensions de corps, mais je n'arrive pas. Je peux definir que deux extensions.

Thanks for your answer, i did this method baut what i need is to define 3 extensions:

F=GF(p)
#-------------------------------

#--------------Fp^2--------------
K2.<x>=PolynomialRing(F)
F2.<i>=F.extension(x^2+1)
#------------------------------------
#-------------Fp^6---------------------
K6.<y>=PolynomialRing(F2)
F6.<v>=F2.extension(y^3-i-1)
F6.is_field=lambda:True
#-------------------------------------

#---------------Fp^12-------------------

#K12.<z>=PolynomialRing(F6)
#F12.<w>=F6.extension(z^2-v)
#F12.is_field=lambda:True
#---------------------------

but by this way Fp^6 and Fp^2 are fields but no Fp^12

ghamma...@gmail.com

unread,
Mar 20, 2014, 4:11:49 PM3/20/14
to sage-s...@googlegroups.com
بتاريخ الأربعاء، 19 مارس، 2014 UTC+1 9:26:58 م، كتب ghamma...@gmail.com:
> Bonsoir
> SVP, j'ai besoin de definir sur Sage 3 extensions de corps, mais je n'arrive pas. Je peux definir que deux extensions.

I need this representation because i like to separe each element for the field ie
for exemple x in Fp^2 thats mean that x=a*i+b, then i like to find a and b (x[0]and x[1]) (same things for Fp^6 and Fp^12.

John Cremona

unread,
Mar 21, 2014, 5:18:34 AM3/21/14
to SAGE support
What is your p? Are you sure that the extensions you are making are
using irreducible polynomials (which I cannot tell without knowing p)?

John

ghamma...@gmail.com

unread,
Mar 21, 2014, 3:08:29 PM3/21/14
to sage-s...@googlegroups.com
بتاريخ الأربعاء، 19 مارس، 2014 UTC+1 9:26:58 م، كتب ghamma...@gmail.com:
> Bonsoir
> SVP, j'ai besoin de definir sur Sage 3 extensions de corps, mais je n'arrive pas. Je peux definir que deux extensions.

Yes Mr i'm sure that the polynoms are irreductible,
p is a large prime number (256 bits), here is:
t=-(2^62 + 2^55 +1)

p=36*t^4+36*t^3+24*t^2+6*t+1

At first i defined F=GF(p), then i need to define three extensions Fp^2, Fp^6 and Fp12

John Cremona

unread,
Mar 21, 2014, 4:06:19 PM3/21/14
to SAGE support
I think that v is a square in F6.

John

ghamma...@gmail.com

unread,
Mar 21, 2014, 5:30:12 PM3/21/14
to sage-s...@googlegroups.com
بتاريخ الأربعاء، 19 مارس، 2014 UTC+1 9:26:58 م، كتب ghamma...@gmail.com:
> Bonsoir
> SVP, j'ai besoin de definir sur Sage 3 extensions de corps, mais je n'arrive pas. Je peux definir que deux extensions.

When i find the test F6.is field() the answer is true,

in this representation i have Fp^2, Fp^6 and Fp^12 are fields. But I need that Fp^2 be a field extension bacause I need to seperate his elements(a in Fp^2=a0+i*a1 and i need the value of a0=a[0] and a1=a[1])
#t=2^62-2^54+2^44
t=-(2^62 + 2^55 +1)
#t=2^63-2^49
p=36*t^4+36*t^3+24*t^2+6*t+1
r=36*t^4+36*t^3+18*t^2+6*t+1
tr=6*t^2+1
#-------------- Fp--------------
F=GF(p)
#-------------------------------
b=2
#--------------Fp^2--------------
K2.<x>=PolynomialRing(F)
F2.<i>=FiniteField(p^2,modulus=x^2+1)
#------------------------------------
#-------------Fp^6---------------------
K6.<y>=PolynomialRing(F2)
F6.<v>=F2.extension(y^3-i-1)
#-------------------------------------

#---------------Fp^12-------------------

K12.<z>=PolynomialRing(F6)
F12.<w>=F6.extension(z^2-v)
F12.is_field=lambda:True
#----

Peter Bruin

unread,
Mar 24, 2014, 10:41:13 AM3/24/14
to sage-s...@googlegroups.com, ghamma...@gmail.com
Bonjour,

Il est malheureusement un peu problématique de construire des tours
(extensions successives) de corps. Sage sait bien vérifier que votre F6
est un corps, mais F6 est toujours représenté comme anneau quotient et
non comme corps fini ; c'est pourquoi certaines opérations naturelles ne
marchent pas.

Une solution possible est de commencer par construire F12 et de voir les
autres corps comme des sous-corps de F12. Un calcul montre que le
polynôme minimal de l'élément primitif w de F12 est x^12 - 2x^6 + 2. On
peut maintenant faire

sage: t=-(2^62 + 2^55 +1)
sage: p=36*t^4+36*t^3+24*t^2+6*t+1
sage: F=GF(p)
sage: R.<x> = PolynomialRing(F)
sage: f = x^12 - 2*x^6 + 2
sage: F12.<w> = FiniteField(p^12, modulus=f)
sage: v = w^2
sage: i = v^3 - 1
sage: i^2 == -1
True

En principe, il est possible de construire explicitement les sous-corps
et les plongements F2 -> F6 -> F12, mais il est sans doute plus facile
de faire tous les calculs directement dans F12.

Peter
Reply all
Reply to author
Forward
0 new messages