Documentation

TauCeti.RingTheory.DedekindDomain.ValuationOfNeZero

The Multiplicative-valued adic valuation of a unit #

Mathlib attaches to a height one prime v of a Dedekind domain R a homomorphism v.valuationOfNeZero : Kˣ →* Multiplicative, the v-adic valuation of a unit of the fraction field read without the adjoined zero, and relates it to v.valuation K in one direction only: valuationOfNeZero_eq coerces it into ℤᵐ⁰. This file supplies the two complements that make it usable as a rewriting rule, together with two lemmas transporting it along a compatible pair of embeddings of Dedekind domains and their fraction fields.

Main results #

Implementation notes #

These live in their own module rather than beside their first consumer. valuationOfNeZero is declared in Mathlib/RingTheory/DedekindDomain/SelmerGroup.lean, so any host must import that; but the generic completion and S-integer APIs that need the two complements must not, in consequence, also inherit this repository's Selmer-group development. Keeping them here lets TauCeti/RingTheory/DedekindDomain/AdicCompletionExtension.lean use them without depending on TauCeti/RingTheory/DedekindDomain/SelmerGroup.lean, which is downstream of it.

Provenance #

Michael Stoll's elliptic-curves formalisation (github.com/MichaelStollBayreuth/EllipticCurves, Apache 2.0, by Michael Stoll) at commit 66889eada51a reaches for a HeightOneSpectrum.valuationOfNeZero_eq_iff; no such lemma exists at our Mathlib pin, so it is supplied here. exists_valuationOfNeZero_map_eq and dvd_toAdd_valuationOfNeZero_map are adapted from the same source (EllipticCurves/Mathlib/Basic.lean).

@[simp]

The Multiplicative-valued valuation of a unit is determined by the ℤᵐ⁰-valued one. Mathlib carries only the coerced form valuationOfNeZero_eq, which this complements.

A unit has trivial v-adic valuationOfNeZero iff its v-adic valuation is 1, the case m = 1 of valuationOfNeZero_eq_iff.

theorem IsDedekindDomain.HeightOneSpectrum.exists_valuationOfNeZero_map_eq {B : Type u_3} {C : Type u_4} [CommRing B] [IsDedekindDomain B] [CommRing C] [IsDedekindDomain C] {L : Type u_5} {N : Type u_6} [Field L] [Algebra B L] [IsFractionRing B L] [Field N] [Algebra C N] [IsFractionRing C N] (φ : L →+* N) (ψ : B →+* C) (hcomp : (algebraMap C N).comp ψ = φ.comp (algebraMap B L)) (w : HeightOneSpectrum C) (hne : Ideal.comap ψ w.asIdeal ) :
∃ (e : ), ∀ (u : Lˣ), w.valuationOfNeZero ((Units.map φ) u) = (comapOfNeBot ψ w hne).valuationOfNeZero u ^ e

Along an embedding ψ : B →+* C of Dedekind domains and a compatible embedding φ : L →+* N of their fraction fields, the w-adic valuation of φ u is the valuation of u at the contracted prime comapOfNeBot ψ w hne, raised to a fixed power independent of u — namely the ramification index of w over that contraction.

theorem IsDedekindDomain.HeightOneSpectrum.dvd_toAdd_valuationOfNeZero_map {B : Type u_3} {C : Type u_4} [CommRing B] [IsDedekindDomain B] [CommRing C] [IsDedekindDomain C] {L : Type u_5} {N : Type u_6} [Field L] [Algebra B L] [IsFractionRing B L] [Field N] [Algebra C N] [IsFractionRing C N] (φ : L →+* N) (ψ : B →+* C) (hcomp : (algebraMap C N).comp ψ = φ.comp (algebraMap B L)) (w : HeightOneSpectrum C) (hne : Ideal.comap ψ w.asIdeal ) {n : } (u : Lˣ) (h : n Multiplicative.toAdd ((comapOfNeBot ψ w hne).valuationOfNeZero u)) :

Divisibility of adic valuations transports along compatible embeddings: if the valuation of u at the contracted prime is divisible by n, so is the w-adic valuation of φ u.

This is the form in which the semilocal comparison of 2-descent uses exists_valuationOfNeZero_map_eq: ramification multiplies the valuation by a fixed factor, and multiplication preserves divisibility, so parity — the case n = 2 — survives in both directions.