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 withp ^ nelements
Main Results #
GaloisField.algEquivGaloisField: Any finite field is isomorphic to some Galois fieldFiniteField.algEquivOfCardEq: Uniqueness of finite fields : algebra isomorphismFiniteField.ringEquivOfCardEq: Uniqueness of finite fields : ring isomorphismcard_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
@[instance_reducible]
noncomputable instance instInhabitedGaloisField (p : ℕ) [Fact (Nat.Prime p)] (n : ℕ) :
Inhabited (GaloisField p n)
Equations
- instInhabitedGaloisField p n = { default := instInhabitedGaloisField._aux_1 p n }
@[instance_reducible]
noncomputable instance instFieldGaloisField (p : ℕ) [Fact (Nat.Prime p)] (n : ℕ) :
Field (GaloisField p n)
Equations
- One or more equations did not get rendered due to their size.
@[instance_reducible]
noncomputable instance instAlgebraZModGaloisField (p : ℕ) [Fact (Nat.Prime p)] (n : ℕ) :
Algebra (ZMod p) (GaloisField p n)
Equations
- instAlgebraZModGaloisField p n = { smul := instAlgebraZModGaloisField._aux_1 p n, algebraMap := instAlgebraZModGaloisField._aux_3 p n, commutes' := ⋯, smul_def' := ⋯ }
instance instFiniteDimensionalZModGaloisField (p : ℕ) [Fact (Nat.Prime p)] (n : ℕ) :
FiniteDimensional (ZMod p) (GaloisField p n)
instance instIsSplittingFieldZModGaloisFieldHSubPolynomialHPowNatX (p : ℕ) [Fact (Nat.Prime p)] (n : ℕ) :
Polynomial.IsSplittingField (ZMod p) (GaloisField p n) (Polynomial.X ^ p ^ n - Polynomial.X)
theorem GaloisField.splits_zmod_X_pow_sub_X (p : ℕ) [h_prime : Fact (Nat.Prime p)] :
(Polynomial.X ^ p - Polynomial.X).Splits
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.map (algebraMap (ZMod p) K) (Polynomial.X ^ Fintype.card K - Polynomial.X)).Splits
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.map (algebraMap (ZMod p) K) (Polynomial.X ^ Nat.card K - Polynomial.X)).Splits
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)
noncomputable 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
noncomputable 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) :