The residue of a function at a place, and its norm to the constants #
A function f that is a unit at a place P has a nonzero residue f(P) in the residue field
F_P, and pushing that residue down to the constants k by the field norm gives a value that
does not depend on P for its home. This file builds those two maps and extends the second by
1 to a total function of the place.
The norm is what makes a product over places possible at all: f(P) lives in F_P, which
varies with P, so without a common target the factors of a product like Weil reciprocity's
f(div g) would live in different fields.
The norm is the classical field norm exactly when F_P is finite over k. Algebra.norm is
LinearMap.det of multiplication, so on a residue field that is not module-finite over k it
takes Mathlib's junk value 1 (Algebra.norm_eq_one_of_not_module_finite), and then so does
normResidue. That regime never arises where this API is meant to be used: over a function field
every place has finite residue degree, by TauCeti.Place.finiteDimensional_residueField. The
definitions below are stated without a finiteness hypothesis for the reason
TauCeti.Place.degree is — the hypothesis would be unused in the term, since Algebra.norm does
not consume one — so the guarantee is recorded here rather than in the signature.
Main definitions #
TauCeti.Place.residueUnit: the residuef(P)of a function that is a unit atP, as a unit of the residue field.TauCeti.Place.normResidue: the norm tokof that residue, as a unit ofk.TauCeti.Place.normResidueOrOne: the same, extended by1at the places wherefis not a unit, so that it is a total function of the place. Totality is what letsTauCeti.Divisor.evalbe a homomorphism outright.
Main results #
TauCeti.Place.coe_residueUnitandTauCeti.Place.coe_normResidue: the underlying field values of the two units:IsLocalRing.residueand theAlgebra.normof it. Both are@[simp], and are named afterTauCeti.Algebra.coe_normUnits, the adjacent lemma of the same shape.TauCeti.Place.normResidueOrOne_of_ord_eq_zeroandTauCeti.Place.normResidueOrOne_of_ord_ne_zero: the two branches of the total extension.TauCeti.Place.ord_mul_eq_zero,ord_inv_eq_zeroandord_div_eq_zero(inPlace/Basic.lean): admissibility is a subgroup condition onFˣ. They are public becauseresidueUnitcarries its admissibility proof as an argument, so a law aboutf * g,f⁻¹orf / ghas to name a proof for the composite in its own left-hand side; these are those names. The identity case needs no such lemma —((1 : Fˣ) : F)is1definitionally, soTauCeti.Place.ord_onealready has the right type.- The group laws in the function:
residueUnit_one,residueUnit_mul,residueUnit_inv,residueUnit_divand theirnormResiduecounterparts, together withnormResidueOrOne_one,normResidueOrOne_mul,normResidueOrOne_invandnormResidueOrOne_divfor the total form. Each partial law assumes only what its inputs need —residueUnit_oneandnormResidue_oneassume nothing at all — and derives the composite's order itself. The total form is asymmetric:normResidueOrOne_mulandnormResidueOrOne_divneed both arguments admissible, whilenormResidueOrOne_invneeds nothing, sinceord_P f⁻¹ = -ord_P fvanishes exactly whenord_P fdoes.
References #
- J. Silverman, The Arithmetic of Elliptic Curves, III.8 — the local factors of the divisor evaluation used there to construct the Weil pairing.
The residue f(P) of a function that is a unit at P, as a unit of the residue field.
Being a unit is what makes the residue nonzero, which is what lets it be raised to a negative
power in TauCeti.Divisor.eval.
This is Mathlib's ValuationSubring.unitGroupToResidueFieldUnits at the unit-group element f
names, rather than a residue paired with a separate proof that it is nonzero.
Equations
- P.residueUnit f hf = P.integers.unitGroupToResidueFieldUnits (TauCeti.Place.unitGroupMk✝ P f hf)
Instances For
The norm to k of the residue of a function that is a unit at P. The residue field
varies with P; the norm is what puts the value in k, the one field all the local factors of
TauCeti.Divisor.eval have to share.
This is the classical field norm precisely when Module.Finite k P.ResidueField — which
TauCeti.Place.finiteDimensional_residueField supplies for every place of a function field.
Absent that, Algebra.norm is the junk value 1
(Algebra.norm_eq_one_of_not_module_finite), exactly as TauCeti.Place.degree is junk 0
absent the same hypothesis.
Equations
- P.normResidue f hf = (TauCeti.Algebra.normUnits k) (P.residueUnit f hf)
Instances For
normResidue extended by 1 where f is not a unit, making it a total function of the
place. 1 is the only workable neutral value: the coefficient of a place in a divisor is an
integer, so the local factor is raised to a possibly negative power, and only a value in kˣ
survives that.
Equations
- P.normResidueOrOne f = if hf : P.ord ↑f = 0 then P.normResidue f hf else 1
Instances For
The total local factor is multiplicative in the function, at a place where both factors
are units. The hypotheses cannot be dropped: at a place where f and g have opposite nonzero
orders, f * g is a unit while neither factor is, so the left side is a genuine norm and the
right side is 1.
Inversion needs no admissibility hypothesis. ord_P f⁻¹ = -ord_P f vanishes exactly when
ord_P f does, so the two places of normResidueOrOne's case split correspond under inversion
and both branches invert. Contrast normResidueOrOne_mul, where the hypotheses cannot be
dropped: a product can leave the subgroup {ord_P = 0} open on neither factor.
Powers need no admissibility hypothesis, for the same reason as normResidueOrOne_inv:
where f is not a unit neither is any nonzero power of it, and both sides are 1.
The total local factor divides in the function, at a place where both arguments are
units. Like normResidueOrOne_mul, and unlike normResidueOrOne_inv, the hypotheses cannot be
dropped: a quotient can be a unit where neither argument is.