FUNCTION: SgaOnX - action of an element of the symmetric group algebra on
                   a linear combination of X[perm] 
CALLING SEQUENCE:
-   SgaOnX(e_1, exp)
-   SGA[SgaOnX](e_1, exp)
-  
   
PARAMETERS:
- e_1 =  any element of the symmetric group algebra
- exp =  any expression
 
  
SYNOPSIS:
-  The SgaOnX function realizes the action of an element of  the  symmetric
  group algebra, say e_1, on an expression exp expressed on the X Schubert
  basis.
 
 
-  The expression exp is expanded and the result is not collected.
 
 
-  One may add 'noexpand' just after the argument  exp  to  choose  not  to
  expand the expression exp before treating it.
 
 
-  One may collect the result by adding  a  third  argument: this  is  done
  by SgaOnX(e_1, exp, 'collect'). Moreover, one  can use both noexpand and
  collect options: for  instance,  SgaOnX(e_1, exp, 'noexpand', 'collect').
 
 
-  The action of  the element SgTranspo(i,n)  on  the  Schubert  polynomial
  X[perm] is : let  nu = MultPerm(perm, SgTranspo(i,n)), then
 
  X[perm] --> X[perm]                         if length(nu) > length(perm)
  X[perm] --> X[perm] + (x_{i+1} - x_i) X[nu]                    otherwise.
 
 
-  The result is expressed  on  the  X  Schubert basis and is not collected.
 
 
-  Whenever  there  is  a  conflict between  the function name  SgaOnX  and
  another name used in the same session, use the long  form  SGA['SgaOnX'].
 
 
EXAMPLES:
> with(SGA):
> SgaOnX(q^4*A[1,3,2] - q^3*A[2,1], z*X[3,2,1] - X[2,1,3]);
 
                      4                    4                 3
      - X[3, 2, 1] z q  + X[3, 1, 4, 2] z q  + X[3, 2, 1] z q
 
                       3    4                    3               3
    - X[2, 4, 1, 3] z q  - q  X[2, 1] - X[2, 1] q  + X[1, 3, 2] q
 
SEE ALSO: