Weighted homogeneous polynomials #
It is possible to assign weights (in a commutative additive monoid M
) to the variables of a
multivariate polynomial ring, so that monomials of the ring then have a weighted degree with
respect to the weights of the variables. The weights are represented by a function w : σ → M
,
where σ
are the indeterminates.
A multivariate polynomial φ
is weighted homogeneous of weighted degree m : M
if all monomials
occurring in φ
have the same weighted degree m
.
Main definitions/lemmas #
weightedTotalDegree' w φ
: the weighted total degree of a multivariate polynomial with respect to the weightsw
, taking values inWithBot M
.weightedTotalDegree w φ
: WhenM
has a⊥
element, we can define the weighted total degree of a multivariate polynomial as a function taking values inM
.IsWeightedHomogeneous w φ m
: a predicate that asserts thatφ
is weighted homogeneous of weighted degreem
with respect to the weightsw
.weightedHomogeneousSubmodule R w m
: the submodule of homogeneous polynomials of weighted degreem
.weightedHomogeneousComponent w m
: the additive morphism that projects polynomials onto their summand that is weighted homogeneous of degreen
with respect tow
.sum_weightedHomogeneousComponent
: every polynomial is the sum of its weighted homogeneous components.
weight
#
The weighted total degree of a multivariate polynomial, taking values in WithBot M
.
Equations
- MvPolynomial.weightedTotalDegree' w p = p.support.sup fun (s : σ →₀ ℕ) => ↑((Finsupp.weight w) s)
Instances For
The weightedTotalDegree'
of a polynomial p
is ⊥
if and only if p = 0
.
The weightedTotalDegree'
of the zero polynomial is ⊥
.
When M
has a ⊥
element, we can define the weighted total degree of a multivariate
polynomial as a function taking values in M
.
Equations
- MvPolynomial.weightedTotalDegree w p = p.support.sup fun (s : σ →₀ ℕ) => (Finsupp.weight w) s
Instances For
This lemma relates weightedTotalDegree
and weightedTotalDegree'
.
The weightedTotalDegree
of the zero polynomial is ⊥
.
A multivariate polynomial φ
is weighted homogeneous of weighted degree m
if all monomials
occurring in φ
have weighted degree m
.
Equations
- MvPolynomial.IsWeightedHomogeneous w φ m = ∀ ⦃d : σ →₀ ℕ⦄, MvPolynomial.coeff d φ ≠ 0 → (Finsupp.weight w) d = m
Instances For
The submodule of homogeneous MvPolynomial
s of degree n
.
Equations
- MvPolynomial.weightedHomogeneousSubmodule R w m = { carrier := {x : MvPolynomial σ R | MvPolynomial.IsWeightedHomogeneous w x m}, add_mem' := ⋯, zero_mem' := ⋯, smul_mem' := ⋯ }
Instances For
The submodule weightedHomogeneousSubmodule R w m
of homogeneous MvPolynomial
s of
degree n
is equal to the R
-submodule of all p : (σ →₀ ℕ) →₀ R
such that
p.support ⊆ {d | weight w d = m}
. While equal, the former has a
convenient definitional reduction.
The submodule generated by products Pm * Pn
of weighted homogeneous polynomials of degrees m
and n
is contained in the submodule of weighted homogeneous polynomials of degree m + n
.
Monomials are weighted homogeneous.
A polynomial of weightedTotalDegree ⊥
is weighted_homogeneous of degree ⊥
.
Constant polynomials are weighted homogeneous of degree 0.
0 is weighted homogeneous of any degree.
1 is weighted homogeneous of degree 0.
An indeterminate i : σ
is weighted homogeneous of degree w i
.
The weighted degree of a weighted homogeneous polynomial controls its support.
The weighted degree of a nonzero weighted homogeneous polynomial is well-defined.
The sum of two weighted homogeneous polynomials of degree n
is weighted homogeneous of
weighted degree n
.
The sum of weighted homogeneous polynomials of degree n
is weighted homogeneous of
weighted degree n
.
The product of weighted homogeneous polynomials of weighted degrees m
and n
is weighted
homogeneous of weighted degree m + n
.
A product of weighted homogeneous polynomials is weighted homogeneous, with weighted degree equal to the sum of the weighted degrees.
A non zero weighted homogeneous polynomial of weighted degree n
has weighted total degree
n
.
The weighted homogeneous submodules form a graded monoid.
weightedHomogeneousComponent w n φ
is the part of φ
that is weighted homogeneous of
weighted degree n
, with respect to the weights w
.
See sum_weightedHomogeneousComponent
for the statement that φ
is equal to the sum
of all its weighted homogeneous components.
Equations
- MvPolynomial.weightedHomogeneousComponent w n = (Finsupp.supported R R {d : σ →₀ ℕ | (Finsupp.weight w) d = n}).subtype ∘ₗ Finsupp.restrictDom R R {d : σ →₀ ℕ | (Finsupp.weight w) d = n}
Instances For
The n
weighted homogeneous component of a polynomial is weighted homogeneous of
weighted degree n
.
Every polynomial is the sum of its weighted homogeneous components.
The weighted homogeneous components of a weighted homogeneous polynomial.
If M
is a CanonicallyOrderedAddCommMonoid
, then the weightedHomogeneousComponent
of weighted degree 0
of a polynomial is its constant coefficient.
A weight function is nontorsion if its values are not torsion.
Instances For
If w
is a nontorsion weight function, then the finitely supported function m : σ →₀ ℕ
has weighted degree zero if and only if ∀ x : σ, m x = 0
.
A multivatiate polynomial is weighted homogeneous of weighted degree zero if and only if its weighted total degree is equal to zero.
If w
is a nontorsion weight function, then a multivariate polynomial has weighted total
degree zero if and only if for every m ∈ p.support
and x : σ
, m x = 0
.
The decompose'
argument of weightedDecomposition
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given a weight w
, the decomposition of MvPolynomial σ R
into weighted homogeneous
submodules
Equations
- MvPolynomial.weightedDecomposition R w = { decompose' := MvPolynomial.decompose' R w, left_inv := ⋯, right_inv := ⋯ }
Instances For
Given a weight, MvPolynomial
as a graded algebra
Equations
- MvPolynomial.weightedGradedAlgebra R w = GradedRing.mk