Module docstring
{"# Scalar multiplication on Finsupp
This file defines the pointwise scalar multiplication on Finsupp, assuming it preserves zero.
Main declarations
Finsupp.smulZeroClass: if the action ofRonMpreserves0, then it acts onα →₀ M
Implementation notes
This file is intermediate between Finsupp.Defs and Finsupp.Module in that it covers scalar
multiplication but does not rely on the definition of Module. Scalar multiplication is needed to
supply the nsmul (and zsmul) fields of (semi)ring structures which are fundamental for e.g.
Polynomial, so we want to keep the imports required for the Finsupp.smulZeroClass instance
reasonably light.
This file is a noncomputable theory and uses classical logic throughout.
","Throughout this section, some Monoid and Semiring arguments are specified with {} instead of
[]. See note [implicit instance arguments].
"}