Documentation

Iwasawalib.FieldTheory.IntermediateField.MaximalGaloisSExtension

Maximal Galois S-subextension #

Let S be a set of prime numbers. The maximal Galois S-subextension of K / F (IntermediateField.maximalGaloisSExtension F K S) is defined to be the compositum of all finite Galois subextensions E of K / F such that the prime factors of [E : F] is contained in S.

theorem IntermediateField.exists_finset_of_le_iSup {F : Type u_3} [Field F] {E : Type u_4} [Field E] [Algebra F E] {ι : Type u_5} {f : ιIntermediateField F E} {x : IntermediateField F E} [FiniteDimensional F x] (hx : x ⨆ (i : ι), f i) :
∃ (s : Finset ι), x is, f i

TODO: go mathlib below IntermediateField.exists_finset_of_mem_iSup

theorem Nat.primeFactors_prod_eq_biUnion {ι : Type u_3} {f : ι} {s : Finset ι} (h : is, f i 0) :
(∏ is, f i).primeFactors = s.biUnion fun (i : ι) => (f i).primeFactors

TODO: go mathlib

theorem Nat.primeFactors_subset_singleton_iff_of_prime {p n : } (hp : Prime p) :
n.primeFactors {p} n = 0 ∃ (k : ), n = p ^ k

TODO: go mathlib

Assertion that a field extension is S-extension #

