Re: Any efficient way to make complete homogeneous symmetric functions in Mathematica?
- To: mathgroup at smc.vnet.net
- Subject: [mg126829] Re: Any efficient way to make complete homogeneous symmetric functions in Mathematica?
- From: Bob Hanlon <hanlonr357 at gmail.com>
- Date: Mon, 11 Jun 2012 00:01:25 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
homogeneousSymmetricPolynomial[k_Integer, var_List] := Module[{n = Length[var], t}, SeriesCoefficient[Times @@ (1/(1 - var*t)), {t, 0, k}]] /; 0 <= k <= Length[var] Table[homogeneousSymmetricPolynomial[k, {x1, x2, x3}], {k, 0, 3}] {1, x1 + x2 + x3, x1^2 + x1*x2 + x2^2 + x1*x3 + x2*x3 + x3^2, x1^3 + x1^2*x2 + x1*x2^2 + x2^3 + x1^2*x3 + x1*x2*x3 + x2^2*x3 + x1*x3^2 + x2*x3^2 + x3^3} With[{var = {x1, x2, x3, x4, x5}}, Module[{m = Length[var]}, Sum[(-1)^i*SymmetricPolynomial[i, var]* homogeneousSymmetricPolynomial[m - i, var], {i, 0, m}] == 0 // Simplify]] True Bob Hanlon On Sun, Jun 10, 2012 at 2:14 AM, Rex <aoirex at gmail.com> wrote: > We do have elementary symmetric functions, SymmetricPolynomial[k,{x_1..x_n}] > http://reference.wolfram.com/mathematica/ref/SymmetricPolynomial.html > > But I didn't found complete homogeneous symmetric functions. > > The induction method to compute h_n from e_i and h_j (j<=n-1) is not that efficient. > https://en.wikipedia.org/wiki/Complete_homogeneous_symmetric_polynomial > > Is there any easier way to do this? >