Module

ConcreteReciprocityCanonical.lean

Nyll.ClassFieldTheory.LocalClassFieldTheory.Finite.LocalReciprocity.ConcreteReciprocityCanonical
36 declarations indexed from sourceView source ↗

Finite local reciprocity: canonicity of local reciprocity

The construction of local reciprocity realizes a finite Galois extension in a fixed separable closure. This file proves that the transported reciprocity isomorphism is independent of that realization. Two embeddings are extended to an automorphism of the separable closure, and the abstract reciprocity naturality theorem supplies the required naturality.

Conjugating two realizations

The two vertical maps of the abstract reciprocity naturality theorem

Concrete comparison on representatives

The two outer comparison squares

The abstract reciprocity naturality theorem and embedding independence

Declarations

abbrev

G

L36 ↗
LocalClassFieldTheory.G
Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
abbrev G (K : Type) [Field K]
abbrev

AG

L39 ↗
LocalClassFieldTheory.AG
Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
abbrev AG (K : Type) [Field K] : Rep ℤ (G K)
abbrev

B

L42 ↗
LocalClassFieldTheory.B
Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
abbrev B (K : Type) [Field K] : ClosedSubgroup (G K)
LocalClassFieldTheory.finiteGaloisEmbeddingConjugator

An automorphism of the separable closure carrying the image of i to the image of j.

Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
def finiteGaloisEmbeddingConjugator
    (i j : L →ₐ[K] SeparableClosure K) : G K
LocalClassFieldTheory.finiteGaloisEmbeddingConjugator_apply

The chosen absolute Galois conjugator carries one embedding to the other on every element.

Source context 7 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
omit [FiniteDimensional K L] [IsGalois K L] in
theorem finiteGaloisEmbeddingConjugator_apply
    (i j : L →ₐ[K] SeparableClosure K) (x : L) :
    finiteGaloisEmbeddingConjugator K L i j (i x) = j x
LocalClassFieldTheory.finiteGaloisEmbeddingConjugator_comp

Composing the first embedding with its conjugator gives the second embedding.

Source context 7 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
omit [FiniteDimensional K L] [IsGalois K L] in
theorem finiteGaloisEmbeddingConjugator_comp
    (i j : L →ₐ[K] SeparableClosure K) :
    (finiteGaloisEmbeddingConjugator K L i j).toAlgHom.comp i = j
LocalClassFieldTheory.finiteGaloisFieldRange_conjugator

The two embedded field ranges are related by the chosen Galois conjugator.

Source context 7 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
omit [FiniteDimensional K L] [IsGalois K L] in
theorem finiteGaloisFieldRange_conjugator
    (i j : L →ₐ[K] SeparableClosure K) :
    finiteGaloisFieldRangeOfEmbedding K L j =
      (finiteGaloisFieldRangeOfEmbedding K L i).map
        (finiteGaloisEmbeddingConjugator K L i j).toAlgHom
LocalClassFieldTheory.finiteGaloisClosedFixingSubgroup_conjugator

With the right-exponent convention for abstract reciprocity, the conjugating element is the inverse of the automorphism carrying i to j.

Source context 7 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
omit [FiniteDimensional K L] [IsGalois K L] in
theorem finiteGaloisClosedFixingSubgroup_conjugator
    (i j : L →ₐ[K] SeparableClosure K) :
    conjugateClosedSubgroup
        (finiteGaloisClosedFixingSubgroupOfEmbedding K L i)
        (finiteGaloisEmbeddingConjugator K L i j)⁻¹ =
      finiteGaloisClosedFixingSubgroupOfEmbedding K L j
LocalClassFieldTheory.finiteGaloisBase_conjugator

The abstract base field is the top subgroup and hence is fixed by every conjugation.

Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
theorem finiteGaloisBase_conjugator
    (σ : G K) : conjugateClosedSubgroup (B K) σ = B K
LocalClassFieldTheory.finiteGaloisAbstractExtensionOfEmbedding_bundle_finite

The finite quotient attached to an explicit finite Galois realization.

Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
instance
    finiteGaloisAbstractExtensionOfEmbedding_bundle_finite
    (i : L →ₐ[K] SeparableClosure K) :
    Finite ((B K).toSubgroup ⧸
      extensionSubgroup (B K)
        (finiteGaloisAbstractExtensionOfEmbedding K L i).field
        (finiteGaloisAbstractExtensionOfEmbedding K L i).below)
