Frobenius endomorphisms on p-adic fields#
- class sage.rings.padics.morphism.FrobeniusEndomorphism_padics[source]#
Bases:
RingHomomorphism
A class implementing Frobenius endomorphisms on p-adic fields.
- is_identity()[source]#
Return
True
if this morphism is the identity morphism.EXAMPLES:
sage: K.<a> = Qq(5^3) sage: Frob = K.frobenius_endomorphism() sage: Frob.is_identity() False sage: (Frob^3).is_identity() True
>>> from sage.all import * >>> K = Qq(Integer(5)**Integer(3), names=('a',)); (a,) = K._first_ngens(1) >>> Frob = K.frobenius_endomorphism() >>> Frob.is_identity() False >>> (Frob**Integer(3)).is_identity() True
- is_injective()[source]#
Return
True
since any power of the Frobenius endomorphism over an unramified p-adic field is always injective.EXAMPLES:
sage: K.<a> = Qq(5^3) sage: Frob = K.frobenius_endomorphism() sage: Frob.is_injective() True
>>> from sage.all import * >>> K = Qq(Integer(5)**Integer(3), names=('a',)); (a,) = K._first_ngens(1) >>> Frob = K.frobenius_endomorphism() >>> Frob.is_injective() True
- is_surjective()[source]#
Return
True
since any power of the Frobenius endomorphism over an unramified p-adic field is always surjective.EXAMPLES:
sage: K.<a> = Qq(5^3) sage: Frob = K.frobenius_endomorphism() sage: Frob.is_surjective() True
>>> from sage.all import * >>> K = Qq(Integer(5)**Integer(3), names=('a',)); (a,) = K._first_ngens(1) >>> Frob = K.frobenius_endomorphism() >>> Frob.is_surjective() True
- order()[source]#
Return the order of this endomorphism.
EXAMPLES:
sage: K.<a> = Qq(5^12) sage: Frob = K.frobenius_endomorphism() sage: Frob.order() 12 sage: (Frob^2).order() 6 sage: (Frob^9).order() 4
>>> from sage.all import * >>> K = Qq(Integer(5)**Integer(12), names=('a',)); (a,) = K._first_ngens(1) >>> Frob = K.frobenius_endomorphism() >>> Frob.order() 12 >>> (Frob**Integer(2)).order() 6 >>> (Frob**Integer(9)).order() 4
- power()[source]#
Return the smallest integer \(n\) such that this endomorphism is the \(n\)-th power of the absolute (arithmetic) Frobenius.
EXAMPLES:
sage: K.<a> = Qq(5^12) sage: Frob = K.frobenius_endomorphism() sage: Frob.power() 1 sage: (Frob^9).power() 9 sage: (Frob^13).power() 1
>>> from sage.all import * >>> K = Qq(Integer(5)**Integer(12), names=('a',)); (a,) = K._first_ngens(1) >>> Frob = K.frobenius_endomorphism() >>> Frob.power() 1 >>> (Frob**Integer(9)).power() 9 >>> (Frob**Integer(13)).power() 1