Module

RayClassSubgroupPrimeArtin.lean

Nyll.ClassFieldTheory.GlobalClassFieldTheory.GlobalClassFields.RayClassSubgroupPrimeArtin
5 declarations indexed from sourceView source ↗

Arithmetic prime Artin symbols on ray-class fixed fields

Arithmetic reciprocity on a ray-class fixed field agrees, at each ordinary prime idèle, with the arithmetic global Artin symbol of that field.

Declarations

GlobalClassFieldTheory.GlobalClassFields.arithmeticFinitePlacePrimeArtin_restrict_tower
Source context 5 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open NumberField IsDedekindDomain IdeleGroup Reciprocity
theorem arithmeticFinitePlacePrimeArtin_restrict_tower
    (K L E : Type) [Field K] [Field L] [Field E]
    [NumberField K] [NumberField L] [NumberField E]
    [Algebra K L] [Algebra K E] [Algebra E L] [IsScalarTower K E L]
    [IsAbelianGalois K L] [IsAbelianGalois K E]
    (v : HeightOneSpectrum (𝓞 K)) :
    AlgEquiv.restrictNormalHom E
        (arithmeticFinitePlacePrimeArtin (K := K) (L := L) v) =
      arithmeticFinitePlacePrimeArtin (K := K) (L := E) v
GlobalClassFieldTheory.GlobalClassFields.rayClassFieldGaloisEquivRayClassGroup_symm_mk
Source context 5 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open NumberField IsDedekindDomain IdeleGroup Reciprocity
theorem rayClassFieldGaloisEquivRayClassGroup_symm_mk
    {K : Type} [Field K] [NumberField K]
    (m : RayClass.Modulus K) (c : IdeleClassGroup K) :
    (rayClassFieldGaloisEquivRayClassGroup (K := K) m).symm
        (QuotientGroup.mk' m.congruenceSubgroup c) =
      globalNormResidueMonoidHom K (rayClassField K m) c
GlobalClassFieldTheory.GlobalClassFields.rayClassField_arithmeticFinitePlacePrimeArtin
Source context 5 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open NumberField IsDedekindDomain IdeleGroup Reciprocity
theorem rayClassField_arithmeticFinitePlacePrimeArtin
    {K : Type} [Field K] [NumberField K]
    (m : RayClass.Modulus K)
    (v : HeightOneSpectrum (𝓞 K)) :
    (rayClassFieldGaloisEquivRayClassGroup (K := K) m).symm
        ((QuotientGroup.mk' m.congruenceSubgroup
          (QuotientGroup.mk' (IdeleGroup.principalSubgroup K)
            (IdeleGroup.finitePrimeIdele v)))⁻¹) =
      arithmeticFinitePlacePrimeArtin (K := K) (L := rayClassField K m) v
GlobalClassFieldTheory.GlobalClassFields.rayClassSubgroup_restrict_transport
Source context 5 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open NumberField IsDedekindDomain IdeleGroup Reciprocity
theorem rayClassSubgroup_restrict_transport
    {K : Type} [Field K] [NumberField K]
    (m : RayClass.Modulus K)
    (H : Subgroup (RayClass.RayClassGroup m))
    (σ : rayClassField K m ≃ₐ[K] rayClassField K m) :
    let F := rayClassSubgroupFixedField (K := K) m H
    let E := rayClassSubgroupSubextension (K := K) m H
    let α : F ≃ₐ[K] E :=
      IntermediateField.equivMap F (rayClassFieldEmbedding K m)
    let f : E →ₐ[K] rayClassField K m :=
      (IntermediateField.val F).comp α.symm.toAlgHom
    let _ : Algebra E (rayClassField K m) := f.toRingHom.toAlgebra
    let _ : IsScalarTower K E (rayClassField K m) :=
      IsScalarTower.of_algebraMap_eq fun x => (f.commutes x).symm
    (AlgEquiv.autCongr α) (AlgEquiv.restrictNormalHom F σ) =
      AlgEquiv.restrictNormalHom E σ := by
  let F := rayClassSubgroupFixedField (K := K) m H
  let L := rayClassField K m
  let E := rayClassSubgroupSubextension (K := K) m H
  let α : F ≃ₐ[K] E :=
    IntermediateField.equivMap F (rayClassFieldEmbedding K m)
  let f : E →ₐ[K] L :=
    (IntermediateField.val F).comp α.symm.toAlgHom
  let : Algebra E L := f.toRingHom.toAlgebra
  let : IsScalarTower K E L :=
    IsScalarTower.of_algebraMap_eq fun x => (f.commutes x).symm
  change (AlgEquiv.autCongr α) (AlgEquiv.restrictNormalHom F σ) =
    AlgEquiv.restrictNormalHom E σ
  apply AlgEquiv.ext
  intro x
  apply f.injective
  change f (α ((AlgEquiv.restrictNormalHom F σ) (α.symm x))) =
    f ((AlgEquiv.restrictNormalHom E σ) x)
  calc
    f (α ((AlgEquiv.restrictNormalHom F σ) (α.symm x))) =
        F.val ((AlgEquiv.restrictNormalHom F σ) (α.symm x)) := by
          simp [f]
    _ = σ (F.val (α.symm x)) :=
      AlgEquiv.restrictNormalHom_apply F σ (α.symm x)
    _ = f ((AlgEquiv.restrictNormalHom E σ) x) := by
      exact (AlgEquiv.restrictNormal_commutes σ E x).symm
GlobalClassFieldTheory.GlobalClassFields.rayClassSubgroupArtin_finitePrimeIdele

The fixed-field ray-class Artin map sends the ray class of an ordinary prime idèle to the arithmetic global Artin element of the fixed field.

Source context 5 commands

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

open scoped NumberField
noncomputable section
namespace GlobalClassFieldTheory
namespace GlobalClassFields
open NumberField IsDedekindDomain IdeleGroup Reciprocity
theorem rayClassSubgroupArtin_finitePrimeIdele
    {K : Type} [Field K] [NumberField K]
    (m : RayClass.Modulus K)
    (H : Subgroup (RayClass.RayClassGroup m))
    (v : HeightOneSpectrum (𝓞 K)) :
    rayClassSubgroupArtin (K := K) m H
        (QuotientGroup.mk' m.congruenceSubgroup
          (QuotientGroup.mk' (IdeleGroup.principalSubgroup K)
            (IdeleGroup.finitePrimeIdele v))) =
      arithmeticFinitePlacePrimeArtin (K := K)
        (L := rayClassSubgroupSubextension (K := K) m H) v