Symmetric Polynomials and Elementary Symmetric Polynomials #
This file defines symmetric MvPolynomial
s and elementary symmetric MvPolynomial
s.
We also prove some basic facts about them.
Main declarations #
Notation #
esymm σ R n
is then
th elementary symmetric polynomial inMvPolynomial σ R
.psum σ R n
is the degree-n
power sum inMvPolynomial σ R
, i.e. the sum of monomials(X i)^n
overi ∈ σ
.
As in other polynomial files, we typically use the notation:
σ τ : Type*
(indexing the variables)R S : Type*
[CommSemiring R]
[CommSemiring S]
(the coefficients)r : R
elements of the coefficient ringi : σ
, with corresponding monomialX i
, often denotedX_i
by mathematiciansφ ψ : MvPolynomial σ R
The n
th elementary symmetric function evaluated at the elements of s
Equations
- s.esymm n = (Multiset.map Multiset.prod (Multiset.powersetCard n s)).sum
Instances For
A MvPolynomial φ
is symmetric if it is invariant under
permutations of its variables by the rename
operation
Equations
- φ.IsSymmetric = ∀ (e : Equiv.Perm σ), (MvPolynomial.rename ⇑e) φ = φ
Instances For
The subalgebra of symmetric MvPolynomial
s.
Equations
- MvPolynomial.symmetricSubalgebra σ R = { carrier := setOf MvPolynomial.IsSymmetric, mul_mem' := ⋯, one_mem' := ⋯, add_mem' := ⋯, zero_mem' := ⋯, algebraMap_mem' := ⋯ }
Instances For
MvPolynomial.rename
induces an isomorphism between the symmetric subalgebras.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The n
th elementary symmetric MvPolynomial σ R
.
Equations
- MvPolynomial.esymm σ R n = ∑ t ∈ Finset.powersetCard n Finset.univ, ∏ i ∈ t, MvPolynomial.X i
Instances For
The n
th elementary symmetric MvPolynomial σ R
is obtained by evaluating the
n
th elementary symmetric at the Multiset
of the monomials
We can define esymm σ R n
by summing over a subtype instead of over powerset_len
.
We can define esymm σ R n
as a sum over explicit monomials
The degree-n
power sum
Equations
- MvPolynomial.psum σ R n = ∑ i : σ, MvPolynomial.X i ^ n