Module

AlgEquiv.lean

Nyll.ClassFieldTheory.AlgebraicNumberTheory.Idele.ClassGroup.AlgEquiv
61 declarations indexed from sourceView source ↗

Relative idele classes under an isomorphic realization

If two finite extensions of a number field are isomorphic over the base, their tensor-product presentations of the relative adeles are canonically isomorphic. This file descends that canonical isomorphism to relative ideles and idele classes and records compatibility with the determinant norm.

The construction is the direct tensor-product congruence

𝔸_K ⊗[K] L ≃ 𝔸_K ⊗[K] M

induced by an algebra equivalence L ≃ₐ[K] M. In particular, no second model of relative adeles or of the idele-class norm is introduced.

Imports5
Imported by18

Declarations

A base-field algebra equivalence between two realizations of a finite extension induces the canonical equivalence between their relative adele algebras.

Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
def relativeAdeleCongr
    (e : L ≃ₐ[K] M) :
    RelativeAdeleRing K L ≃ₐ[
      NumberField.AdeleRing (𝓞 K) K]
      RelativeAdeleRing K M
Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
theorem relativeAdeleCongr_tmul
    (e : L ≃ₐ[K] M)
    (a : NumberField.AdeleRing (𝓞 K) K)
    (x : L) :
    relativeAdeleCongr (K := K) e (a ⊗ₜ[K] x) =
      a ⊗ₜ[K] e x

The canonical transport of relative ideles along an isomorphic realization of the top field.

Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
def relativeIdeleCongr
    (e : L ≃ₐ[K] M) :
    RelativeIdeleGroup K L ≃*
      RelativeIdeleGroup K M
Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
theorem relativeIdeleCongr_coe
    (e : L ≃ₐ[K] M)
    (a : RelativeIdeleGroup K L) :
    ((relativeIdeleCongr (K := K) e a :
        RelativeIdeleGroup K M) :
      RelativeAdeleRing K M) =
        relativeAdeleCongr (K := K) e
          (a : RelativeAdeleRing K L)

For an automorphism of the top field, canonical relative-idele transport is the actual Galois action.

Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
theorem relativeIdeleCongr_eq_smul
    (σ : L ≃ₐ[K] L)
    (a : RelativeIdeleGroup K L) :
    relativeIdeleCongr (K := K) σ a = σ • a

Transport of relative ideles sends a principal idele to the principal idele of the transported field unit.

Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
theorem relativeIdeleCongr_principalIdele
    (e : L ≃ₐ[K] M)
    (x : Lˣ) :
    relativeIdeleCongr (K := K) e
        (RelativeIdeleGroup.principalIdele K L x) =
      RelativeIdeleGroup.principalIdele K M
        (Units.mapEquiv e.toMulEquiv x)

The canonical transport identifies the two principal-relative-idele subgroups.

Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
theorem relativeIdelePrincipalSubgroup_map_congr
    (e : L ≃ₐ[K] M) :
    (RelativeIdeleGroup.principalSubgroup K L).map
        (relativeIdeleCongr (K := K) e) =
      RelativeIdeleGroup.principalSubgroup K M

The relative idele class group is unchanged when the top field is replaced by an isomorphic realization.

Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
def relativeIdeleClassCongr
    (e : L ≃ₐ[K] M) :
    RelativeIdeleGroup.ClassGroup K L ≃*
      RelativeIdeleGroup.ClassGroup K M
Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
theorem relativeIdeleClassCongr_mk
    (e : L ≃ₐ[K] M)
    (a : RelativeIdeleGroup K L) :
    relativeIdeleClassCongr (K := K) e
        (QuotientGroup.mk'
          (RelativeIdeleGroup.principalSubgroup K L) a) =
      QuotientGroup.mk'
        (RelativeIdeleGroup.principalSubgroup K M)
        (relativeIdeleCongr (K := K) e a)
RelativeIdeleGroup.classEmbedding_relativeIdeleClassCongr