LocalClassFieldTheory.finiteGaloisExtensionQuotientOfEmbedding_finite

Raw quotient bridge for the explicit closed-fixing-subgroup presentation.

Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
instance finiteGaloisExtensionQuotientOfEmbedding_finite
    (i : L →ₐ[K] SeparableClosure K) :
    Finite ((B K).toSubgroup ⧸
      extensionSubgroup (B K)
        (finiteGaloisClosedFixingSubgroupOfEmbedding K L i)
        (fixingSubgroupLeBase K (SeparableClosure K)
          (finiteGaloisFieldRangeOfEmbedding K L i)))
LocalClassFieldTheory.finiteGaloisConjugateBaseElement

The representative in the base subgroup obtained by conjugating with the automorphism carrying i to j.

Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
def finiteGaloisConjugateBaseElement
    (i j : L →ₐ[K] SeparableClosure K) (τ : (B K).toSubgroup) :
    (B K).toSubgroup
LocalClassFieldTheory.extensionQuotientCongr
Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
def extensionQuotientCongr
    {Γ : Type} [Group Γ] [TopologicalSpace Γ]
    {K L K' L' : ClosedSubgroup Γ}
    (hLK : L.toSubgroup ≤ K.toSubgroup)
    (hL'K' : L'.toSubgroup ≤ K'.toSubgroup)
    [hN : (extensionSubgroup K L hLK).Normal]
    [hN' : (extensionSubgroup K' L' hL'K').Normal]
    (hK : K = K') (hL : L = L') :
    (K.toSubgroup ⧸ extensionSubgroup K L hLK) ≃*
      (K'.toSubgroup ⧸ extensionSubgroup K' L' hL'K')
LocalClassFieldTheory.extensionQuotientCongr_mk
Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
theorem extensionQuotientCongr_mk
    {Γ : Type} [Group Γ] [TopologicalSpace Γ]
    {K L K' L' : ClosedSubgroup Γ}
    (hLK : L.toSubgroup ≤ K.toSubgroup)
    (hL'K' : L'.toSubgroup ≤ K'.toSubgroup)
    [hN : (extensionSubgroup K L hLK).Normal]
    [hN' : (extensionSubgroup K' L' hL'K').Normal]
    (hK : K = K') (hL : L = L') (x : K.toSubgroup) :
    extensionQuotientCongr hLK hL'K' hK hL (QuotientGroup.mk x) =
      QuotientGroup.mk
        (MulEquiv.subgroupCongr
          (congrArg (fun H : ClosedSubgroup Γ => H.toSubgroup) hK) x) := by
  subst K'
  subst L'
  have hp : hLK = hL'K' := Subsingleton.elim _ _
  subst hL'K'
  have hn : hN = hN' := Subsingleton.elim _ _
  subst hN'
  rfl
LocalClassFieldTheory.finiteNormQuotientCongr
Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
def finiteNormQuotientCongr
    {Γ : Type} [Group Γ] [TopologicalSpace Γ]
    (A : Rep ℤ Γ) {K L K' L' : ClosedSubgroup Γ}
    (hLK : L.toSubgroup ≤ K.toSubgroup)
    (hL'K' : L'.toSubgroup ≤ K'.toSubgroup)
    [hFinite : Finite (K.toSubgroup ⧸ extensionSubgroup K L hLK)]
    [hFinite' : Finite (K'.toSubgroup ⧸ extensionSubgroup K' L' hL'K')]
    (hK : K = K') (hL : L = L') :
    FiniteNormQuotient A K L hLK ≃+
      FiniteNormQuotient A K' L' hL'K'
LocalClassFieldTheory.finiteNormQuotientCongr_finiteNormClass
Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
theorem finiteNormQuotientCongr_finiteNormClass
    {Γ : Type} [Group Γ] [TopologicalSpace Γ]
    (A : Rep ℤ Γ) {K L K' L' : ClosedSubgroup Γ}
    (hLK : L.toSubgroup ≤ K.toSubgroup)
    (hL'K' : L'.toSubgroup ≤ K'.toSubgroup)
    [hFinite : Finite (K.toSubgroup ⧸ extensionSubgroup K L hLK)]
    [hFinite' : Finite (K'.toSubgroup ⧸ extensionSubgroup K' L' hL'K')]
    (hK : K = K') (hL : L = L')
    (a : ambientFixedAddSubgroup A K) :
    finiteNormQuotientCongr A hLK hL'K' hK hL
        (finiteNormClass A K L hLK a) =
      finiteNormClass A K' L' hL'K'
        (AddEquiv.addSubgroupCongr
          (congrArg (ambientFixedAddSubgroup A) hK) a)
LocalClassFieldTheory.normResidueSymbol_congr

Equality transport of both sides of the norm-residue symbol. This is the dependent-type form of replacing equal abstract fields in the abstract reciprocity naturality theorem.

Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
theorem normResidueSymbol_congr
    {Γ : Type} [Group Γ] [TopologicalSpace Γ]
    (D : DegreeData Γ) (A : Rep ℤ Γ) (v : ValuationData D A)
    (hcf : SatisfiesClassFieldAxiom A)
    [IsTopologicalGroup Γ] [CompactSpace Γ] [T2Space Γ]
    [TotallyDisconnectedSpace Γ]
    (K L K' L' : ClosedSubgroup Γ)
    (hLK : L.toSubgroup ≤ K.toSubgroup)
    (hL'K' : L'.toSubgroup ≤ K'.toSubgroup)
    [hNormal : (extensionSubgroup K L hLK).Normal]
    [hNormal' : (extensionSubgroup K' L' hL'K').Normal]
    [hFinite : Finite (K.toSubgroup ⧸ extensionSubgroup K L hLK)]
    [hFinite' : Finite (K'.toSubgroup ⧸ extensionSubgroup K' L' hL'K')]
    [hAbsolute : Finite ((baseField Γ).toSubgroup ⧸
      extensionSubgroup (baseField Γ) K (le_baseField K))]
    [hAbsolute' : Finite ((baseField Γ).toSubgroup ⧸
      extensionSubgroup (baseField Γ) K' (le_baseField K'))]
    (hK : K = K') (hL : L = L') :
    let E : FiniteGaloisSubextension K :=
      ⟨L, hLK, hNormal, hFinite⟩
    let E' : FiniteGaloisSubextension K' :=
      ⟨L', hL'K', hNormal', hFinite'⟩
    let KF : FiniteAbstractField Γ := ⟨K, hAbsolute⟩
    let K'F : FiniteAbstractField Γ := ⟨K', hAbsolute'⟩
    let q := MulEquiv.toAdditive
      ((extensionQuotientCongr hLK hL'K' hK hL).abelianizationCongr)
    let b := finiteNormQuotientCongr A
      (hFinite := hFinite) (hFinite' := hFinite')
      hLK hL'K' hK hL
    q.toAddMonoidHom.comp
        (D.normResidueSymbol A v hcf KF E).toAddMonoidHom =
      (D.normResidueSymbol A v hcf K'F E').toAddMonoidHom.comp
        b.toAddMonoidHom := by
  subst K'
  subst L'
  have hp : hLK = hL'K' := Subsingleton.elim _ _
  subst hL'K'
  have hn : hNormal = hNormal' := Subsingleton.elim _ _
  subst hNormal'
  have hf : hFinite = hFinite' := Subsingleton.elim _ _
  subst hFinite'
  have ha : hAbsolute = hAbsolute' := Subsingleton.elim _ _
  subst hAbsolute'
  dsimp only [extensionQuotientCongr, finiteNormQuotientCongr]
  apply AddMonoidHom.ext
  intro x
  rw [abelianizationCongr_refl]
  rfl
