Finite Prime Fields¶
AUTHORS:
William Stein: initial version
Martin Albrecht (2008-01): refactoring
-
class
sage.rings.finite_rings.finite_field_prime_modn.
FiniteField_prime_modn
(p, check=True, modulus=None)¶ Bases:
sage.rings.finite_rings.finite_field_base.FiniteField
,sage.rings.finite_rings.integer_mod_ring.IntegerModRing_generic
Finite field of order \(p\) where \(p\) is prime.
EXAMPLES:
sage: FiniteField(3) Finite Field of size 3 sage: FiniteField(next_prime(1000)) Finite Field of size 1009
-
characteristic
()¶ Return the characteristic of code{self}.
EXAMPLES:
sage: k = GF(7) sage: k.characteristic() 7
-
construction
()¶ Returns the construction of this finite field (for use by sage.categories.pushout)
EXAMPLES:
sage: GF(3).construction() (QuotientFunctor, Integer Ring)
-
degree
()¶ Return the degree of
self
over its prime field.This always returns 1.
EXAMPLES:
sage: FiniteField(3).degree() 1
-
gen
(n=0)¶ Return a generator of
self
over its prime field, which is a root ofself.modulus()
.Unless a custom modulus was given when constructing this prime field, this returns \(1\).
INPUT:
n
– must be 0
OUTPUT:
An element \(a\) of
self
such thatself.modulus()(a) == 0
.Warning
This generator is not guaranteed to be a generator for the multiplicative group. To obtain the latter, use
multiplicative_generator()
or use themodulus="primitive"
option when constructing the field.EXAMPLES:
sage: k = GF(13) sage: k.gen() 1 sage: k = GF(1009, modulus="primitive") sage: k.gen() # this gives a primitive element 11 sage: k.gen(1) Traceback (most recent call last): ... IndexError: only one generator
-
is_prime_field
()¶ Return
True
since this is a prime field.EXAMPLES:
sage: k.<a> = GF(3) sage: k.is_prime_field() True sage: k.<a> = GF(3^2) sage: k.is_prime_field() False
-
order
()¶ Return the order of this finite field.
EXAMPLES:
sage: k = GF(5) sage: k.order() 5
-
polynomial
(name=None)¶ Returns the polynomial
name
.EXAMPLES:
sage: k.<a> = GF(3) sage: k.polynomial() x
-