Transporting a relative idèle class along an equivalence and then embedding it into a third relative idèle class group is the same as embedding along the composite field embedding.

Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
theorem RelativeIdeleGroup.classEmbedding_relativeIdeleClassCongr
    {N : Type*} [Field N] [Algebra K N]
    [FiniteDimensional K L] [FiniteDimensional K M]
    [FiniteDimensional K N]
    (e : L ≃ₐ[K] M)
    (f : M →ₐ[K] N)
    (c : RelativeIdeleGroup.ClassGroup K L) :
    RelativeIdeleGroup.classEmbedding f
        (relativeIdeleClassCongr (K := K) e c) =
      RelativeIdeleGroup.classEmbedding
        (f.comp e.toAlgHom) c

The determinant norm on relative ideles is invariant under replacement of the top field by an isomorphic realization.

Source context 7 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
theorem relativeIdeleCongr_norm
    (e : L ≃ₐ[K] M)
    (a : RelativeIdeleGroup K L) :
    RelativeIdeleGroup.norm K M
        (relativeIdeleCongr (K := K) e a) =
      RelativeIdeleGroup.norm K L a

The descended idele-class norm is invariant under the canonical transport of the relative idele class group.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Norm
variable [FiniteDimensional K L] [FiniteDimensional K M]
theorem relativeIdeleClassCongr_ideleClassNorm
    (e : L ≃ₐ[K] M)
    (c : RelativeIdeleGroup.ClassGroup K L) :
    RelativeIdeleGroup.classNorm K M
        (relativeIdeleClassCongr (K := K) e c) =
      RelativeIdeleGroup.classNorm K L c

Isomorphic realizations of a finite extension have the same actual idele-class norm subgroup in the base idele class group.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Norm
variable [FiniteDimensional K L] [FiniteDimensional K M]
theorem ideleClassNorm_range_algEquiv
    (e : L ≃ₐ[K] M) :
    (RelativeIdeleGroup.classNorm K M).range =
      (RelativeIdeleGroup.classNorm K L).range

The idele-class norm index is invariant under an isomorphic realization of the top field.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Norm
variable [FiniteDimensional K L] [FiniteDimensional K M]
theorem ideleClassNorm_index_algEquiv
    (e : L ≃ₐ[K] M) :
    (RelativeIdeleGroup.classNorm K M).range.index =
      (RelativeIdeleGroup.classNorm K L).range.index

The canonical transport of ordinary adele rings along an equivalence of number fields. It is the existing relative-adele transport over ℚ, conjugated by the relative-to-ordinary scalar-extension equivalences.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
def adeleCongr
    (e : K ≃ₐ[ℚ] M) :
    NumberField.AdeleRing (𝓞 K) K ≃+*
      NumberField.AdeleRing (𝓞 M) M

The relative-to-ordinary scalar-extension comparison is natural for transport of the top number field.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem relativeAdeleBaseChangeRingEquiv_relativeAdeleCongr
    (e : K ≃ₐ[ℚ] M)
    (z : RelativeAdeleRing ℚ K) :
    relativeAdeleBaseChangeRingEquiv
        (K := ℚ) (L := M)
        (relativeAdeleCongr (K := ℚ) e z) =
      adeleCongr e
        (relativeAdeleBaseChangeRingEquiv
          (K := ℚ) (L := K) z)

Transport of ordinary adeles carries the diagonal field embedding to the diagonal field embedding.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem adeleCongr_algebraMap
    (e : K ≃ₐ[ℚ] M)
    (x : K) :
    adeleCongr e
        (algebraMap K
          (NumberField.AdeleRing (𝓞 K) K) x) =
      algebraMap M
        (NumberField.AdeleRing (𝓞 M) M) (e x)

The permutation of finite places induced by an equivalence of number fields.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
def finitePlaceCongr
    (e : K ≃ₐ[ℚ] M) :
    HeightOneSpectrum (𝓞 K) ≃
      HeightOneSpectrum (𝓞 M)
