Zulip Chat Archive
Stream: Is there code for X?
Topic: Sum of terms of a finsupp function
Antoine Chambert-Loir (Jul 18 2024 at 12:49):
When working with multivariate polynomials or multivariate power series, it is often necessary to consider the sum of all terms of a finitely supported function d : I -> Nat
, and to know basic things such as the fact as the sum is 0 if and only if d = 0
.
Obviously, most definitions and results apply when Nat
is replaced by a reasonable AddCommMonoid…
The theory of degree of polynomials contains docs#MvPolynomial.weightedDegree which
should probably be accessible in another file, under another name…
Any idea of where to put it and in what generality?
Yaël Dillies (Jul 18 2024 at 12:54):
Can't you simply write ∑ i, d i
?
Antoine Chambert-Loir (Jul 18 2024 at 12:57):
I certainly can, but my experience is that for some proofs, that makes it simpler to have a name for this function of d
. (Some mathematicians would write it |d|
.)
Ruben Van de Velde (Jul 18 2024 at 12:57):
Do we not have docs#Finsupp.sum ?
Antoine Chambert-Loir (Jul 18 2024 at 12:57):
Using docs#Finsupp.sum, one has to type d.sum (fun _ => id)
every time, which is relatively unappealing.
Yaël Dillies (Jul 18 2024 at 13:08):
I think this is a case where you should just have local notation, eg |d|
Antoine Chambert-Loir (Jul 18 2024 at 13:13):
Updating Mathlib.RingTheory.MvPolynomial.WeightedHomogeneous
to use such a local notation (that needs to be used elsewhere; probably a scoped notation
is possible, but in what scope?) looks frightening to me…
Antoine Chambert-Loir (Jul 18 2024 at 13:19):
Finsupp.total _ _ _ 1 d
also works, and there is quite an API for docs#Finsupp.total, but these three underscores are also annoying.
Last updated: May 02 2025 at 03:31 UTC