LocalClassFieldTheory.finiteGaloisEmbeddingConjugate_normal
Source context 7 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
theorem finiteGaloisEmbeddingConjugate_normal
    (i : L →ₐ[K] SeparableClosure K) (s : G K) :
    (extensionSubgroup (conjugateClosedSubgroup (B K) s)
      (conjugateClosedSubgroup
        (finiteGaloisClosedFixingSubgroupOfEmbedding K L i) s)
      (conjugateClosedSubgroup_mono
        (fixingSubgroupLeBase K (SeparableClosure K)
          (finiteGaloisFieldRangeOfEmbedding K L i)) s)).Normal
LocalClassFieldTheory.finiteGaloisConjugationOfEmbeddings

Conjugation between the two concrete presentations of the abstract extension quotient.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
def finiteGaloisConjugationOfEmbeddings
    (i j : L →ₐ[K] SeparableClosure K) :
    (finiteGaloisAbstractExtensionOfEmbedding K L i).extensionQuotient ≃*
      (finiteGaloisAbstractExtensionOfEmbedding K L j).extensionQuotient
LocalClassFieldTheory.finiteGaloisConjugationOfEmbeddings_mk

Conjugation between embedding models sends a quotient representative to its conjugate class.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteGaloisConjugationOfEmbeddings_mk
    (i j : L →ₐ[K] SeparableClosure K) (τ : (B K).toSubgroup) :
    finiteGaloisConjugationOfEmbeddings K L i j (QuotientGroup.mk τ) =
      QuotientGroup.mk (finiteGaloisConjugateBaseElement K L i j τ)
