Given an irreducible polynomial P from Q[x] I want to find the primitive 
element A of the extension field defined by it. 
Moreover I want to know how to write the roots of P in terms of A(per 
example, the coefficients of the polynomial of powers of A). 
Finally I want to find the dimension of the vectors space of the extension 
field of the roots of P. 
For example, if the roots are sqrt(2) and -sqrt(2) I can write one in terms 
of the other with rational coefficients(they are rational dependent). So 
they have dimension 1, in some sense.

One such way of starting this is by making the following:

P = some irreducible polynomial on variable x
K.<a> = NumberField(P)
f = (a).coordinates_in_terms_of_powers()

rts = P.roots(ring=QQbar)#need the QQbar as some without this some roots 
are not returned
for r in rts:
     coeff = f(r[0])
     #do something with it

So my idea was using this f to get the coefficients of the polynomial in A 
of the roots of P. But when I do the above I get the following error:
File "sage/rings/number_field/number_field_element.pyx", line 5341, in 
sage.rings.number_field.number_field_element.CoordinateFunction.__call__ 
(build/cythonized/sage/rings/number_field/number_field_element.cpp:43366) 
raise TypeError("Cannot coerce element into this number field") TypeError: 
Cannot coerce element into this number field 
As I saw r[0]'s parent is a Algebraic Field. There is any way of casting or 
coercing this field into the number field in order to get the coefficients? 
Because when I write a "number" M in terms of a and call f(M) it works as 
expected. If not, is there any other way of getting this coefficients? Any 
work around from number field that gives me these coefficients in terms of 
the primitive element from the polynomial that generates it? Or is there 
another approach to this using vectors spaces or modules? Because in the 
end I'll also need the dimension as said before.

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-support/041ba2d0-ee35-439a-85e5-724a16a8473d%40googlegroups.com.

Reply via email to