Source context 10 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
omit [NumberField K] [NumberField M] in
theorem finitePlaceCongr_asIdeal
    (e : K ≃ₐ[ℚ] M)
    (v : HeightOneSpectrum (𝓞 K)) :
    (finitePlaceCongr e v).asIdeal =
      v.asIdeal.map
        (NumberField.RingOfIntegers.mapRingEquiv
          e.toRingEquiv)
Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem finitePlaceBelow_eq_finitePlaceCongr_symm
    (e : K ≃ₐ[ℚ] M)
    (W : HeightOneSpectrum (𝓞 M)) :
    letI : Algebra K M := e.toRingHom.toAlgebra
    finitePlaceBelow (K := K) W =
      (finitePlaceCongr e).symm W := by
  apply HeightOneSpectrum.ext
  rfl

The canonical map between corresponding finite completions induced by an equivalence of number fields.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
def finitePlaceAdicCompletionCongrHom
    (e : K ≃ₐ[ℚ] M)
    (W : HeightOneSpectrum (𝓞 M)) :
    ((finitePlaceCongr e).symm W).adicCompletion K →+*
      W.adicCompletion M

On finite coordinates, canonical adelic transport is the completion map at the corresponding finite places.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem adeleCongr_finiteComponent
    (e : K ≃ₐ[ℚ] M)
    (a : NumberField.AdeleRing (𝓞 K) K)
    (W : HeightOneSpectrum (𝓞 M)) :
    (adeleCongr e a).2 W =
      finitePlaceAdicCompletionCongrHom e W
        (a.2 ((finitePlaceCongr e).symm W))

The canonical transport of ordinary ideles along an equivalence of number fields. It is obtained from the existing relative-idele transport over ℚ and the canonical relative-to-ordinary base-change equivalences.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
def ideleCongr
    (e : K ≃ₐ[ℚ] M) :
    IdeleGroup K ≃* IdeleGroup M

The relative-to-ordinary scalar-extension comparison is natural for transport of relative ideles along an equivalence of their top fields.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem relativeIdeleBaseChangeMulEquiv_relativeIdeleCongr
    (e : K ≃ₐ[ℚ] M)
    (a : RelativeIdeleGroup ℚ K) :
    relativeIdeleBaseChangeMulEquiv
        (K := ℚ) (L := M)
        (relativeIdeleCongr (K := ℚ) e a) =
      ideleCongr e
        (relativeIdeleBaseChangeMulEquiv
          (K := ℚ) (L := K) a)

Under the actual Galois action on relative ideles, the relative-to-ordinary scalar-extension comparison is equivariant for the canonical transport of ordinary ideles.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem relativeIdeleBaseChangeMulEquiv_smul_congr
    {E : Type*} [Field E] [NumberField E] [Algebra ℚ E]
    (σ : E ≃ₐ[ℚ] E)
    (a : RelativeIdeleGroup ℚ E) :
    relativeIdeleBaseChangeMulEquiv
        (K := ℚ) (L := E) (σ • a) =
      ideleCongr σ
        (relativeIdeleBaseChangeMulEquiv
          (K := ℚ) (L := E) a)

On finite coordinates, canonical idelic transport is the completion map at the corresponding finite places.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem ideleCongr_finiteComponent
    (e : K ≃ₐ[ℚ] M)
    (a : IdeleGroup K)
    (W : HeightOneSpectrum (𝓞 M)) :
    IdeleGroup.finiteComponent W (ideleCongr e a) =
      Units.map
        (finitePlaceAdicCompletionCongrHom e W).toMonoidHom
        (IdeleGroup.finiteComponent
          ((finitePlaceCongr e).symm W) a)
