Weil differentials of an algebraic function field #
A Weil differential of an algebraic function field F / k is a k-linear form on the
repartition space A_F that vanishes on A_F(D) + F for some divisor D. Writing
Ω_F(D) = {ω : A_F →ₗ[k] k | ω vanishes on (A_F(D) + F) ∩ A_F},
the space of all Weil differentials is Ω_F = ⨆_D Ω_F(D), and multiplying repartitions by a
function f ∈ F makes Ω_F a vector space over F itself, by (f · ω) a := ω (f · a).
This file constructs Ω_F(D), Ω_F and that F-action. It is Stichtenoth, Algebraic Function
Fields and Codes, 2nd ed., Definitions 1.5.6 and 1.5.8. The two theorems that make the objects
built here compute — dim_k Ω_F(D) = i(D) (Lemma 1.5.7) and dim_F Ω_F = 1 (Proposition 1.5.9)
— rest on the quotient interpretation i(D) = dim_k (A_F ⧸ (A_F(D) + F)) of the index of
specialty, and are proved in TauCeti/FieldTheory/FunctionField/Differential/Dimension.lean.
Main definitions #
TauCeti.weilDifferentialFiltration: the spaceΩ_F(D)of Weil differentials bounded by a divisor (Definition 1.5.6), as ak-subspace of the dual ofA_F.TauCeti.weilDifferentialSpace: the spaceΩ_Fof all Weil differentials.TauCeti.repartitionDualMul: the action ofFon thek-linear forms onA_F, induced by multiplication of repartitions by a function (Definition 1.5.8).TauCeti.weilDifferentialSpaceMulandTauCeti.weilDifferentialSpaceModule: its restriction toΩ_F, and the resultingF-vector space structure.TauCeti.repartitionDualMulRight: that action with the linear form frozen, as thek-linear mapF → Module.Dual k A_F,x ↦ x · ω. It restricts to a mapF → Ω_Fwhenωis a Weil differential, byTauCeti.repartitionDualMul_mem_weilDifferentialSpace.
Main results #
TauCeti.mem_weilDifferentialFiltration_of_apply_eq_zerowithTauCeti.weilDifferentialFiltration_apply_eq_zero_of_mem_adeleFiltrationandTauCeti.weilDifferentialFiltration_apply_eq_zero_of_mem_diagonalRepartitions: membership inΩ_F(D)is vanishing on the repartitions bounded byDtogether with vanishing on the constants.TauCeti.weilDifferentialFiltration_antitoneandTauCeti.mem_weilDifferentialSpace_iff: the filtration is antitone and directed, so ak-linear form is a Weil differential exactly when some single divisor bounds it.TauCeti.weilDifferentialFiltration_sup: the exact supremum ruleΩ_F(D ⊔ E) = Ω_F(D) ∩ Ω_F(E).TauCeti.weilDifferentialFiltration_eq_bot_iff:Ω_F(D) = 0exactly when every repartition differs from a constant by one bounded byD.TauCeti.repartitionDualMul_inv_repartitionDualMul: multiplying by a unit and then by its inverse restores the form, so the action of a nonzero function is invertible.TauCeti.repartitionDualMulRight_injectiveandTauCeti.repartitionDualMul_ne_zero: for a nonzero linear formω, the mapx ↦ x · ωis injective, soz · ωis again nonzero forz ≠ 0.TauCeti.repartitionDualMul_mem_weilDifferentialFiltration_iff: forz ∈ Fˣ, a linear form lies inΩ_F(D)exactly whenz · ωlies inΩ_F(D + div z), soΩ_Fis stable under the action (TauCeti.repartitionDualMul_mem_weilDifferentialSpace).
Implementation notes #
Ω_F(D) is the annihilator, in the sense of Submodule.dualAnnihilator, of the subspace
(A_F(D) + F) ∩ A_F of A_F, which is
TauCeti.submoduleOfAdeleFiltrationSupDiagonalRepartitions. The intersection with A_F is not
a restriction: the constants are repartitions as soon as F / k is a function field
(TauCeti.diagonalRepartitions_le_repartitionSpace), and taking it means the definition of
Ω_F(D) itself needs no such hypothesis. Because the definition is an annihilator —
TauCeti.weilDifferentialFiltration_eq_dualAnnihilator —
Submodule.dualQuotEquivDualAnnihilator identifies Ω_F(D) with the dual of the cokernel
A_F ⧸ (A_F(D) + F) with no further work, which is how Lemma 1.5.7 will read dim_k Ω_F(D) off
the index of specialty.
The F-vector space structure TauCeti.weilDifferentialSpaceModule is a def, not an instance:
it exists only when F / k is a function field, and IsFunctionField k F is a hypothesis passed
explicitly rather than a class. Consumers introduce it with letI, as
TauCeti.coe_weilDifferentialSpaceModule_smul and
TauCeti.isScalarTower_weilDifferentialSpace do.
References #
- H. Stichtenoth, Algebraic Function Fields and Codes, 2nd ed., GTM 254, Springer, 2009, Section I.5.
Weil differentials bounded by a divisor #
The space Ω_F(D) of Weil differentials bounded by D (Stichtenoth, Definition 1.5.6):
the k-linear forms on the repartition space that vanish on A_F(D) + F.
Equations
Instances For
Ω_F(D) is the annihilator of (A_F(D) + F) ∩ A_F, which is how
Submodule.dualQuotEquivDualAnnihilator identifies it with the dual of the cokernel
A_F ⧸ (A_F(D) + F).
Membership in Ω_F(D), unfolded: the form kills every repartition in A_F(D) + F.
A Weil differential bounded by D kills every repartition whose poles are bounded by D.
A Weil differential bounded by D kills every constant repartition.
The two vanishing conditions defining Ω_F(D): a k-linear form on A_F that kills the
repartitions bounded by D and kills the constants is a Weil differential bounded by D.
Ω_F(D) vanishes exactly when A_F(D) + F is everything: the only k-linear form on
A_F vanishing on A_F(D) + F is 0 precisely when every repartition already differs from a
constant by one whose poles are bounded by D.
The space of all Weil differentials #
The space Ω_F of Weil differentials of F / k (Stichtenoth, Definition 1.5.6): the
k-linear forms on the repartition space that some divisor bounds.
Equations
- TauCeti.weilDifferentialSpace k F = ⨆ (D : TauCeti.Divisor k F), TauCeti.weilDifferentialFiltration D
Instances For
The filtration is directed: it is antitone, and any two divisors have a lower bound, namely their pointwise minimum, whose member then contains both.
A k-linear form on A_F is a Weil differential exactly when a single divisor bounds
it: the supremum defining Ω_F is the union of the Ω_F(D), because they are directed.
Multiplication by a function #
The multiplication action of F on the k-linear forms on the repartition space
(Stichtenoth, Definition 1.5.8): (f · ω) a = ω (f · a). It is a k-algebra map because F is
commutative, so the transposes of the multiplication maps compose in either order.
Equations
- TauCeti.repartitionDualMul hF = { toFun := fun (f : F) => LinearMap.dualMap ((TauCeti.repartitionMul hF) f), map_one' := ⋯, map_mul' := ⋯, map_zero' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
The defining formula (f · ω) a = ω (f · a) of the action of F on the linear forms.
Multiplying twice is multiplying once by the product. It is not a simp lemma: map_mul
rewrites in the opposite direction.
Multiplying by a nonzero function and then by its inverse restores the linear form, so
multiplication by a nonzero function is invertible on Ω_F.
Multiplication of a fixed linear form by a varying function, as a k-linear map
F → Module.Dual k A_F: the map x ↦ x · ω obtained by freezing the second argument of
TauCeti.repartitionDualMul. Here ω is an arbitrary k-linear form on A_F; when it is a
Weil differential the map lands in Ω_F, by
TauCeti.repartitionDualMul_mem_weilDifferentialSpace. For ω ≠ 0 it is injective
(TauCeti.repartitionDualMulRight_injective), and Riemann–Roch is the computation of its image
on a Riemann–Roch space.
Equations
Instances For
Multiplication by a nonzero linear form is injective: a function x with x · ω = 0
is itself zero.
A nonzero function times a nonzero linear form is nonzero.
Multiplication translates the filtration by a principal divisor: for a nonzero function
z, a linear form is bounded by D exactly when z · ω is bounded by D + div z, exactly as
multiplication by z carries A_F(D + div z) into A_F(D).
Ω_F is stable under multiplication by a function, which is what makes it a vector space
over F and not merely over k.
The multiplication action of F on Ω_F itself, the restriction of
TauCeti.repartitionDualMul to the stable subspace of Weil differentials.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The action of F on Ω_F is the restriction of its action on all the linear forms.
The F-vector space structure on Ω_F (Stichtenoth, Definition 1.5.8): (f · ω) a is
ω (f · a). It is a def and not an instance because it exists only for an algebraic function
field, and TauCeti.IsFunctionField is an explicit hypothesis, not a class; introduce it with
letI.
Equations
Instances For
The scalar multiplication of TauCeti.weilDifferentialSpaceModule is the multiplication
action TauCeti.repartitionDualMul.
The F-vector space structure on Ω_F extends its k-vector space structure.