LocalClassFieldTheory.finiteGaloisConjugationOfEmbeddings_apply_factor
Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteGaloisConjugationOfEmbeddings_apply_factor
    (i j : L →ₐ[K] SeparableClosure K)
    (z : (finiteGaloisAbstractExtensionOfEmbedding K L i).extensionQuotient) :
    let hLK := fixingSubgroupLeBase K (SeparableClosure K)
      (finiteGaloisFieldRangeOfEmbedding K L i)
    let s := (finiteGaloisEmbeddingConjugator K L i j)⁻¹
    let hB := finiteGaloisBase_conjugator K s
    let hH := finiteGaloisClosedFixingSubgroup_conjugator K L i j
    finiteGaloisConjugationOfEmbeddings K L i j z =
      extensionQuotientCongr
        (conjugateClosedSubgroup_mono hLK s)
        (fixingSubgroupLeBase K (SeparableClosure K)
          (finiteGaloisFieldRangeOfEmbedding K L j)) hB hH
        (finiteReciprocityNaturalityConjugation (B K)
          (finiteGaloisClosedFixingSubgroupOfEmbedding K L i) hLK s z) := by
  dsimp only
  unfold finiteGaloisConjugationOfEmbeddings
  rfl
LocalClassFieldTheory.finiteGaloisConjugationOfEmbeddings_abelianization_factor
Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteGaloisConjugationOfEmbeddings_abelianization_factor
    (i j : L →ₐ[K] SeparableClosure K)
    (z : Abelianization
      (finiteGaloisAbstractExtensionOfEmbedding K L i).extensionQuotient) :
    let hLK := fixingSubgroupLeBase K (SeparableClosure K)
      (finiteGaloisFieldRangeOfEmbedding K L i)
    let s := (finiteGaloisEmbeddingConjugator K L i j)⁻¹
    let hB := finiteGaloisBase_conjugator K s
    let hH := finiteGaloisClosedFixingSubgroup_conjugator K L i j
    (finiteGaloisConjugationOfEmbeddings K L i j).abelianizationCongr z =
      (extensionQuotientCongr
        (conjugateClosedSubgroup_mono hLK s)
        (fixingSubgroupLeBase K (SeparableClosure K)
          (finiteGaloisFieldRangeOfEmbedding K L j)) hB hH).abelianizationCongr
        ((finiteReciprocityNaturalityConjugation (B K)
          (finiteGaloisClosedFixingSubgroupOfEmbedding K L i)
          hLK s).abelianizationCongr z) := by
  dsimp only
  let hLK : (finiteGaloisClosedFixingSubgroupOfEmbedding K L i).toSubgroup ≤
      (B K).toSubgroup :=
    fixingSubgroupLeBase K (SeparableClosure K)
      (finiteGaloisFieldRangeOfEmbedding K L i)
  let hLjK : (finiteGaloisClosedFixingSubgroupOfEmbedding K L j).toSubgroup ≤
      (B K).toSubgroup :=
    fixingSubgroupLeBase K (SeparableClosure K)
      (finiteGaloisFieldRangeOfEmbedding K L j)
  let s := (finiteGaloisEmbeddingConjugator K L i j)⁻¹
  let e := finiteReciprocityNaturalityConjugation (B K)
    (finiteGaloisClosedFixingSubgroupOfEmbedding K L i) hLK s
  let c := extensionQuotientCongr
    (K := conjugateClosedSubgroup (B K) s)
    (L := conjugateClosedSubgroup
      (finiteGaloisClosedFixingSubgroupOfEmbedding K L i) s)
    (K' := B K) (L' := finiteGaloisClosedFixingSubgroupOfEmbedding K L j)
    (conjugateClosedSubgroup_mono hLK s) hLjK
    (finiteGaloisBase_conjugator K s)
    (finiteGaloisClosedFixingSubgroup_conjugator K L i j)
  refine QuotientGroup.induction_on z ?_
  intro x
  change
    (finiteGaloisConjugationOfEmbeddings K L i j).abelianizationCongr
        (Abelianization.of x) =
      c.abelianizationCongr (e.abelianizationCongr (Abelianization.of x))
  exact (abelianizationCongr_of
      (finiteGaloisConjugationOfEmbeddings K L i j) x).trans
    ((congrArg Abelianization.of
      (finiteGaloisConjugationOfEmbeddings_apply_factor K L i j x)).trans
      ((abelianizationCongr_of c (e x)).symm.trans
        (congrArg c.abelianizationCongr (abelianizationCongr_of e x).symm)))