Source context 10 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
omit [NumberField K] in
theorem finitePlaceCongr_ramificationIdx
    (e : K ≃ₐ[ℚ] M)
    (W : HeightOneSpectrum (𝓞 M)) :
    letI : Algebra K M := e.toRingHom.toAlgebra
    ((finitePlaceCongr e).symm W).asIdeal.ramificationIdx'
        W.asIdeal = 1 := by
  let : Algebra K M := e.toRingHom.toAlgebra
  let w : HeightOneSpectrum (𝓞 K) :=
    (finitePlaceCongr e).symm W
  have hmap :
      w.asIdeal.map (algebraMap (𝓞 K) (𝓞 M)) =
        W.asIdeal := by
    change
      w.asIdeal.map
          (NumberField.RingOfIntegers.mapRingEquiv
            e.toRingEquiv) =
        W.asIdeal
    rw [← finitePlaceCongr_asIdeal e w]
    simp [w]
  rw [← hmap]
  exact
    Ideal.ramificationIdx'_map_self_eq_one
      (p := w.asIdeal)
      (by rw [hmap]; exact W.isPrime.ne_top)
      (by rw [hmap]; exact W.ne_bot)

Normalized local orders are unchanged by transport along a number-field equivalence.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem ideleCongr_localOrder
    (e : K ≃ₐ[ℚ] M)
    (a : IdeleGroup K)
    (W : HeightOneSpectrum (𝓞 M)) :
    (FiniteIdeleGroup.localOrder W
        (IdeleGroup.finiteComponent W
          (ideleCongr e a))).toAdd =
      (FiniteIdeleGroup.localOrder
        ((finitePlaceCongr e).symm W)
        (IdeleGroup.finiteComponent
          ((finitePlaceCongr e).symm W) a)).toAdd

An idele is integral at every finite place exactly when its transport along a number-field equivalence is.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem ideleCongr_mem_integralAtFinitePlaces_iff
    (e : K ≃ₐ[ℚ] M)
    (a : IdeleGroup K) :
    ideleCongr e a ∈
        IdeleGroup.integralAtFinitePlaces (K := M) ↔
      a ∈ IdeleGroup.integralAtFinitePlaces (K := K)

Transport along a number-field equivalence identifies the subgroups of ideles integral at every finite place.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem ideleIntegralAtFinitePlaces_map_congr
    (e : K ≃ₐ[ℚ] M) :
    (IdeleGroup.integralAtFinitePlaces (K := K)).map
        (ideleCongr e).toMonoidHom =
      IdeleGroup.integralAtFinitePlaces (K := M)

Transport along a number-field equivalence carries the diagonal idele to the diagonal idele of the transported field unit.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem ideleCongr_principalIdele
    (e : K ≃ₐ[ℚ] M)
    (x : Kˣ) :
    ideleCongr e (IdeleGroup.principalIdele K x) =
      IdeleGroup.principalIdele M
        (Units.mapEquiv e.toMulEquiv x)

The ordinary principal-idele subgroups are identified by transport along a number-field equivalence.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem idelePrincipalSubgroup_map_congr
    (e : K ≃ₐ[ℚ] M) :
    (IdeleGroup.principalSubgroup K).map
        (ideleCongr e) =
      IdeleGroup.principalSubgroup M

Transport along a number-field equivalence identifies the subgroups defining the ordinary ideal-class quotients.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem ordinaryIdealClassSubgroup_map_congr
    (e : K ≃ₐ[ℚ] M) :
    (IdeleGroup.ordinaryIdealClassSubgroup (K := K)).map
        (ideleCongr e).toMonoidHom =
      IdeleGroup.ordinaryIdealClassSubgroup (K := M)

The canonical transport of ordinary idele classes along an equivalence of number fields. This descends ideleCongr; it does not introduce a second idele-class quotient.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
def ideleClassCongr
    (e : K ≃ₐ[ℚ] M) :
    IdeleClassGroup K ≃* IdeleClassGroup M

