Module

FiniteRadicalSupport.lean

Nyll.ClassFieldTheory.KummerTheory.Concrete.SUnitPreparation.FiniteRadicalSupport
19 declarations indexed from sourceView source ↗

Finite support for Kummer radicals

A chosen finite enlargement of places containing representatives of every class in a finite Kummer radical.

Declarations

KummerTheory.sUnitFiniteKummerRadical

The finite Kummer radical D ∩ Kˢ, where D = Lˣⁿ ∩ Kˣ.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
def sUnitFiniteKummerRadical
    {L : Type*} [Field L] [Algebra K L]
    (n : ℕ+)
    (S : Finset (HeightOneSpectrum (𝓞 K))) :
    Subgroup Kˣ
KummerTheory.mem_sUnitFiniteKummerRadical_iff

An S-unit belongs to the finite Kummer radical exactly when it has an n-th root in L.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem mem_sUnitFiniteKummerRadical_iff
    {L : Type*} [Field L] [Algebra K L]
    (n : ℕ+)
    (S : Finset (HeightOneSpectrum (𝓞 K)))
    (x : Kˣ) :
    x ∈ sUnitFiniteKummerRadical (K := K) (L := L) n S ↔
      x ∈ SUnitGroup (K := K) S ∧
        ∃ beta : Lˣ,
          beta ^ (n : ℕ) =
            Units.map (algebraMap K L).toMonoidHom x
KummerTheory.sUnitKummerSubgroup

Adjoin the ambient n-th powers to D ∩ Kˢ, producing an admissible object on the subgroup side of Kummer theory.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
def sUnitKummerSubgroup
    {L : Type*} [Field L] [Algebra K L]
    (n : ℕ+)
    (S : Finset (HeightOneSpectrum (𝓞 K))) :
    KummerTheory.KummerSubgroup K n
KummerTheory.sUnitKummerSubgroup_le_finiteKummerRadicalSubgroup

The S-unit Kummer subgroup lies in the actual radical of L / K.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem sUnitKummerSubgroup_le_finiteKummerRadicalSubgroup
    {L : Type*} [Field L] [Algebra K L]
    (n : ℕ+)
    (S : Finset (HeightOneSpectrum (𝓞 K))) :
    (sUnitKummerSubgroup (K := K) (L := L) n S).1 ≤
      KummerTheory.finiteKummerRadicalSubgroup
        (K := K) (L := L) n
KummerTheory.sUnitGroup_mono

Enlarging the finite set of places enlarges the S-unit group.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem sUnitGroup_mono
    {S T : Finset (HeightOneSpectrum (𝓞 K))}
    (hST : S ⊆ T) :
    SUnitGroup (K := K) S ≤ SUnitGroup (K := K) T
KummerTheory.chosenUnitFiniteSupport

A chosen finite set of places outside which a given global unit is an integral unit.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
def chosenUnitFiniteSupport (x : Kˣ) :
    Finset (HeightOneSpectrum (𝓞 K))
KummerTheory.mem_sUnitGroup_chosenUnitFiniteSupport

A global unit is an S-unit for its chosen finite support.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem mem_sUnitGroup_chosenUnitFiniteSupport (x : Kˣ) :
    x ∈ SUnitGroup (K := K) (chosenUnitFiniteSupport (K := K) x)
KummerTheory.finite_chosenFiniteKummerRadicalQuotient

The actual radical quotient of a finite Galois extension is finite. This is obtained from the concrete finite Kummer character equivalence, not supplied as a finiteness hypothesis.

Source context 7 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
omit numberFieldK in
theorem finite_chosenFiniteKummerRadicalQuotient
    {L : Type*} [Field L] [Algebra K L]
    [FiniteDimensional K L] [IsGalois K L]
    (n : ℕ+)
    (hmu : (primitiveRoots (n : ℕ) K).Nonempty) :
    Finite
      ((KummerTheory.chosenFiniteKummerRadicalDatum
        (K := K) (L := L) n).RadicalQuotient)
