FUNCTION: ToF - express any quasi-symmetric function in the
                 F-basis (dual basis of Ribbon Schur basis) 
CALLING SEQUENCE:
-   ToF(qsf)
-   ToF(qsf, b)
-   NCSF[ToF](qsf)
-   NCSF[ToF](qsf, b)
-  
     
PARAMETERS:
- qsf =  any quasi-symmetric function
- b    =  any name of a known basis
 
  
SYNOPSIS:
-  The  ToF  function  computes  the  expansion  of   qsf  in  the  F-basis.
 
 
-  The  input  is  any  expression  in  terms of the  basic quasi-symmetric
  functions.
 
 
-  The  quasi-symmetric  function   qsf  is  expanded  and  the  result  is
  not  collected.
 
 
-  One  may  specify  by  a  second  argument, say  b, that  qsf  is solely
  expressed  in  terms  of  the  known  basis  b.
 
 
-  The call ToF(qsf, 'F') does not affect the argument qsf.
 
 
-  One  may  add  'noexpand' just  after  the  argument  qsf  to choose not
  to   expand   the   quasi-symmetric  function  qsf  before  treating  it.
 
 
-  One  may  collect  the  result  by  adding  a  third  argument: this  is
  done  by  ToF(qsf, b, 'collect'). For instance, ToF(qsf, 'F', 'collect')
  may  be  used  to  collect  the  argument  qsf.
 
 
-  The  noncommutative  multiplication  is  denoted   by  the  &*  operator.
 
 
-  Whenever  there  is  a  conflict  between  the  function  name  ToF  and
  another name used in the same session, use  the  long  form  NCSF['ToF'].
 
 
EXAMPLES:
> with(NCSF):
> ToF((1+q)^5*QPh[2,1]+t*M[3],noexpand,collect);
 
                       5                              5
         (- 1/2 (1 + q)  - t) F[1, 2] + (- 1/2 (1 + q)  + t) F[1, 1, 1]
 
                          5                         5
            + (1/2 (1 + q)  + t) F[3] + (1/2 (1 + q)  - t) F[2, 1]
 
SEE ALSO: ToE ToPs ToPh ToM