The ordinary idele-class transport is induced by ideleCongr on quotient representatives.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem ideleClassCongr_mk
    (e : K ≃ₐ[ℚ] M)
    (a : IdeleGroup K) :
    ideleClassCongr e
        (QuotientGroup.mk'
          (IdeleGroup.principalSubgroup K) a) =
      QuotientGroup.mk'
        (IdeleGroup.principalSubgroup M)
        (ideleCongr e a)

The relative-to-ordinary scalar-extension comparison is natural for transport of relative idèle classes along an equivalence of their top fields.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem
    relativeIdeleClassBaseChangeMulEquiv_relativeIdeleClassCongr
    (e : K ≃ₐ[ℚ] M)
    (c : RelativeIdeleGroup.ClassGroup ℚ K) :
    relativeIdeleClassBaseChangeMulEquiv
        (K := ℚ) (L := M)
        (relativeIdeleClassCongr (K := ℚ) e c) =
      ideleClassCongr e
        (relativeIdeleClassBaseChangeMulEquiv
          (K := ℚ) (L := K) c)
Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section GaloisBaseChangeNaturality
variable {E : Type} [Field E] [NumberField E] [Algebra ℚ E]
instance :
    MulDistribMulAction (E ≃ₐ[ℚ] E)
      (RelativeIdeleGroup.ClassGroup ℚ E)

The actual Galois action on relative idele classes becomes canonical ordinary idele-class transport under the relative-to-ordinary scalar-extension comparison.

Source context 12 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section GaloisBaseChangeNaturality
variable {E : Type} [Field E] [NumberField E] [Algebra ℚ E]
local instance :
    MulDistribMulAction (E ≃ₐ[ℚ] E)
      (RelativeIdeleGroup.ClassGroup ℚ E) :=
  RelativeIdeleGroup.Cohomology.ideleClassMulDistribMulAction ℚ E
theorem relativeIdeleClassBaseChangeMulEquiv_smul_congr
    (σ : E ≃ₐ[ℚ] E)
    (c : RelativeIdeleGroup.ClassGroup ℚ E) :
    relativeIdeleClassBaseChangeMulEquiv
        (K := ℚ) (L := E) (σ • c) =
      ideleClassCongr σ
        (relativeIdeleClassBaseChangeMulEquiv
          (K := ℚ) (L := E) c)

On idele class groups, transport identifies the images of the ordinary ideal-class subgroups. This is the subgroup-level naturality used by the small Hilbert class field.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem ordinaryIdealClassSubgroup_image_map_ideleClassCongr
    (e : K ≃ₐ[ℚ] M) :
    (Subgroup.map
        (QuotientGroup.mk'
          (IdeleGroup.principalSubgroup K))
        (IdeleGroup.ordinaryIdealClassSubgroup (K := K))).map
          (ideleClassCongr e).toMonoidHom =
      Subgroup.map
        (QuotientGroup.mk'
          (IdeleGroup.principalSubgroup M))
        (IdeleGroup.ordinaryIdealClassSubgroup (K := M))
Source context 10 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
omit [Algebra ℚ K] in
theorem
    relativeAdeleBaseChangeRingEquiv_self_tmul_one
    (a : NumberField.AdeleRing (𝓞 K) K) :
    relativeAdeleBaseChangeRingEquiv
        (K := K) (L := K) (a ⊗ₜ[K] (1 : K)) =
      a
Source context 10 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
omit [Algebra ℚ K] in
theorem
    relativeAdeleBaseChangeRingEquiv_self_symm_apply
    (a : NumberField.AdeleRing (𝓞 K) K) :
    (relativeAdeleBaseChangeRingEquiv
        (K := K) (L := K)).symm a =
      a ⊗ₜ[K] (1 : K)