class IsSExtension (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (S : Set ) :

IsSExtension F K S is a typeclass asserting that K / F is an S-extension, which means that for any finite subextension E / F of K / F, the prime factors of [E : F] is contained in S.

Note that this does not exclude the case that K / F is a purely transcendental extension, which is mathematically not interesting.

Instances
    theorem isSExtension_iff (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (S : Set ) :
    theorem IsSExtension.primeFactors_subset (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (S : Set ) [IsSExtension F K S] :
    theorem isSExtension_singleton_iff_of_finiteDimensional (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (p : ) [Fact (Nat.Prime p)] [FiniteDimensional F K] :
    IsSExtension F K {p} ∃ (n : ), Module.finrank F K = p ^ n
    theorem isSExtension_singleton_of_exists_finrank_eq_pow (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (p : ) [Fact (Nat.Prime p)] (h : ∃ (n : ), Module.finrank F K = p ^ n) :
    theorem isSExtension_iff_primeFactors_adjoin_simple_subset (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (S : Set ) :
    IsSExtension F K S ∀ (x : K), (Module.finrank F Fx).primeFactors S

    K / F is an S-extension if and only if for any x in K, F⟮x⟯ / F is (either an infinite extension or) of prime factors of degree contained in S.

    instance isSExtension_self (F : Type u_1) [Field F] (S : Set ) :
    theorem IsSExtension.of_algEquiv {F : Type u_1} {K : Type u_2} [Field F] [Field K] [Algebra F K] (S : Set ) {K' : Type u_3} [Field K'] [Algebra F K'] (f : K ≃ₐ[F] K') [IsSExtension F K S] :
    theorem IsSExtension.of_equiv_equiv (S : Set ) {F : Type u_3} {E : Type u_4} [Field F] [Field E] [Algebra F E] {M : Type u_5} {N : Type u_6} [Field M] [Field N] [Algebra M N] {f : F ≃+* M} {g : E ≃+* N} (hcomp : (algebraMap M N).comp f = (↑g).comp (algebraMap F E)) [IsSExtension F E S] :
    theorem IsSExtension.tower_bot (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (S : Set ) (L : Type u_3) [Field L] [Algebra F L] [Algebra K L] [IsScalarTower F K L] [IsSExtension F L S] :

    If L / K / F is a field extension tower, L / F is an S-extension, then K / F is an S-extension.

    theorem IsSExtension.tower_top_of_isAlgebraic (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (S : Set ) (L : Type u_3) [Field L] [Algebra F L] [Algebra K L] [IsScalarTower F K L] [IsSExtension F L S] [Algebra.IsAlgebraic F K] :

    If L / K / F is a field extension tower, L / F is an S-extension, K / F is algebraic, then L / K is an S-extension.

    theorem IsSExtension.trans_of_isAlgebraic (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (S : Set ) (L : Type u_3) [Field L] [Algebra F L] [Algebra K L] [IsScalarTower F K L] [IsSExtension F K S] [IsSExtension K L S] [Algebra.IsAlgebraic F K] :

    If L / K / F is a field extension tower, L / K and K / F are S-extensions, K / F is algebraic, then L / F is an S-extension.

    theorem IsSExtension.of_subset (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] {S : Set } [IsSExtension F K S] {S' : Set } (h : S S') :

    If L / F is an algebraic S-extension, then it is the compositum of all finite S-extensions inside L.

    theorem IntermediateField.eq_sSup_of_isGalois_of_isSExtension {F : Type u_1} {K : Type u_2} [Field F] [Field K] [Algebra F K] (S : Set ) (L : IntermediateField F K) [IsGalois F L] [IsSExtension F (↥L) S] :

    If L / F is a Galois S-extension, then it is the compositum of all finite Galois S-extensions inside L.

    instance isSExtension_iSup_of_isGalois {F : Type u_1} {K : Type u_2} [Field F] [Field K] [Algebra F K] (S : Set ) {ι : Type u_3} (L : ιIntermediateField F K) [∀ (i : ι), IsGalois F (L i)] [∀ (i : ι), IsSExtension F (↥(L i)) S] :
    IsSExtension F (↥(⨆ (i : ι), L i)) S

    Compositum of a family of Galois S-extensions is also an S-extension. Note that this is not true for non-Galois case.

    instance isSExtension_sup_of_isGalois {F : Type u_1} {K : Type u_2} [Field F] [Field K] [Algebra F K] (S : Set ) (E1 E2 : IntermediateField F K) [IsGalois F E1] [IsGalois F E2] [IsSExtension F (↥E1) S] [IsSExtension F (↥E2) S] :
    IsSExtension F (↥(E1E2)) S

    Compositum of a two Galois S-extensions is also an S-extension. Note that this is not true for non-Galois case.

    Maximal Galois S-subextension #

    The maximal Galois S-subextension of K / F is defined to be the compositum of all Galois subextensions E of K / F which are S-extensions (IsSExtension).

    Equations
    Instances For

      The maximal Galois S-subextension of K / F is also equal to the compositum of all finite Galois subextensions E of K / F which are S-extensions (IsSExtension).

      theorem IntermediateField.le_maximalGaloisSExtension {F : Type u_1} {K : Type u_2} [Field F] [Field K] [Algebra F K] (S : Set ) (E : IntermediateField F K) [IsGalois F E] [IsSExtension F (↥E) S] :
      theorem IntermediateField.le_maximalGaloisSExtension_singleton {F : Type u_1} {K : Type u_2} [Field F] [Field K] [Algebra F K] {p : } [Fact (Nat.Prime p)] (E : IntermediateField F K) [IsGalois F E] (h : ∃ (n : ), Module.finrank F E = p ^ n) :
      theorem IntermediateField.maximalGaloisSExtension_le_iff {F : Type u_1} {K : Type u_2} [Field F] [Field K] [Algebra F K] {S : Set } (E : IntermediateField F K) :
      maximalGaloisSExtension F K S E ∀ (E' : IntermediateField F K), IsGalois F E'IsSExtension F (↥E') SE' E
      theorem IntermediateField.le_lift_maximalGaloisSExtension {F : Type u_1} {K : Type u_2} [Field F] [Field K] [Algebra F K] (S : Set ) {L E : IntermediateField F K} (h : E L) [IsGalois F E] [IsSExtension F (↥E) S] :
      theorem IntermediateField.lift_maximalGaloisSExtension_le_iff {F : Type u_1} {K : Type u_2} [Field F] [Field K] [Algebra F K] {S : Set } (L E : IntermediateField F K) :
      lift (maximalGaloisSExtension F (↥L) S) E E'L, IsGalois F E'IsSExtension F (↥E') SE' E
      theorem IntermediateField.isGalois_maximalGaloisSExtension_of_isGalois (F : Type u_1) (K : Type u_2) [Field F] [Field K] [Algebra F K] (S : Set ) (L : Type u_3) [Field L] [Algebra F L] [Algebra K L] [IsScalarTower F K L] [IsGalois F L] [IsGalois F K] :

      Suppose L / K / F is a field extension tower, such that L / F and K / F are Galois. Let H / K be the maximal Galois S-subextension of L / K. Then H / F is also Galois.