Finite field morphisms using Givaro

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.FiniteFieldHomomorphism_givaro

Bases: sage.rings.finite_rings.hom_finite_field.FiniteFieldHomomorphism_generic

class sage.rings.finite_rings.hom_finite_field_givaro.FrobeniusEndomorphism_givaro

Bases: sage.rings.finite_rings.hom_finite_field.FrobeniusEndomorphism_finite_field

fixed_field()

Return the fixed field of self.

OUTPUT:

  • a tuple \((K, e)\), where \(K\) is the subfield of the domain consisting of elements fixed by self and \(e\) is an embedding of \(K\) 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
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)
4*t^5 + 2*t^4 + 4*t^2 + t
class sage.rings.finite_rings.hom_finite_field_givaro.SectionFiniteFieldHomomorphism_givaro

Bases: sage.rings.finite_rings.hom_finite_field.SectionFiniteFieldHomomorphism_generic