KummerTheory.chosenFiniteKummerRadicalRepresentative

A chosen representative of a class in the actual finite Kummer radical quotient.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
def chosenFiniteKummerRadicalRepresentative
    {L : Type*} [Field L] [Algebra K L]
    (n : ℕ+)
    (q :
      (KummerTheory.chosenFiniteKummerRadicalDatum
        (K := K) (L := L) n).RadicalQuotient) :
    (KummerTheory.chosenFiniteKummerRadicalDatum
      (K := K) (L := L) n).carrier
KummerTheory.chosenFiniteKummerRadicalRepresentative_spec

The chosen representative maps back to the prescribed radical class.

Source context 7 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
omit numberFieldK in
theorem chosenFiniteKummerRadicalRepresentative_spec
    {L : Type*} [Field L] [Algebra K L]
    (n : ℕ+)
    (q :
      (KummerTheory.chosenFiniteKummerRadicalDatum
        (K := K) (L := L) n).RadicalQuotient) :
    (KummerTheory.chosenFiniteKummerRadicalDatum
        (K := K) (L := L) n).radicalQuotientMk
      (chosenFiniteKummerRadicalRepresentative
        (K := K) (L := L) n q) = q
KummerTheory.finiteKummerRadicalSupport

The union of the supports of one representative of every actual Kummer radical class.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
def finiteKummerRadicalSupport
    {L : Type*} [Field L] [Algebra K L]
    [FiniteDimensional K L] [IsGalois K L]
    (n : ℕ+)
    (hmu : (primitiveRoots (n : ℕ) K).Nonempty) :
    Finset (HeightOneSpectrum (𝓞 K))
KummerTheory.enlargeByFiniteKummerRadicalSupport

Enlarge any prescribed finite set by the finite supports needed to represent all actual Kummer radical classes by S-units.

Source context 7 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
open scoped Classical in
def enlargeByFiniteKummerRadicalSupport
    {L : Type*} [Field L] [Algebra K L]
    [FiniteDimensional K L] [IsGalois K L]
    (n : ℕ+)
    (hmu : (primitiveRoots (n : ℕ) K).Nonempty)
    (S : Finset (HeightOneSpectrum (𝓞 K))) :
    Finset (HeightOneSpectrum (𝓞 K))
KummerTheory.subset_enlargeByFiniteKummerRadicalSupport

The radical-support enlargement contains its starting set.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem subset_enlargeByFiniteKummerRadicalSupport
    {L : Type*} [Field L] [Algebra K L]
    [FiniteDimensional K L] [IsGalois K L]
    (n : ℕ+)
    (hmu : (primitiveRoots (n : ℕ) K).Nonempty)
    (S : Finset (HeightOneSpectrum (𝓞 K))) :
    S ⊆ enlargeByFiniteKummerRadicalSupport
      (K := K) (L := L) n hmu S
KummerTheory.chosenFiniteKummerRadicalRepresentative_mem_enlargedSUnitGroup

Each chosen radical representative is an S-unit after the chosen finite enlargement.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem chosenFiniteKummerRadicalRepresentative_mem_enlargedSUnitGroup
    {L : Type*} [Field L] [Algebra K L]
    [FiniteDimensional K L] [IsGalois K L]
    (n : ℕ+)
    (hmu : (primitiveRoots (n : ℕ) K).Nonempty)
    (S : Finset (HeightOneSpectrum (𝓞 K)))
    (q :
      (KummerTheory.chosenFiniteKummerRadicalDatum
        (K := K) (L := L) n).RadicalQuotient) :
    (chosenFiniteKummerRadicalRepresentative
        (K := K) (L := L) n q).1 ∈
      SUnitGroup (K := K)
        (enlargeByFiniteKummerRadicalSupport
          (K := K) (L := L) n hmu S)
KummerTheory.finiteKummerRadicalSubgroup_le_enlargedSUnitKummerSubgroup

