Galois fields #
If p is a prime number, and n a natural number,
then GaloisField p n is defined as the splitting field of X^(p^n) - X over ZMod p.
It is a finite field with p ^ n elements.
Main definition #
- GaloisField p nis a field with- p ^ nelements
Main Results #
- GaloisField.algEquivGaloisField: Any finite field is isomorphic to some Galois field
- FiniteField.algEquivOfCardEq: Uniqueness of finite fields : algebra isomorphism
- FiniteField.ringEquivOfCardEq: Uniqueness of finite fields : ring isomorphism
- card_algHom_of_finrank_dvd: if- [K:F] ∣ [L:F]then- #(K →ₐ[F] L) = [K:F]
- nonempty_algHom_iff_finrank_dvd:- (K →ₐ[F] L)is nonempty iff- [K:F] ∣ [L:F]. This and the above result helps to classify the category of finite fields.
A finite field with p ^ n elements.
Every field with the same cardinality is (non-canonically)
isomorphic to this field.
Equations
- GaloisField p n = (Polynomial.X ^ p ^ n - Polynomial.X).SplittingField
Instances For
Equations
Equations
Equations
- ⋯ = ⋯
instance
instAlgebraZModGaloisField
(p : ℕ)
[Fact (Nat.Prime p)]
(n : ℕ)
 :
Algebra (ZMod p) (GaloisField p n)
Equations
Equations
- ⋯ = ⋯
instance
instFiniteDimensionalZModGaloisField
(p : ℕ)
[Fact (Nat.Prime p)]
(n : ℕ)
 :
FiniteDimensional (ZMod p) (GaloisField p n)
Equations
- ⋯ = ⋯
instance
instIsSplittingFieldZModGaloisFieldHSubPolynomialHPowNatX
(p : ℕ)
[Fact (Nat.Prime p)]
(n : ℕ)
 :
Polynomial.IsSplittingField (ZMod p) (GaloisField p n) (Polynomial.X ^ p ^ n - Polynomial.X)
Equations
- ⋯ = ⋯
theorem
GaloisField.splits_zmod_X_pow_sub_X
(p : ℕ)
[h_prime : Fact (Nat.Prime p)]
 :
Polynomial.Splits (RingHom.id (ZMod p)) (Polynomial.X ^ p - Polynomial.X)
A Galois field with exponent 1 is equivalent to ZMod
Equations
Instances For
theorem
FiniteField.splits_X_pow_card_sub_X
(p : ℕ)
[h_prime : Fact (Nat.Prime p)]
{K : Type u_1}
[Field K]
[Fintype K]
[Algebra (ZMod p) K]
 :
Polynomial.Splits (algebraMap (ZMod p) K) (Polynomial.X ^ Fintype.card K - Polynomial.X)
theorem
FiniteField.isSplittingField_of_card_eq
(p : ℕ)
[h_prime : Fact (Nat.Prime p)]
(n : ℕ)
{K : Type u_1}
[Field K]
[Fintype K]
[Algebra (ZMod p) K]
(h : Fintype.card K = p ^ n)
 :
Polynomial.IsSplittingField (ZMod p) K (Polynomial.X ^ p ^ n - Polynomial.X)
theorem
FiniteField.splits_X_pow_nat_card_sub_X
(p : ℕ)
[h_prime : Fact (Nat.Prime p)]
{K : Type u_1}
[Field K]
[Algebra (ZMod p) K]
[Finite K]
 :
Polynomial.Splits (algebraMap (ZMod p) K) (Polynomial.X ^ Nat.card K - Polynomial.X)
theorem
FiniteField.isSplittingField_of_nat_card_eq
(p : ℕ)
[h_prime : Fact (Nat.Prime p)]
(n : ℕ)
{K : Type u_1}
[Field K]
[Algebra (ZMod p) K]
(h : Nat.card K = p ^ n)
 :
Polynomial.IsSplittingField (ZMod p) K (Polynomial.X ^ p ^ n - Polynomial.X)
def
FiniteField.algEquivOfCardEq
{K : Type u_1}
{K' : Type u_2}
[Field K]
[Field K']
[Fintype K]
[Fintype K']
(p : ℕ)
[h_prime : Fact (Nat.Prime p)]
[Algebra (ZMod p) K]
[Algebra (ZMod p) K']
(hKK' : Fintype.card K = Fintype.card K')
 :
Uniqueness of finite fields: Any two finite fields of the same cardinality are (possibly noncanonically) isomorphic
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
FiniteField.ringEquivOfCardEq
{K : Type u_1}
{K' : Type u_2}
[Field K]
[Field K']
[Fintype K]
[Fintype K']
(hKK' : Fintype.card K = Fintype.card K')
 :
Uniqueness of finite fields: Any two finite fields of the same cardinality are (possibly noncanonically) isomorphic
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
FiniteField.pow_finrank_eq_natCard
(p : ℕ)
[Fact (Nat.Prime p)]
(k : Type u_3)
[AddCommGroup k]
[Finite k]
[Module (ZMod p) k]
 :
theorem
FiniteField.pow_finrank_eq_card
(p : ℕ)
[Fact (Nat.Prime p)]
(k : Type u_3)
[AddCommGroup k]
[Fintype k]
[Module (ZMod p) k]
 :
theorem
FiniteField.natCard_algHom_of_finrank_dvd
{F : Type u_3}
{K : Type u_4}
{L : Type u_5}
[Field F]
[Field K]
[Algebra F K]
[Field L]
[Algebra F L]
[Finite L]
(h : Module.finrank F K ∣ Module.finrank F L)
 :
theorem
FiniteField.card_algHom_of_finrank_dvd
{F : Type u_3}
{K : Type u_4}
{L : Type u_5}
[Field F]
[Field K]
[Algebra F K]
[Field L]
[Algebra F L]
[Finite L]
[Finite K]
(h : Module.finrank F K ∣ Module.finrank F L)
 :