Zulip Chat Archive
Stream: new members
Topic: Appropriate base for the RankOne hom instance for K((X))
Yakov Pechersky (Jan 16 2025 at 03:24):
Since my PR on nonarchimedean local fields is almost complete (#16733), I thought about making sure that the results can be applied for the enumeration of such fields (finite extensions of Q_p and F_q((T))). To even start down this route, I found that NontriviallyNormedField K((X))
does not yet exist. We do have Valued K⸨X⸩ ℤₘ₀
.
Apparently, the only thing that was missing for Valued.toNormedField
to fir e is a Valuation.RankOne
instance. We only have 2 such instances in mathlib, one of which I added myself (the obvious NormedField.toValued one). I haven't grokked the API set up of Valued
and Valuation.RankOne
entirely, especially with way that Valued
carries data and can be "noncanonical" since the codomain is an outparam.
Here is my attempt to generate a NontriviallyNormedField K⸨X⸩
. You'll note that I used e := 2
for the base of the Zm0 -> NNReal hom. What is the "proper" value to use here? Does it even matter (?), since the RankOne
nature is only used for the nontrivial
aspect. cc @Jiang Jiedong @María Inés de Frutos Fernández as contributors to Valued.to(Nontrivially)NormedField
.
import Mathlib
variable {K : Type*} [Field K]
noncomputable
instance : Valuation.RankOne (Valued.v (R := LaurentSeries K)) where
hom := WithZeroMulInt.toNNReal two_ne_zero
strictMono' := WithZeroMulInt.toNNReal_strictMono one_lt_two
nontrivial' := by
refine ⟨HahnSeries.single 2 1, ?_⟩
simp only [LaurentSeries.valuation_single_zpow, ofAdd_neg, WithZero.coe_inv, ne_eq, inv_eq_one]
simp [← WithZero.coe_one]
open scoped Valued in
noncomputable instance : NontriviallyNormedField (LaurentSeries K) := inferInstance
instance : IsUltrametricDist (LaurentSeries K) := inferInstance
Kevin Buzzard (Jan 16 2025 at 07:15):
There's no canonical value in general. If K were finite then its size would be a nice choice because then is locally compact and you've chosen the factor that additive haar measure is being scaled by (see the Haar character project in the FLT blueprint) but I imagine that it's not in general in your situation (yet) so anything bigger than 1 works
Kevin Buzzard (Jan 16 2025 at 07:16):
The argument for using 37 instead of 2 is that it indicates that it's random
María Inés de Frutos Fernández (Jan 16 2025 at 08:08):
In our work on local fields, given a valued field K
(not necessarily a field of Laurent series), @Filippo A. E. Nuccio and I take e
to be the size of the residue field ofK
if it is finite, and otherwise e := 6
(a random non-prime power). You could do an analogous choice here.
María Inés de Frutos Fernández (Jan 16 2025 at 08:12):
We call this Valuation.base.
Michael Stoll (Jan 16 2025 at 11:51):
There is an instance WithAbs.nontriviallynormedField
in Heights.Equivalence. (This circumvents the "base" problem by forcing you to specify the absolute value.)
Last updated: May 02 2025 at 03:31 UTC