OK, that makes sense now.  It boils down to this: given an element of
F12=GF(p^12) which happens to lie in F2 = GF(p^2), how to express it
in terms of a generator of F2.  This is not quite as easy as it should
be but this works (assuming that you have defined F12 with generator a
and F2 with generator b):

sage: bb = b.minpoly().roots(F12)[0][0]
sage: i = F2.hom([bb],F12)
sage: j = i.section()

Here we have defined an embedding i of F2 into F12 by find a place to
map b (called bb) and set j to be an inverse to i.  (I think we should
be use i.inverse_image() but that gave me a NotImplementedError, which
is a pity since I have used sort of construction easily in extensions
of number fields).

Now if f is your polynomial in F12[x] whose coefficients lie in F2 you can say

sage: PolynomialRing(F2,'X')([j(c) for c in f.coeffs()])

to get what you want, I hope!

John

On 17 April 2014 02:52, Irene <irene.alv...@gmail.com> wrote:
> Sorry, I didn't write it correctly. I meant GF(p^12,'a') instead of
> GF(p^13,'a'). As 2 divides 12, GF(p^12,'a') is an extension of GF(p^2,'b').
> My question is the same now with the correct data.
>
> On Thursday, April 17, 2014 11:04:40 AM UTC+2, John Cremona wrote:
>>
>> On 17 April 2014 01:55, Irene <irene....@gmail.com> wrote:
>> > Hello!
>> >
>> > I want to define a polynomial that I know lies in GF(p^2,'b')[x],
>> > p=3700001.
>> > The problem is that I have to define it as a product
>> > E=(X-a_1)*(X-a_2)*(X-a_3)*(X-a_4)*(X-a_5)*(X-a_6), where every a_j is in
>> > GF(p^13,'a')[X].
>> > I tried to do GF(p^2,'b')[x](E), but then Sage just changes the
>> > generator
>> > 'a' and writes the same expression with the generator 'b'.
>> > Any idea about how to do this?
>> > Thank you!!
>>
>> Did you write that correctly?  GF(p^13) is not an extension of
>> GF(p^2).  If a1 is in GF(p^13) then a1.minpoly() will give its min
>> poly, in GF(p)[x].
>>
>> John Cremona
>>
>> >
>> > --
>> > 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+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-support@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+unsubscr...@googlegroups.com.
To post to this group, send email to sage-support@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Reply via email to