LocalClassFieldTheory.finiteGaloisEmbeddingNormAddZeroClass
Source context 9 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
section EmbeddingNormConjugation
def finiteGaloisEmbeddingNormAddZeroClass
    (i : L →ₐ[K] SeparableClosure K)
LocalClassFieldTheory.finiteGaloisNormConjugationOfEmbeddings

Conjugation on the finite norm quotients, rewritten so that both its source and target use the fixed concrete base subgroup.

Source context 10 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
section EmbeddingNormConjugation
attribute [local instance] finiteGaloisEmbeddingNormAddZeroClass
def finiteGaloisNormConjugationOfEmbeddings
    (i j : L →ₐ[K] SeparableClosure K) :
    FiniteNormQuotient (AG K) (B K)
        (finiteGaloisAbstractExtensionOfEmbedding K L i).field
        (finiteGaloisAbstractExtensionOfEmbedding K L i).below →+
      FiniteNormQuotient (AG K) (B K)
        (finiteGaloisAbstractExtensionOfEmbedding K L j).field
        (finiteGaloisAbstractExtensionOfEmbedding K L j).below
LocalClassFieldTheory.finiteGaloisNormConjugationOfEmbeddings_apply_factor
Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteGaloisNormConjugationOfEmbeddings_apply_factor
    (i j : L →ₐ[K] SeparableClosure K)
    (a : FiniteNormQuotient (AG K) (B K)
      (finiteGaloisAbstractExtensionOfEmbedding K L i).field
      (finiteGaloisAbstractExtensionOfEmbedding K L i).below) :
    let hLK := fixingSubgroupLeBase K (SeparableClosure K)
      (finiteGaloisFieldRangeOfEmbedding K L i)
    let s := (finiteGaloisEmbeddingConjugator K L i j)⁻¹
    let hB := finiteGaloisBase_conjugator K s
    let hH := finiteGaloisClosedFixingSubgroup_conjugator K L i j
    finiteGaloisNormConjugationOfEmbeddings K L i j a =
      finiteNormQuotientCongr (AG K)
        (hFinite := finite_conjugateExtension (B K)
          (finiteGaloisClosedFixingSubgroupOfEmbedding K L i) hLK s)
        (hFinite' := finiteGaloisExtensionQuotientOfEmbedding_finite K L j)
        (conjugateClosedSubgroup_mono hLK s)
        (fixingSubgroupLeBase K (SeparableClosure K)
          (finiteGaloisFieldRangeOfEmbedding K L j)) hB hH
        (finiteReciprocityNaturalityConjugationNormMap (AG K) (B K)
          (finiteGaloisClosedFixingSubgroupOfEmbedding K L i) hLK s a) := by
  dsimp only
  unfold finiteGaloisNormConjugationOfEmbeddings
  rfl
LocalClassFieldTheory.baseFixingExtensionQuotientEquivGaloisGroup_mk_apply
Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem baseFixingExtensionQuotientEquivGaloisGroup_mk_apply
    (K Ω : Type) [Field K] [Field Ω] [Algebra K Ω] [IsGalois K Ω]
    (E : IntermediateField K Ω) [FiniteDimensional K E] [IsGalois K E]
    (τ : (closedFixingSubgroup K Ω
      (⊥ : IntermediateField K Ω)).toSubgroup) (x : E) :
    E.val ((baseFixingExtensionQuotientEquivGaloisGroup K Ω E
      (QuotientGroup.mk τ)) x) = τ.1 (E.val x)
LocalClassFieldTheory.finiteGaloisAbstractQuotientEquivGaloisGroupOfEmbedding_mk_apply

Formula for the quotient equivalence on a representative, expressed without mentioning the auxiliary fixed-field equality used internally.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteGaloisAbstractQuotientEquivGaloisGroupOfEmbedding_mk_apply
    (i : L →ₐ[K] SeparableClosure K) (τ : (B K).toSubgroup) (x : L) :
    i ((finiteGaloisAbstractQuotientEquivGaloisGroupOfEmbedding K L i
      (QuotientGroup.mk τ)) x) = τ.1 (i x)
LocalClassFieldTheory.finiteNormQuotientEquivEmbeddedNormQuotient_finiteNormClass_baseUnit

The explicit norm-quotient comparison sends a base-unit representative to the same representative in the ordinary field norm quotient.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteNormQuotientEquivEmbeddedNormQuotient_finiteNormClass_baseUnit
    (i : L →ₐ[K] SeparableClosure K) (x : Kˣ) :
    finiteNormQuotientEquivEmbeddedNormQuotient
        K (SeparableClosure K) L i
        (finiteNormClass (AG K) (B K)
          (finiteGaloisClosedFixingSubgroupOfEmbedding K L i)
          (fixingSubgroupLeBase K (SeparableClosure K)
            (finiteGaloisFieldRangeOfEmbedding K L i))
          (baseUnitsEquivGaloisAmbientFixed K (SeparableClosure K)
            (Additive.ofMul x))) =
      (MonoidHom.toAdditive (normClass K L))
        (Additive.ofMul x)
LocalClassFieldTheory.finiteGaloisNormConjugationOfEmbeddings_finiteNormClass_baseUnit

On a base unit, conjugation of finite norm classes is the identity after the target base subgroup is identified with the original base subgroup.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteGaloisNormConjugationOfEmbeddings_finiteNormClass_baseUnit
    (i j : L →ₐ[K] SeparableClosure K) (x : Kˣ) :
    finiteGaloisNormConjugationOfEmbeddings K L i j
        (finiteNormClass (AG K) (B K)
          (finiteGaloisClosedFixingSubgroupOfEmbedding K L i)
          (fixingSubgroupLeBase K (SeparableClosure K)
            (finiteGaloisFieldRangeOfEmbedding K L i))
          (baseUnitsEquivGaloisAmbientFixed K (SeparableClosure K)
            (Additive.ofMul x))) =
      finiteNormClass (AG K) (B K)
        (finiteGaloisClosedFixingSubgroupOfEmbedding K L j)
        (fixingSubgroupLeBase K (SeparableClosure K)
          (finiteGaloisFieldRangeOfEmbedding K L j))
        (baseUnitsEquivGaloisAmbientFixed K (SeparableClosure K)
          (Additive.ofMul x))
LocalClassFieldTheory.finiteGaloisAbstractQuotientEquivGaloisGroup_conjugation

The concrete quotient identification is unchanged by conjugating the chosen realization.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteGaloisAbstractQuotientEquivGaloisGroup_conjugation
    (i j : L →ₐ[K] SeparableClosure K)
    (z : Abelianization
      (finiteGaloisAbstractExtensionOfEmbedding K L i).extensionQuotient) :
    (finiteGaloisAbstractQuotientEquivGaloisGroupOfEmbedding K L j).abelianizationCongr
        ((finiteGaloisConjugationOfEmbeddings K L i j).abelianizationCongr z) =
      (finiteGaloisAbstractQuotientEquivGaloisGroupOfEmbedding K L i).abelianizationCongr z
LocalClassFieldTheory.finiteGaloisAbstractQuotientEquivGaloisGroup_conjugation_additive

Additive form of the preceding source comparison.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteGaloisAbstractQuotientEquivGaloisGroup_conjugation_additive
    (i j : L →ₐ[K] SeparableClosure K)
    (z : Additive (Abelianization
      (finiteGaloisAbstractExtensionOfEmbedding K L i).extensionQuotient)) :
    MulEquiv.toAdditive
        ((finiteGaloisAbstractQuotientEquivGaloisGroupOfEmbedding K L j).abelianizationCongr)
        (MulEquiv.toAdditive
          ((finiteGaloisConjugationOfEmbeddings K L i j).abelianizationCongr) z) =
      MulEquiv.toAdditive
        ((finiteGaloisAbstractQuotientEquivGaloisGroupOfEmbedding K L i).abelianizationCongr)
          z
LocalClassFieldTheory.finiteNormQuotientEquivEmbeddedNormQuotient_conjugation

The concrete norm-quotient identification is unchanged by conjugating the chosen realization.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem finiteNormQuotientEquivEmbeddedNormQuotient_conjugation
    (i j : L →ₐ[K] SeparableClosure K)
    (a : FiniteNormQuotient (AG K) (B K)
      (finiteGaloisAbstractExtensionOfEmbedding K L i).field
      (finiteGaloisAbstractExtensionOfEmbedding K L i).below) :
    finiteNormQuotientEquivEmbeddedNormQuotient
        K (SeparableClosure K) L j
        (finiteGaloisNormConjugationOfEmbeddings K L i j a) =
      finiteNormQuotientEquivEmbeddedNormQuotient
        K (SeparableClosure K) L i a
LocalClassFieldTheory.reciprocityTransport_pointwise

The final pointwise diagram chase: the source, middle, and target squares determine the transported value without any further unfolding.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem reciprocityTransport_pointwise
    {A B C D E F : Type}
    (q : A → B) (b : C → D)
    (ri : A ≃ C) (rj : B ≃ D)
    (ni : C → E) (nj : D → E)
    (si : A ≃ F) (sj : B ≃ F)
    (hsource : ∀ z, sj (q z) = si z)
    (hnorm : ∀ a, nj (b a) = ni a)
    (hforward : ∀ z, b (ri z) = rj (q z))
    (x : F) :
    ni (ri (si.symm x)) = nj (rj (sj.symm x))
LocalClassFieldTheory.concreteReciprocityAddEquivOfEmbedding_eq

The additive transported reciprocity equivalence is independent of the embedding into the fixed separable closure.

Source context 8 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
section EmbeddingConjugation
attribute [local instance] finiteGaloisEmbeddingConjugate_normal
theorem concreteReciprocityAddEquivOfEmbedding_eq
    (i j : L →ₐ[K] SeparableClosure K)
    (D : DegreeData (G K)) (v : ValuationData D (AG K))
    (hcf : SatisfiesClassFieldAxiom (AG K)) :
    concreteReciprocityAddEquivOfEmbedding K L i D v hcf =
      concreteReciprocityAddEquivOfEmbedding K L j D v hcf
LocalClassFieldTheory.concreteReciprocityEquivOfEmbedding_eq

Public multiplicative form of embedding independence.

Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
theorem concreteReciprocityEquivOfEmbedding_eq
    (i j : L →ₐ[K] SeparableClosure K)
    (D : DegreeData (G K)) (v : ValuationData D (AG K))
    (hcf : SatisfiesClassFieldAxiom (AG K)) :
    concreteReciprocityEquivOfEmbedding K L i D v hcf =
      concreteReciprocityEquivOfEmbedding K L j D v hcf
LocalClassFieldTheory.concreteNormResidueSymbolOfEmbedding_eq

Consequently the norm-residue symbol is also independent of the chosen embedding.

Source context 6 commands

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

namespace LocalClassFieldTheory
open RamificationTheory CyclicCohomology KummerTheory
open LocalFieldTheory
open ClassFormation
noncomputable section
variable (K L : Type) [Field K] [Field L] [Algebra K L]
  [FiniteDimensional K L] [IsGalois K L]
theorem concreteNormResidueSymbolOfEmbedding_eq
    (i j : L →ₐ[K] SeparableClosure K)
    (D : DegreeData (G K)) (v : ValuationData D (AG K))
    (hcf : SatisfiesClassFieldAxiom (AG K)) :
    concreteNormResidueSymbolOfEmbedding K L i D v hcf =
      concreteNormResidueSymbolOfEmbedding K L j D v hcf