ModuleSmallHilbertPrincipalization.lean
Nyll.ClassFieldTheory.GlobalClassFieldTheory.IdealClassFieldTheory.SmallHilbertPrincipalization
10 declarations indexed from sourceView source ↗ Module documentation
Principalization in the selected small Hilbert class field
The selected second small Hilbert class field is Galois over the canonical fixed-field copy of the original base, and its maximal abelian intermediate field is the selected first small Hilbert class field. Witt transfer therefore places every idele class extended from that fixed-field copy in the norm range from the second stage. Functoriality of actual idele extension along the degree-one identification of the original field with its fixed-field copy gives the same range inclusion for idele classes extended from the original field itself.
The exact second-stage norm subgroup is the intrinsic small-Hilbert subgroup, so the genuine map from the original field on small-Hilbert quotients is trivial. Its naturality with extension of ideal classes then gives the class-group, integral-ideal, and fractional-ideal forms of principalization over the original number field.
Declarations
GlobalClassFieldTheory.IdealClassFieldTheory.smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
Source context 9 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
GlobalClassFieldTheory.IdealClassFieldTheory.smallHilbertPrincipalization_ideleClassSubgroupNormal
Source context 10 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
local instance
smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
{F : Type} [Field F] [NumberField F] :
IsMulCommutative (IdeleClassGroup F) :=
⟨⟨fun a b => mul_comm a b⟩⟩
GlobalClassFieldTheory.IdealClassFieldTheory.smallHilbertPrincipalization_smallHilbertQuotientGroup
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
local instance
smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
{F : Type} [Field F] [NumberField F] :
IsMulCommutative (IdeleClassGroup F) :=
⟨⟨fun a b => mul_comm a b⟩⟩
local instance
smallHilbertPrincipalization_ideleClassSubgroupNormal
{F : Type} [Field F] [NumberField F]
(N : Subgroup (IdeleClassGroup F)) : N.Normal :=
N.normal_of_isMulCommutative
GlobalClassFieldTheory.IdealClassFieldTheory.smallHilbertPrincipalization_smallHilbertQuotientOne
Source context 12 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
local instance
smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
{F : Type} [Field F] [NumberField F] :
IsMulCommutative (IdeleClassGroup F) :=
⟨⟨fun a b => mul_comm a b⟩⟩
local instance
smallHilbertPrincipalization_ideleClassSubgroupNormal
{F : Type} [Field F] [NumberField F]
(N : Subgroup (IdeleClassGroup F)) : N.Normal :=
N.normal_of_isMulCommutative
local instance
smallHilbertPrincipalization_smallHilbertQuotientGroup
{F : Type} [Field F] [NumberField F] :
Group
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
QuotientGroup.Quotient.group
(smallHilbertClassFieldNormSubgroup (K := F))
GlobalClassFieldTheory.IdealClassFieldTheory.smallHilbertClassFieldIdeleExtensionMap_apply_eq_one
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
local instance
smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
{F : Type} [Field F] [NumberField F] :
IsMulCommutative (IdeleClassGroup F) :=
⟨⟨fun a b => mul_comm a b⟩⟩
local instance
smallHilbertPrincipalization_ideleClassSubgroupNormal
{F : Type} [Field F] [NumberField F]
(N : Subgroup (IdeleClassGroup F)) : N.Normal :=
N.normal_of_isMulCommutative
local instance
smallHilbertPrincipalization_smallHilbertQuotientGroup
{F : Type} [Field F] [NumberField F] :
Group
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
QuotientGroup.Quotient.group
(smallHilbertClassFieldNormSubgroup (K := F))
local instance
smallHilbertPrincipalization_smallHilbertQuotientOne
{F : Type} [Field F] [NumberField F] :
One
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
⟨(smallHilbertPrincipalization_smallHilbertQuotientGroup
(F := F)).one⟩
variable (K : Type) [Field K] [NumberField K]
GlobalClassFieldTheory.IdealClassFieldTheory.smallHilbertClassFieldIdeleExtensionMap_eq_one
DocumentationThe map induced by genuine idele extension from the original number field on the two small-Hilbert reciprocity quotients is trivial.
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
local instance
smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
{F : Type} [Field F] [NumberField F] :
IsMulCommutative (IdeleClassGroup F) :=
⟨⟨fun a b => mul_comm a b⟩⟩
local instance
smallHilbertPrincipalization_ideleClassSubgroupNormal
{F : Type} [Field F] [NumberField F]
(N : Subgroup (IdeleClassGroup F)) : N.Normal :=
N.normal_of_isMulCommutative
local instance
smallHilbertPrincipalization_smallHilbertQuotientGroup
{F : Type} [Field F] [NumberField F] :
Group
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
QuotientGroup.Quotient.group
(smallHilbertClassFieldNormSubgroup (K := F))
local instance
smallHilbertPrincipalization_smallHilbertQuotientOne
{F : Type} [Field F] [NumberField F] :
One
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
⟨(smallHilbertPrincipalization_smallHilbertQuotientGroup
(F := F)).one⟩
variable (K : Type) [Field K] [NumberField K]
GlobalClassFieldTheory.IdealClassFieldTheory.smallHilbertClassFieldClassGroupExtension_apply_eq_one
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
local instance
smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
{F : Type} [Field F] [NumberField F] :
IsMulCommutative (IdeleClassGroup F) :=
⟨⟨fun a b => mul_comm a b⟩⟩
local instance
smallHilbertPrincipalization_ideleClassSubgroupNormal
{F : Type} [Field F] [NumberField F]
(N : Subgroup (IdeleClassGroup F)) : N.Normal :=
N.normal_of_isMulCommutative
local instance
smallHilbertPrincipalization_smallHilbertQuotientGroup
{F : Type} [Field F] [NumberField F] :
Group
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
QuotientGroup.Quotient.group
(smallHilbertClassFieldNormSubgroup (K := F))
local instance
smallHilbertPrincipalization_smallHilbertQuotientOne
{F : Type} [Field F] [NumberField F] :
One
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
⟨(smallHilbertPrincipalization_smallHilbertQuotientGroup
(F := F)).one⟩
variable (K : Type) [Field K] [NumberField K]
GlobalClassFieldTheory.IdealClassFieldTheory.smallHilbertClassFieldClassGroupExtension_eq_one
DocumentationExtension of ideal classes from a number field to its selected small Hilbert class field is the trivial homomorphism. This follows directly from the naturality equality identifying actual idele extension with actual extension of ideal classes.
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
local instance
smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
{F : Type} [Field F] [NumberField F] :
IsMulCommutative (IdeleClassGroup F) :=
⟨⟨fun a b => mul_comm a b⟩⟩
local instance
smallHilbertPrincipalization_ideleClassSubgroupNormal
{F : Type} [Field F] [NumberField F]
(N : Subgroup (IdeleClassGroup F)) : N.Normal :=
N.normal_of_isMulCommutative
local instance
smallHilbertPrincipalization_smallHilbertQuotientGroup
{F : Type} [Field F] [NumberField F] :
Group
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
QuotientGroup.Quotient.group
(smallHilbertClassFieldNormSubgroup (K := F))
local instance
smallHilbertPrincipalization_smallHilbertQuotientOne
{F : Type} [Field F] [NumberField F] :
One
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
⟨(smallHilbertPrincipalization_smallHilbertQuotientGroup
(F := F)).one⟩
variable (K : Type) [Field K] [NumberField K]
GlobalClassFieldTheory.IdealClassFieldTheory.allIdealsBecomePrincipalInSmallHilbertClassField
DocumentationEvery ideal of a number field becomes principal after extension to the selected small Hilbert class field.
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
local instance
smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
{F : Type} [Field F] [NumberField F] :
IsMulCommutative (IdeleClassGroup F) :=
⟨⟨fun a b => mul_comm a b⟩⟩
local instance
smallHilbertPrincipalization_ideleClassSubgroupNormal
{F : Type} [Field F] [NumberField F]
(N : Subgroup (IdeleClassGroup F)) : N.Normal :=
N.normal_of_isMulCommutative
local instance
smallHilbertPrincipalization_smallHilbertQuotientGroup
{F : Type} [Field F] [NumberField F] :
Group
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
QuotientGroup.Quotient.group
(smallHilbertClassFieldNormSubgroup (K := F))
local instance
smallHilbertPrincipalization_smallHilbertQuotientOne
{F : Type} [Field F] [NumberField F] :
One
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
⟨(smallHilbertPrincipalization_smallHilbertQuotientGroup
(F := F)).one⟩
variable (K : Type) [Field K] [NumberField K]
GlobalClassFieldTheory.IdealClassFieldTheory.allFractionalIdealsBecomePrincipalInSmallHilbertClassField
DocumentationEvery nonzero fractional ideal of a number field becomes a principal fractional ideal after extension to the selected small Hilbert class field.
Source context 14 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped IsMulCommutative NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace IdealClassFieldTheory
open ClassFormation
open GlobalClassFields
open KummerTheory
open LocalClassFieldTheory
open Reciprocity
local instance
smallHilbertPrincipalization_ideleClassGroupIsMulCommutative
{F : Type} [Field F] [NumberField F] :
IsMulCommutative (IdeleClassGroup F) :=
⟨⟨fun a b => mul_comm a b⟩⟩
local instance
smallHilbertPrincipalization_ideleClassSubgroupNormal
{F : Type} [Field F] [NumberField F]
(N : Subgroup (IdeleClassGroup F)) : N.Normal :=
N.normal_of_isMulCommutative
local instance
smallHilbertPrincipalization_smallHilbertQuotientGroup
{F : Type} [Field F] [NumberField F] :
Group
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
QuotientGroup.Quotient.group
(smallHilbertClassFieldNormSubgroup (K := F))
local instance
smallHilbertPrincipalization_smallHilbertQuotientOne
{F : Type} [Field F] [NumberField F] :
One
(IdeleClassGroup F ⧸
smallHilbertClassFieldNormSubgroup (K := F)) :=
⟨(smallHilbertPrincipalization_smallHilbertQuotientGroup
(F := F)).one⟩
variable (K : Type) [Field K] [NumberField K]