Division of AddMonoidAlgebra by monomials #
This file is most important for when G = ℕ (polynomials) or G = σ →₀ ℕ (multivariate
polynomials).
In order to apply in maximal generality (such as for LaurentPolynomials), this uses
∃ d, g' = g + d in many places instead of g ≤ g'.
Main definitions #
AddMonoidAlgebra.divOf x g: dividesxby the monomialAddMonoidAlgebra.of k G gAddMonoidAlgebra.modOf x g: the remainder upon dividingxby the monomialAddMonoidAlgebra.of k G g.
Main results #
AddMonoidAlgebra.divOf_add_modOf,AddMonoidAlgebra.modOf_add_divOf:divOfandmodOfare well-behaved as quotient and remainder operators.
Implementation notes #
∃ d, g' = g + d is used as opposed to some other permutation up to commutativity in order to match
the definition of semigroupDvd. The results in this file could be duplicated for
MonoidAlgebra by using g ∣ g', but this can't be done automatically, and in any case is not
likely to be very useful.
Divide by of' k G g, discarding terms not divisible by this.
Equations
- x.divOf g = AddMonoidAlgebra.ofCoeff (Finsupp.comapDomain (fun (x : G) => g + x) x.coeff ⋯)
Instances For
Alias of AddMonoidAlgebra.coeff_divOf.
Alias of AddMonoidAlgebra.support_coeff_divOf.
A bundled version of AddMonoidAlgebra.divOf.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The remainder upon division by of' k G g.
Equations
- x.modOf g = AddMonoidAlgebra.ofCoeff (Finsupp.filter (fun (g₁ : G) => ¬∃ (g₂ : G), g₁ = g + g₂) x.coeff)
Instances For
Alias of AddMonoidAlgebra.coeff_modOf_add_self.
Alias of AddMonoidAlgebra.coeff_modOf_self_add.