ModuleCyclotomicKummerNormDescent.lean
Nyll.ClassFieldTheory.GlobalClassFieldTheory.GlobalClassFields.CyclotomicKummerNormDescent
24 declarations indexed from sourceView source ↗ Module documentation
Cyclotomic descent for full S-unit Kummer norms
This file implements the roots-of-unity descent in the existence proof of global class field theory. Starting from a finite seed of finite places of K, it enlarges the seed just enough that its full inverse image in CyclotomicField n K is a chosen Kummer norm support. Thus the full S-unit Kummer extension over the cyclotomic field has its concrete norm subgroup described by Kummer theory, while the support is still exactly a full inverse image and hence descends through the cyclotomic norm.
The final normal-closure step turns the resulting finite extension of K into a genuine finite Galois extension without enlarging its norm subgroup.
Declarations
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_neZero
Source context 8 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
Source context 9 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_cyclotomicIsGalois
Source context 10 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_primitiveRoots_nonempty
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_natCast_ne_zero
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormSupport
DocumentationA finite support on K whose full inverse image in CyclotomicField n K contains the chosen Kummer norm support upstairs.
The construction first forms the chosen support above the prescribed seed and then adds the places below it. Taking all places above this enlarged base support saturates every fibre without losing the largeness and exponent support required by the full S-unit Kummer calculation.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.subset_cyclotomicKummerNormSupport
DocumentationThe prescribed finite seed is contained in its cyclotomic Kummer norm support.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormSupportAbove
DocumentationAll finite places of the cyclotomic field above the enlarged base support. This is the fibre-saturated support used by norm descent.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.mem_cyclotomicKummerNormSupportAbove_iff
DocumentationMembership in the upstairs support is exactly membership of the place below in the enlarged base support.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.sUnitKummerNormSupport_cyclotomicKummerNormSupportAbove
DocumentationThe fibre-saturated support upstairs is already fixed by the chosen Kummer-support enlargement.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormSupport_idem
DocumentationEnlarging a support by the cyclotomic Kummer requirements is idempotent. In particular, downstream neighbourhood arguments may choose a support containing these requirements from the outset without a second change of support.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicFullSUnitKummerExtension
DocumentationThe actual full S-unit Kummer extension over the cyclotomic base, formed inside its fixed separable closure and using the chosen enlargement of the fibre-saturated support above K. The preceding stability theorem shows that this enlargement is equal to the fibre-saturated support; retaining it in the definition keeps the extension definitionally aligned with the exact Kummer norm-realization theorem.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicFullSUnitKummerExtension_isGalois
DocumentationThe cyclotomic full S-unit Kummer extension is Galois over the cyclotomic base.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicFullSUnitKummerExtension_finiteDimensional
DocumentationThe cyclotomic full S-unit Kummer extension is finite over the cyclotomic base.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_kummerFiniteDimensional
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_kummerNumberField
DocumentationThe Kummer layer is a number field via its finite extension of the cyclotomic number field. This is deliberately a named, non-instance boundary: downstream base-tower instances must not make every NumberField search unfold the full S-unit Kummer construction.
Source context 12 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensional
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicFullSUnitKummerExtension_finiteDimensional
(K := K) n seed
GlobalClassFieldTheory.GlobalClassFields.cyclotomicFullSUnitKummerExtension_cyclotomicNormRange
DocumentationThe expensive Kummer norm computation over the cyclotomic base, isolated before the K-to-Kummer-field instance tower is introduced.
Source context 12 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensional
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicFullSUnitKummerExtension_finiteDimensional
(K := K) n seed
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_kummerAlgebraOverBase
Source context 12 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensional
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicFullSUnitKummerExtension_finiteDimensional
(K := K) n seed
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_kummerSMulOverBase
Source context 13 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensional
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicFullSUnitKummerExtension_finiteDimensional
(K := K) n seed
@[reducible]
noncomputable local instance
cyclotomicKummerNormDescent_kummerAlgebraOverBase
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
Algebra K
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
((algebraMap
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed)).comp
(algebraMap K (CyclotomicField (n : ℕ) K))).toAlgebra
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_kummerModuleOverBase
Source context 13 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensional
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicFullSUnitKummerExtension_finiteDimensional
(K := K) n seed
@[reducible]
noncomputable local instance
cyclotomicKummerNormDescent_kummerAlgebraOverBase
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
Algebra K
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
((algebraMap
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed)).comp
(algebraMap K (CyclotomicField (n : ℕ) K))).toAlgebra
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_kummerScalarTower
Source context 13 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensional
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicFullSUnitKummerExtension_finiteDimensional
(K := K) n seed
@[reducible]
noncomputable local instance
cyclotomicKummerNormDescent_kummerAlgebraOverBase
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
Algebra K
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
((algebraMap
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed)).comp
(algebraMap K (CyclotomicField (n : ℕ) K))).toAlgebra
GlobalClassFieldTheory.GlobalClassFields.cyclotomicKummerNormDescent_kummerFiniteDimensionalOverBase
Source context 13 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensional
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicFullSUnitKummerExtension_finiteDimensional
(K := K) n seed
@[reducible]
noncomputable local instance
cyclotomicKummerNormDescent_kummerAlgebraOverBase
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
Algebra K
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
((algebraMap
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed)).comp
(algebraMap K (CyclotomicField (n : ℕ) K))).toAlgebra
GlobalClassFieldTheory.GlobalClassFields.cyclotomicFullSUnitKummerExtension_ideleClassNormRange_le_powerLocalUnit
DocumentationThe norm range of the actual cyclotomic full S-unit Kummer extension, viewed as a finite extension of K, lies in the power-local-unit subgroup on the enlarged base support. This is the pointwise tower-norm step in the roots-of-unity descent.
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensional
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicFullSUnitKummerExtension_finiteDimensional
(K := K) n seed
@[reducible]
noncomputable local instance
cyclotomicKummerNormDescent_kummerAlgebraOverBase
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
Algebra K
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
((algebraMap
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed)).comp
(algebraMap K (CyclotomicField (n : ℕ) K))).toAlgebra
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensionalOverBase
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional K
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
by
let : IsScalarTower K
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicKummerNormDescent_kummerScalarTower (K := K) n seed
exact FiniteDimensional.trans K
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed)
GlobalClassFieldTheory.GlobalClassFields.cyclotomicFullSUnitKummerFiniteNormalClosure_ideleClassNormRange_le_powerLocalUnit
DocumentationPassing to the finite normal closure produces an actual finite Galois extension of K whose norm range is still contained in the prescribed power-local-unit subgroup. This is the finite Galois norm neighbourhood constructed in the roots-of-unity-free case.
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped NumberField
open NumberField IsDedekindDomain
open KummerTheory
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open GlobalClassFieldTheory.ClassFieldAxiom
variable {K : Type} [Field K] [NumberField K]
local instance cyclotomicKummerNormDescent_neZero
(n : ℕ+) : NeZero (n : ℕ) :=
⟨n.ne_zero⟩
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicFiniteDimensional
(n : ℕ+) :
FiniteDimensional K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.finiteDimensional
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_cyclotomicIsGalois
(n : ℕ+) :
IsGalois K (CyclotomicField (n : ℕ) K) :=
IsCyclotomicExtension.isGalois
{(n : ℕ)} K (CyclotomicField (n : ℕ) K)
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensional
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicFullSUnitKummerExtension_finiteDimensional
(K := K) n seed
@[reducible]
noncomputable local instance
cyclotomicKummerNormDescent_kummerAlgebraOverBase
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
Algebra K
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
((algebraMap
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed)).comp
(algebraMap K (CyclotomicField (n : ℕ) K))).toAlgebra
noncomputable local instance
cyclotomicKummerNormDescent_kummerFiniteDimensionalOverBase
(n : ℕ+)
(seed : Finset (HeightOneSpectrum (𝓞 K))) :
FiniteDimensional K
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
by
let : IsScalarTower K
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed) :=
cyclotomicKummerNormDescent_kummerScalarTower (K := K) n seed
exact FiniteDimensional.trans K
(CyclotomicField (n : ℕ) K)
(cyclotomicFullSUnitKummerExtension (K := K) n seed)