MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Symmetric polynomials


shubi at nusun.jinr.ru wrote:
> Dear All,
> 
>    Is the possibility in "Mathematica" express symmetric functions, for
> example:
> 
> P=y1^2 y2 y3 + y1 y2^2 y3 + y1 y2 y3^2 + y1^2 y2 y4 +
> y1 y2^2 y4 + y1^2 y3 y4 + y2^2 y3 y4 + y1 y3^2 y4 +
> y2 y3^2 y4 + y1 y2 y4^2 + y1 y3 y4^2 + y2 y3 y4^2;
> 
> by the standard symmetric polynomials:
> S1=y1+y2+y3+y4;
> S2=y1^2+y2^2+y3^2+y4^2;
> S3=y1^3+y2^3+y3^3+y4^3;
>       . . .
> 
> Best regards
>                       Nodar Shubitidze
>                       Joint Institute for Nuclear Research
>                       Dubna, Moscow region, Russia


Yes, but you will need quartics as well. A reasonable way to do this is 
via PolynomialReduce. You will define polynomial relations for your "s" 
variables rather than setting them explicitly to polynomials.

poly = y1^2*y2*y3 + y1*y2^2*y3 + y1*y2*y3^2 + y1^2*y2*y4 +
   y1*y2^2*y4 + y1^2*y3*y4 + y2^2*y3*y4 + y1*y3^2*y4 +
   y2*y3^2*y4 + y1*y2*y4^2 + y1*y3*y4^2 + y2*y3*y4^2;

s[j_] := Apply[Plus,Variables[poly]^j]

gb = GroebnerBasis[{s1-s[1], s2-s[2], s3-s[3], s4-s[4]},
   Variables[poly]];

In[35]:= InputForm[Last[PolynomialReduce[poly, gb, Variables[poly]]]]
Out[35]//InputForm= (s1^2*s2 - s2^2 - 2*s1*s3 + 2*s4)/2


Daniel Lichtblau
Wolfram Research



  • Prev by Date: Graphics--If condition in Plot3D?????????
  • Next by Date: Re: General--Exponential simplifications by default
  • Previous by thread: Re: Symmetric polynomials
  • Next by thread: Re: Symmetric polynomials