After the chosen finite enlargement, the actual radical of L/K is generated by its S-unit part and the ambient n-th powers.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem finiteKummerRadicalSubgroup_le_enlargedSUnitKummerSubgroup
    {L : Type*} [Field L] [Algebra K L]
    [FiniteDimensional K L] [IsGalois K L]
    (n : ℕ+)
    (hmu : (primitiveRoots (n : ℕ) K).Nonempty)
    (S : Finset (HeightOneSpectrum (𝓞 K))) :
    KummerTheory.finiteKummerRadicalSubgroup
        (K := K) (L := L) n ≤
      (sUnitKummerSubgroup
        (K := K) (L := L) n
        (enlargeByFiniteKummerRadicalSupport
          (K := K) (L := L) n hmu S)).1
KummerTheory.enlargedSUnitKummerSubgroup_eq_finiteKummerRadicalSubgroup

Exact radical identification after the chosen finite enlargement.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem enlargedSUnitKummerSubgroup_eq_finiteKummerRadicalSubgroup
    {L : Type*} [Field L] [Algebra K L]
    [FiniteDimensional K L] [IsGalois K L]
    (n : ℕ+)
    (hmu : (primitiveRoots (n : ℕ) K).Nonempty)
    (S : Finset (HeightOneSpectrum (𝓞 K))) :
    (sUnitKummerSubgroup
        (K := K) (L := L) n
        (enlargeByFiniteKummerRadicalSupport
          (K := K) (L := L) n hmu S)).1 =
      KummerTheory.finiteKummerRadicalSubgroup
        (K := K) (L := L) n
KummerTheory.sUnitKummerSubgroup_le_fullSUnitKummerSubgroup

The S-unit radical subgroup belonging to an extension is contained in the full S-unit Kummer subgroup.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem sUnitKummerSubgroup_le_fullSUnitKummerSubgroup
    {L : Type*} [Field L] [Algebra K L]
    (n : ℕ+)
    (S : Finset (HeightOneSpectrum (𝓞 K))) :
    (sUnitKummerSubgroup (K := K) (L := L) n S).1 ≤
      (fullSUnitKummerSubgroup (K := K) n S).1
KummerTheory.kummerRadicalExtension_mono

Monotonicity of the concrete radical-extension construction.

Source context 7 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
omit numberFieldK in
theorem kummerRadicalExtension_mono
    {Omega : Type*} [Field Omega] [Algebra K Omega]
    (n : ℕ+)
    {Delta Gamma : Subgroup Kˣ}
    (h : Delta ≤ Gamma) :
    KummerTheory.kummerRadicalExtension
        (K := K) (Omega := Omega) n Delta ≤
      KummerTheory.kummerRadicalExtension
        (K := K) (Omega := Omega) n Gamma
KummerTheory.kummerRadicalExtension_enlargedSUnitKummerSubgroup_eq

Kummer generation of an abelian exponent-n extension from the S-unit radical supplied by the chosen finite enlargement.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open scoped NumberField IsMulCommutative NNReal ValuativeRel
open NumberField IsDedekindDomain
open LocalFieldTheory
noncomputable section
namespace KummerTheory
variable {K : Type*} [Field K]
    [numberFieldK : NumberField K]
theorem kummerRadicalExtension_enlargedSUnitKummerSubgroup_eq
    {Omega : Type*} [Field Omega] [Algebra K Omega]
    [IsSepClosure K Omega]
    (E : IntermediateField K Omega)
    [FiniteDimensional K E] [IsGalois K E]
    [IsMulCommutative Gal(E/K)]
    (n : ℕ+)
    (hmu : (primitiveRoots (n : ℕ) K).Nonempty)
    (hexponent : ∀ sigma : Gal(E/K), sigma ^ (n : ℕ) = 1)
    (S : Finset (HeightOneSpectrum (𝓞 K))) :
    KummerTheory.kummerRadicalExtension
        (K := K) (Omega := Omega) n
        (sUnitKummerSubgroup
          (K := K) (L := E) n
          (enlargeByFiniteKummerRadicalSupport
            (K := K) (L := E) n hmu S)).1 =
      E