Scalar extension from ℚ to a realization algebra-equivalent to ℚ is the canonical transport of ordinary adele rings.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem rationalAdeleExtension_eq_adeleCongr
    (e : ℚ ≃ₐ[ℚ] M)
    (a : NumberField.AdeleRing (𝓞 ℚ) ℚ) :
    relativeAdeleBaseChangeRingEquiv
        (K := ℚ) (L := M)
        (RelativeIdeleGroup.adeleInclusion ℚ M a) =
      adeleCongr e a

Scalar extension from ℚ to a realization algebra-equivalent to ℚ is the canonical transport of ordinary ideles.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem rationalIdeleExtension_eq_ideleCongr
    (e : ℚ ≃ₐ[ℚ] M) :
    IdeleGroup.extension ℚ M =
      (ideleCongr e).toMonoidHom

Scalar extension from ℚ to a realization algebra-equivalent to ℚ is the canonical transport of ordinary idele classes.

Source context 9 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
theorem rationalIdeleClassExtension_eq_ideleClassCongr
    (e : ℚ ≃ₐ[ℚ] M) :
    ideleClassExtension ℚ M =
      (ideleClassCongr e).toMonoidHom

The tensor-product map induced by compatible equivalences of both fields in a finite extension. The coefficient-ring equivalence is kept explicit so the inverse uses that exact equivalence rather than a second choice.

Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
def relativeAdeleMapOfCompatibleEquiv
    (eK : K ≃ₐ[ℚ] K')
    (eA :
      NumberField.AdeleRing (𝓞 K) K ≃+*
        NumberField.AdeleRing (𝓞 K') K')
    (hA : ∀ x : K,
      eA
          (algebraMap K
            (NumberField.AdeleRing (𝓞 K) K) x) =
        algebraMap K'
          (NumberField.AdeleRing (𝓞 K') K') (eK x))
    (eL : L ≃ₐ[ℚ] L')
    (hL : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x)) :
    RelativeAdeleRing K L →+*
      RelativeAdeleRing K' L'
Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
theorem relativeAdeleMapOfCompatibleEquiv_tmul
    (eK : K ≃ₐ[ℚ] K')
    (eA :
      NumberField.AdeleRing (𝓞 K) K ≃+*
        NumberField.AdeleRing (𝓞 K') K')
    (hA : ∀ x : K,
      eA
          (algebraMap K
            (NumberField.AdeleRing (𝓞 K) K) x) =
        algebraMap K'
          (NumberField.AdeleRing (𝓞 K') K') (eK x))
    (eL : L ≃ₐ[ℚ] L')
    (hL : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x))
    (a : NumberField.AdeleRing (𝓞 K) K)
    (x : L) :
    relativeAdeleMapOfCompatibleEquiv
        eK eA hA eL hL (a ⊗ₜ[K] x) =
      eA a ⊗ₜ[K'] eL x

Compatible equivalences of number-field extensions induce the canonical equivalence of their relative adele rings.

Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
def relativeAdeleCongrOfAlgEquiv
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x)) :
    RelativeAdeleRing K L ≃+*
      RelativeAdeleRing K' L'
Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
theorem relativeAdeleCongrOfAlgEquiv_tmul
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x))
    (a : NumberField.AdeleRing (𝓞 K) K)
    (x : L) :
    relativeAdeleCongrOfAlgEquiv eK eL h
        (a ⊗ₜ[K] x) =
      adeleCongr eK a ⊗ₜ[K'] eL x

Compatible equivalences of number-field extensions induce the canonical equivalence of their relative idele groups.

Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
def relativeIdeleCongrOfAlgEquiv
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x)) :
    RelativeIdeleGroup K L ≃*
      RelativeIdeleGroup K' L'
Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
theorem relativeIdeleCongrOfAlgEquiv_principalIdele
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x))
    (x : Lˣ) :
    relativeIdeleCongrOfAlgEquiv eK eL h
        (RelativeIdeleGroup.principalIdele K L x) =
      RelativeIdeleGroup.principalIdele K' L'
        (Units.mapEquiv eL.toMulEquiv x)

