Symmetric Polynomials and Elementary Symmetric Polynomials #
This file defines symmetric MvPolynomials and the bases of elementary, complete homogeneous,
power sum, and monomial symmetric MvPolynomials. We also prove some basic facts about them.
Main declarations #
Notation #
esymm σ R nis thenth elementary symmetric polynomial inMvPolynomial σ R.hsymm σ R nis thenth complete homogeneous symmetric polynomial inMvPolynomial σ R.psum σ R nis the degree-npower sum inMvPolynomial σ R, i.e. the sum of monomials(X i)^noveri ∈ σ.msymm σ R μis the monomial symmetric polynomial whose exponents set are the parts ofμ ⊢ ninMvPolynomial σ R.
As in other polynomial files, we typically use the notation:
σ τ : Type*(indexing the variables)R S : Type*[CommSemiring R][CommSemiring S](the coefficients)r : Relements of the coefficient ringi : σ, with corresponding monomialX i, often denotedX_iby mathematiciansφ ψ : MvPolynomial σ R
The nth 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 MvPolynomials.
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 nth elementary symmetric MvPolynomial σ R.
It is the sum over all the degree n squarefree monomials in MvPolynomial σ R.
Equations
- MvPolynomial.esymm σ R n = ∑ t ∈ Finset.powersetCard n Finset.univ, ∏ i ∈ t, MvPolynomial.X i
Instances For
esymmPart is the product of the symmetric polynomials esymm μᵢ,
where μ = (μ₁, μ₂, ...) is a partition.
Equations
- MvPolynomial.esymmPart σ R μ = (Multiset.map (MvPolynomial.esymm σ R) μ.parts).prod
Instances For
The nth elementary symmetric MvPolynomial σ R is obtained by evaluating the
nth elementary symmetric at the Multiset of the monomials
We can define esymm σ R n as a sum over explicit monomials
The nth complete homogeneous symmetric MvPolynomial σ R.
It is the sum over all the degree n monomials in MvPolynomial σ R.
Equations
- MvPolynomial.hsymm σ R n = ∑ s : Sym σ n, (Multiset.map MvPolynomial.X ↑s).prod
Instances For
hsymmPart is the product of the symmetric polynomials hsymm μᵢ,
where μ = (μ₁, μ₂, ...) is a partition.
Equations
- MvPolynomial.hsymmPart σ R μ = (Multiset.map (MvPolynomial.hsymm σ R) μ.parts).prod
Instances For
The degree-n power sum symmetric MvPolynomial σ R.
It is the sum over all the n-th powers of the variables.
Equations
- MvPolynomial.psum σ R n = ∑ i : σ, MvPolynomial.X i ^ n
Instances For
psumPart is the product of the symmetric polynomials psum μᵢ,
where μ = (μ₁, μ₂, ...) is a partition.
Equations
- MvPolynomial.psumPart σ R μ = (Multiset.map (MvPolynomial.psum σ R) μ.parts).prod
Instances For
The monomial symmetric MvPolynomial σ R with exponent set μ.
It is the sum over all the monomials in MvPolynomial σ R such that
the multiset of exponents is equal to the multiset of parts of μ.
Equations
- MvPolynomial.msymm σ R μ = ∑ s : { a : Sym σ n // Nat.Partition.ofSym a = μ }, (Multiset.map MvPolynomial.X ↑↑s).prod