| Max Alekseyev on Thu, 27 Dec 2007 10:22:55 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| Re: polsym() reverse |
On Aug 28, 2007 12:10 AM, Karim Belabas
<Karim.Belabas@math.u-bordeaux1.fr> wrote:
> PolFromPowerSums(S) =
> { local( n = S[1], a = vector(n+1) );
> a[1] = 1;
> for (k = 2, n, a[k+1] = sum(i = 1, k, S[i+1]*a[k+1-i]) / -k);
> Pol(a)
> }
It seems that it should be "for (k = 1, ..." here.
> 1) is defined up to a multiplicative constant, so assumes the result is monic.
>
> 2) assumes the base ring has characteristic 0 or > n.
>
> 3) assumes #S >= Degree(Pol), otherwise we do not have enough information.
> Should trigger a nice error message if #S <= S[1].
All that makes perfect sense.
> I can add a trivial GP function implementing the above. How should I
> name it ? The above doesn't quite fit our current naming scheme:-)
That's a great idea!
> 'polsym' was not a great choice; 'powersums' would have been clearer/easier
> to find. When I read 'polsym', I think about symmetric functions of the roots,
> hence about the opposite construction ...
I vote for poltopowersums() instead of polsym() and for
polfrompowersums() for its reverse.
But any other names will be highly appreciated as well.
Regards,
Max