Monoid and group actions on Weil divisors #
A monoid G acting on a type of points X acts on the formal divisors WeilDivisor X by
pushing point coefficients forward: g • ∑ n_x [x] = ∑ n_x [g • x]. This file registers
that action and records how it interacts with the divisor vocabulary — coefficients, point
divisors, the order, effectivity, and the (weighted) degree.
The underlying scalar multiplication is Mathlib's Finsupp.comapSMul, the action on the domain
of a finitely supported function; Mathlib keeps it out of the instance graph because on a
general α →₀ M it competes with the action on the values M. The same overlap exists here
whenever G also acts on ℤ (for instance ℕ acting on WeilDivisor ℕ), so the domain action
is only a scoped instance, available after open scoped TauCeti.AlgebraicGeometry.WeilDivisor;
TauCeti.AlgebraicGeometry.WeilDivisor.smul_def identifies it with the formal pushforward.
Concrete settings where no competing action exists, such as automorphisms of a function field
acting on its divisors, register it globally.
Main results #
TauCeti.AlgebraicGeometry.WeilDivisor.degree_smulandTauCeti.AlgebraicGeometry.WeilDivisor.weightedDegree_smul: an action preserves the unweighted degree, and transports a weighted degree to the weight composed with the action;TauCeti.AlgebraicGeometry.WeilDivisor.isEffective_smulandTauCeti.AlgebraicGeometry.WeilDivisor.smul_le_smul_iff: the action preserves effectivity and the coefficientwise order.
A monoid acting on the points acts on the divisors by pushing point coefficients
forward. This is Mathlib's Finsupp.comapSMul, the action on the domain of a finitely supported
function. It is scoped because it overlaps with the coefficientwise action whenever G also
acts on ℤ.
Instances For
The action is the formal pushforward along the action on points.
A monoid action on the points transports a weighted degree into the weighted degree against the weight composed with the action.
The action preserves effectivity of Weil divisors.