Givaro finite field morphisms¶
Special implementation for givaro finite fields of:
embeddings between finite fields
frobenius endomorphisms
SEEALSO:
:mod:`sage.rings.finite_rings.hom_finite_field`
AUTHOR:
Xavier Caruso (2012-06-29)
- class sage.rings.finite_rings.hom_finite_field_givaro.FrobeniusEndomorphism_givaro[source]¶
Bases:
FrobeniusEndomorphism_finite_field
- fixed_field()[source]¶
Return the fixed field of
self
.OUTPUT:
a tuple
, where is the subfield of the domain consisting of elements fixed byself
and is an embedding of into the domain.
Note
The name of the variable used for the subfield (if it is not a prime subfield) is suffixed by
_fixed
.EXAMPLES:
sage: k.<t> = GF(5^6) sage: f = k.frobenius_endomorphism(2) sage: kfixed, embed = f.fixed_field() sage: kfixed Finite Field in t_fixed of size 5^2 sage: embed # random Ring morphism: From: Finite Field in t_fixed of size 5^2 To: Finite Field in t of size 5^6 Defn: t_fixed |--> 4*t^5 + 2*t^4 + 4*t^2 + t sage: tfixed = kfixed.gen() sage: embed(tfixed) # random 4*t^5 + 2*t^4 + 4*t^2 + t
>>> from sage.all import * >>> k = GF(Integer(5)**Integer(6), names=('t',)); (t,) = k._first_ngens(1) >>> f = k.frobenius_endomorphism(Integer(2)) >>> kfixed, embed = f.fixed_field() >>> kfixed Finite Field in t_fixed of size 5^2 >>> embed # random Ring morphism: From: Finite Field in t_fixed of size 5^2 To: Finite Field in t of size 5^6 Defn: t_fixed |--> 4*t^5 + 2*t^4 + 4*t^2 + t >>> tfixed = kfixed.gen() >>> embed(tfixed) # random 4*t^5 + 2*t^4 + 4*t^2 + t
k.<t> = GF(5^6) f = k.frobenius_endomorphism(2) kfixed, embed = f.fixed_field() kfixed embed # random tfixed = kfixed.gen() embed(tfixed) # random