FUNCTION: Top_n - convert any symmetric function to a p-polynomial
CALLING SEQUENCE:
- Top_n(sf)
- Top_n(sf, b)
- CLG[Top_n](sf)
- CLG[Top_n](sf, b)
-
PARAMETERS:
- sf = any symmetric function
- b = any name of a known basis
SYNOPSIS:
- The Top_n function converts any symmetric function to a p-polynomial.
It uses the relations e.k = 0 for k>_CLGn.
- The input is any expression in terms of the basic symmetric functions.
- The symmetric function sf is expanded and the result is not collected.
- One may specify by a second argument, say b, that sf is solely expressed
in terms of the known basis b.
- One may add 'noexpand' just after the argument sf to choose not to
expand the symmetric function sf before treating it.
- One may collect the result by adding a third argument: this is done
by Top_n(sf, b, 'collect'). For instance, Top_n(sf, 'p', 'collect') may
be used to collect the argument sf.
- Whenever there is a conflict between the function name Top_n and another
name used in the same session, use the long form CLG['Top_n'].
EXAMPLES:
> with(CLG):
> _CLGn;
5
> Top_n((1+q)^5*s[3,2,2,1]): # expands the input
> Top_n((1+q)^5*s[3,2,2,1],noexpand): # does not expand (1+q)^5
> Top_n((1+q)^5*s[3,2,2,1],collect): # collects the result
> Top_n((1+q)^5*s[3,2,2,1],noexpand,'s'): # the most efficient
> Top_n((1+q)^5*s[3,2,2,1],'s',collect): # specifies a basis
> Top_n((1+q)^5*s[3,2,2,1],noexpand,'s',collect):
> Top_n(s[2,1]*h4 - 2*q*p3 + aa*e6);
3 4 2 2 3
1/12 p4 p1 - 1/12 p4 p3 + 7/72 p3 p1 - 1/9 p3 p1 + 1/24 p2 p1
2 5 2 7
- 1/24 p2 p3 + 1/12 p2 p1 - 1/12 p2 p1 p3 + 1/72 p1 - 2 q p3
SEE ALSO: TYP[Sf] Toe_n Toh_n Tom_n Tos_n