The semilinear relative-idele transport identifies the principal subgroups.

Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
theorem relativeIdelePrincipalSubgroup_map_congrOfAlgEquiv
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x)) :
    (RelativeIdeleGroup.principalSubgroup K L).map
        (relativeIdeleCongrOfAlgEquiv eK eL h) =
      RelativeIdeleGroup.principalSubgroup K' L'

Compatible equivalences of number-field extensions induce the canonical equivalence of their existing relative idele class groups.

Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
def relativeIdeleClassCongrOfAlgEquiv
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x)) :
    RelativeIdeleGroup.ClassGroup K L ≃*
      RelativeIdeleGroup.ClassGroup K' L'
Source context 11 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
theorem relativeIdeleClassCongrOfAlgEquiv_mk
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x))
    (a : RelativeIdeleGroup K L) :
    relativeIdeleClassCongrOfAlgEquiv eK eL h
        (QuotientGroup.mk'
          (RelativeIdeleGroup.principalSubgroup K L) a) =
      QuotientGroup.mk'
        (RelativeIdeleGroup.principalSubgroup K' L')
        (relativeIdeleCongrOfAlgEquiv eK eL h a)

Determinant norms on relative adele rings commute with compatible equivalences of both fields in the extension.

Source context 14 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
section Norm
variable
    [FiniteDimensional K L]
    [FiniteDimensional K' L']
omit [FiniteDimensional K L] [FiniteDimensional K' L'] in
theorem relativeAdeleCongrOfAlgEquiv_norm
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x))
    (z : RelativeAdeleRing K L) :
    adeleCongr eK
        (Algebra.norm
          (NumberField.AdeleRing (𝓞 K) K) z) =
      Algebra.norm
        (NumberField.AdeleRing (𝓞 K') K')
        (relativeAdeleCongrOfAlgEquiv eK eL h z)

The relative idele norm commutes with compatible equivalences of number-field extensions.

Source context 14 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
section Norm
variable
    [FiniteDimensional K L]
    [FiniteDimensional K' L']
omit [FiniteDimensional K L] [FiniteDimensional K' L'] in
theorem relativeIdeleCongrOfAlgEquiv_norm
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x))
    (a : RelativeIdeleGroup K L) :
    ideleCongr eK (RelativeIdeleGroup.norm K L a) =
      RelativeIdeleGroup.norm K' L'
        (relativeIdeleCongrOfAlgEquiv eK eL h a)

The descended relative idele-class norm commutes with compatible equivalences of number-field extensions.

Source context 15 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
section Norm
variable
    [FiniteDimensional K L]
    [FiniteDimensional K' L']
variable [IsGalois K L] [IsGalois K' L']
omit [IsGalois K L] [IsGalois K' L'] in
theorem relativeIdeleClassCongrOfAlgEquiv_ideleClassNorm
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x))
    (c : RelativeIdeleGroup.ClassGroup K L) :
    ideleClassCongr eK
        (RelativeIdeleGroup.classNorm K L c) =
      RelativeIdeleGroup.classNorm K' L'
        (relativeIdeleClassCongrOfAlgEquiv
          eK eL h c)

Under compatible equivalences of number-field extensions, the relative class-norm subgroup is carried exactly to the relative class-norm subgroup of the transported extension.

Source context 15 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
section Norm
variable
    [FiniteDimensional K L]
    [FiniteDimensional K' L']
variable [IsGalois K L] [IsGalois K' L']
omit [IsGalois K L] [IsGalois K' L'] in
theorem relativeIdeleClassNorm_range_map_congrOfAlgEquiv
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x)) :
    (RelativeIdeleGroup.classNorm K L).range.map
        (ideleClassCongr eK).toMonoidHom =
      (RelativeIdeleGroup.classNorm K' L').range

