Module

HilbertClassFieldRealization.lean

Nyll.ClassFieldTheory.GlobalClassFieldTheory.GlobalClassFields.HilbertClassFieldRealization
20 declarations indexed from sourceView source ↗

Actual realizations of the Hilbert class fields

The big and small Hilbert norm subgroups are closed and have finite index. The finite-index class-field construction therefore supplies genuine finite abelian subextensions of the rational separable closure. This file fixes those subextensions once and for all, names their actual relative fixed fields, and identifies their determinant-norm ranges.

The resulting degrees are the orders of the corresponding reciprocity quotients: the narrow class number for the big Hilbert class field and the ordinary class number for the small Hilbert class field.

Imports12
Imported by5

Declarations

GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassFieldNormSubgroupFiniteIndex

The big-Hilbert congruence subgroup has finite index, registered at the realization layer where the closed finite-index construction uses it.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
instance bigHilbertClassFieldNormSubgroupFiniteIndex :
    (bigHilbertClassFieldNormSubgroup (K := K)).FiniteIndex
GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassFieldNormAmbient

The concrete finite Galois norm neighbourhood used to realize the big Hilbert class field.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev bigHilbertClassFieldNormAmbient (K : Type)
    [Field K] [NumberField K] : Type
GlobalClassFieldTheory.GlobalClassFields.smallHilbertClassFieldNormAmbient

The concrete finite Galois norm neighbourhood used to realize the small Hilbert class field.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev smallHilbertClassFieldNormAmbient (K : Type)
    [Field K] [NumberField K] : Type
GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassFieldBaseSubgroup

The compatible abstract base subgroup for the actual big Hilbert class-field realization.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev bigHilbertClassFieldBaseSubgroup (K : Type)
    [Field K] [NumberField K]
GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassFieldSubextension

The finite abelian subextension selected by the big-Hilbert norm subgroup. This is the actual class-field witness, rather than merely an existence proposition.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev bigHilbertClassFieldSubextension (K : Type)
    [Field K] [NumberField K] :
    FiniteAbelianSubextension
      (bigHilbertClassFieldBaseSubgroup K)
GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassFieldBase

The compatible actual copy of the original number field occurring as the base fixed field in the big-Hilbert realization.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev bigHilbertClassFieldBase (K : Type)
    [Field K] [NumberField K] : Type
GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassField

The actual big Hilbert class field selected inside the rational separable closure.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev bigHilbertClassField (K : Type)
    [Field K] [NumberField K] : Type
GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassFieldBaseEquiv

The canonical equivalence from K to the actual base fixed field used by the selected big Hilbert class field.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev bigHilbertClassFieldBaseEquiv :
    K ≃ₐ[ℚ] bigHilbertClassFieldBase K
GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassFieldTransportedNormSubgroup

The big-Hilbert norm subgroup transported to the actual base fixed field of the selected realization.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
def bigHilbertClassFieldTransportedNormSubgroup :
    Subgroup (IdeleClassGroup (bigHilbertClassFieldBase K))
GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassField_ideleClassNorm_range

The determinant-norm range of the actual big Hilbert class field is exactly the transported big-Hilbert norm subgroup.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
theorem bigHilbertClassField_ideleClassNorm_range :
    (_root_.ideleClassNorm
      (bigHilbertClassFieldBase K)
      (bigHilbertClassField K)).range =
      bigHilbertClassFieldTransportedNormSubgroup (K := K)
GlobalClassFieldTheory.GlobalClassFields.closedFiniteIndexClassField_finrank_over_base_eq_index
Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
theorem
    closedFiniteIndexClassField_finrank_over_base_eq_index
    (H : Subgroup (IdeleClassGroup K))
    (hclosed : IsClosed (H : Set (IdeleClassGroup K)))
    [H.FiniteIndex] :
    Module.finrank
        (closedFiniteIndexClassFieldBase
          (K := K) H hclosed)
        (closedFiniteIndexClassField
          (K := K) H hclosed) =
      H.index
GlobalClassFieldTheory.GlobalClassFields.bigHilbertClassField_finrank_eq_narrowClassGroup_card

The degree of the actual big Hilbert class field is the narrow class number.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
theorem bigHilbertClassField_finrank_eq_narrowClassGroup_card :
    Module.finrank
        (bigHilbertClassFieldBase K)
        (bigHilbertClassField K) =
      Nat.card (RayClass.NarrowClassGroup K)
GlobalClassFieldTheory.GlobalClassFields.smallHilbertClassFieldBaseSubgroup

The compatible abstract base subgroup for the actual small Hilbert class-field realization.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev smallHilbertClassFieldBaseSubgroup (K : Type)
    [Field K] [NumberField K]
GlobalClassFieldTheory.GlobalClassFields.smallHilbertClassFieldSubextension

The finite abelian subextension selected by the small-Hilbert norm subgroup. This named witness is the input used by principalization.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev smallHilbertClassFieldSubextension (K : Type)
    [Field K] [NumberField K] :
    FiniteAbelianSubextension
      (smallHilbertClassFieldBaseSubgroup K)
GlobalClassFieldTheory.GlobalClassFields.smallHilbertClassFieldBase

The compatible actual copy of the original number field occurring as the base fixed field in the small-Hilbert realization.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev smallHilbertClassFieldBase (K : Type)
    [Field K] [NumberField K] : Type
GlobalClassFieldTheory.GlobalClassFields.smallHilbertClassField

The actual small Hilbert class field selected inside the rational separable closure.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev smallHilbertClassField (K : Type)
    [Field K] [NumberField K] : Type
GlobalClassFieldTheory.GlobalClassFields.smallHilbertClassFieldBaseEquiv

The canonical equivalence from K to the actual base fixed field used by the selected small Hilbert class field.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
abbrev smallHilbertClassFieldBaseEquiv :
    K ≃ₐ[ℚ] smallHilbertClassFieldBase K
GlobalClassFieldTheory.GlobalClassFields.smallHilbertClassFieldTransportedNormSubgroup

The small-Hilbert norm subgroup transported to the actual base fixed field of the selected realization.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
def smallHilbertClassFieldTransportedNormSubgroup :
    Subgroup (IdeleClassGroup (smallHilbertClassFieldBase K))
GlobalClassFieldTheory.GlobalClassFields.smallHilbertClassField_ideleClassNorm_range

The determinant-norm range of the actual small Hilbert class field is exactly the transported small-Hilbert norm subgroup.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
theorem smallHilbertClassField_ideleClassNorm_range :
    (_root_.ideleClassNorm
      (smallHilbertClassFieldBase K)
      (smallHilbertClassField K)).range =
      smallHilbertClassFieldTransportedNormSubgroup (K := K)
GlobalClassFieldTheory.GlobalClassFields.smallHilbertClassField_finrank_eq_classNumber

The degree of the actual small Hilbert class field is the ordinary class number.

Source context 9 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open ClassFormation
open LocalClassFieldTheory
open NumberField
open Reciprocity
variable {K : Type} [Field K] [NumberField K]
theorem smallHilbertClassField_finrank_eq_classNumber :
    Module.finrank
        (smallHilbertClassFieldBase K)
        (smallHilbertClassField K) =
      NumberField.classNumber K