Finite field morphisms for prime fields

Special implementation for prime finite field of:

  • embeddings of such field into general finite fields

  • Frobenius endomorphisms (= identity with our assumptions)

AUTHOR:

  • Xavier Caruso (2012-06-29)

class sage.rings.finite_rings.hom_prime_finite_field.FiniteFieldHomomorphism_prime[source]

Bases: FiniteFieldHomomorphism_generic

A class implementing embeddings of prime finite fields into general finite fields.

class sage.rings.finite_rings.hom_prime_finite_field.FrobeniusEndomorphism_prime[source]

Bases: FrobeniusEndomorphism_finite_field

A class implementing Frobenius endomorphism on prime finite fields (i.e. identity map :-).

fixed_field()[source]

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

Since here the domain is a prime field, the subfield is the same prime field and the embedding is necessarily the identity map.

EXAMPLES:

sage: k.<t> = GF(5)
sage: f = k.frobenius_endomorphism(2); f
Identity endomorphism of Finite Field of size 5
sage: kfixed, embed = f.fixed_field()

sage: kfixed == k
True
sage: [ embed(x) == x for x in kfixed ]
[True, True, True, True, True]
>>> from sage.all import *
>>> k = GF(Integer(5), names=('t',)); (t,) = k._first_ngens(1)
>>> f = k.frobenius_endomorphism(Integer(2)); f
Identity endomorphism of Finite Field of size 5
>>> kfixed, embed = f.fixed_field()

>>> kfixed == k
True
>>> [ embed(x) == x for x in kfixed ]
[True, True, True, True, True]
k.<t> = GF(5)
f = k.frobenius_endomorphism(2); f
kfixed, embed = f.fixed_field()
kfixed == k
[ embed(x) == x for x in kfixed ]
class sage.rings.finite_rings.hom_prime_finite_field.SectionFiniteFieldHomomorphism_prime[source]

Bases: SectionFiniteFieldHomomorphism_generic