Under compatible equivalences of finite Galois number-field extensions, the ordinary class-norm subgroup is carried exactly to the ordinary class-norm subgroup of the transported extension.

Source context 15 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
section Norm
variable
    [FiniteDimensional K L]
    [FiniteDimensional K' L']
variable [IsGalois K L] [IsGalois K' L']
omit [FiniteDimensional K L] [FiniteDimensional K' L']
  [IsGalois K L] [IsGalois K' L'] in
theorem ordinaryIdeleClassNorm_range_map_congrOfAlgEquiv
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x)) :
    (_root_.ideleClassNorm K L).range.map
        (ideleClassCongr eK).toMonoidHom =
      (_root_.ideleClassNorm K' L').range
Source context 14 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
section Norm
variable
    [FiniteDimensional K L]
    [FiniteDimensional K' L']
variable [IsGalois K L] [IsGalois K' L']
instance normIdeleClassGroup_isMulCommutative
    (F : Type) [Field F] [NumberField F] :
    IsMulCommutative (IdeleClassGroup F)

Compatible equivalences of finite Galois number-field extensions induce the canonical equivalence of their ordinary idele-class norm quotients.

Source context 15 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
section Norm
variable
    [FiniteDimensional K L]
    [FiniteDimensional K' L']
variable [IsGalois K L] [IsGalois K' L']
local instance normIdeleClassGroup_isMulCommutative
    (F : Type) [Field F] [NumberField F] :
    IsMulCommutative (IdeleClassGroup F) :=
  IsMulCommutative.of_comm (fun a b => mul_comm a b)
def ordinaryIdeleClassNormQuotientCongrOfAlgEquiv
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x)) :
    (IdeleClassGroup K ⧸
        (_root_.ideleClassNorm K L).range) ≃*
      (IdeleClassGroup K' ⧸
        (_root_.ideleClassNorm K' L').range)

On an ordinary idele-class representative, transport of norm quotients is induced by the existing idele-class transport.

Source context 16 commands

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

open scoped NumberField TensorProduct
open NumberField
open IsDedekindDomain
noncomputable section
open RelativeIdeleGroup.Cohomology
universe u v w
variable
    {K : Type u} {L : Type v} {M : Type w}
    [Field K] [NumberField K]
    [Field L] [Algebra K L]
    [Field M] [Algebra K M]
section Absolute
variable
    {K : Type u} {M : Type w}
    [Field K] [NumberField K] [Algebra ℚ K]
    [Field M] [NumberField M] [Algebra ℚ M]
section RelativeTowerCongr
variable
    {K L K' L' : Type}
    [Field K] [NumberField K]
    [Field L] [NumberField L] [Algebra K L]
    [Field K'] [NumberField K']
    [Field L'] [NumberField L'] [Algebra K' L']
section Norm
variable
    [FiniteDimensional K L]
    [FiniteDimensional K' L']
variable [IsGalois K L] [IsGalois K' L']
local instance normIdeleClassGroup_isMulCommutative
    (F : Type) [Field F] [NumberField F] :
    IsMulCommutative (IdeleClassGroup F) :=
  IsMulCommutative.of_comm (fun a b => mul_comm a b)
omit [FiniteDimensional K L] [FiniteDimensional K' L']
  [IsGalois K L] [IsGalois K' L'] in
theorem ordinaryIdeleClassNormQuotientCongrOfAlgEquiv_mk
    (eK : K ≃ₐ[ℚ] K')
    (eL : L ≃ₐ[ℚ] L')
    (h : ∀ x : K,
      eL (algebraMap K L x) =
        algebraMap K' L' (eK x))
    (c : IdeleClassGroup K) :
    ordinaryIdeleClassNormQuotientCongrOfAlgEquiv
        eK eL h
        (QuotientGroup.mk'
          (_root_.ideleClassNorm K L).range c) =
      QuotientGroup.mk'
        (_root_.ideleClassNorm K' L').range
        (ideleClassCongr eK c)