> Furthermore, I did not suggest to get rid of the cycleIndexSeries as we have 
> it
> now.  Rather, to provide a second function that computes only a certain
> coefficient fast.
> 
> I.e., we would have two different versions of coefficient (!): one, which
> computes the whole cycleIndexSeries and another that computes only the
> coefficient.

Ah, that sounds somewhat reasonable.

> Of course, it may make sense to combine the two approaches.

Of course the other coefficient function should first check whether the 
coefficient is already computed and cached.

> Modify the
> datastructure of cycleIndexSeries such that it really is a multivariate 
> series:
> 
> Currently, the smallest structure in the CIS is a polynomial, but it seems 
> that
> it is more efficient to have as smallest structure a monomial...

Fine. What data structure would you suggest?

Would it be different from (simplyfied things a bit):

   Stream(List(Integer,PowerProduct))

(because this is basically what I have now, only that I call

   List(Integer,PowerProduct) = Polynomial(x1,...xn,...)

>> Or perhaps you tell me how you then compute the n-th coefficient of the
>> isomorphismType series from the CIS.
> 
> Of course, these monomials have to be grouped by total weight. Thus, when you
> ask something like
> 
> coefficient(series, 28)
> 
> all monomials of total degree 28 are computed, but when you ask for
> 
> coefficient(series, [0,0,0,1,0,0,0,3])
> 
> only one monomial is computed.

Of course, I see that this does not compute unnessary coefficients. But 
you certainly see, that we would have to provide the lightweight 
coefficient function for all operations (+, *, compose, functorial 
compose, integrate, differentiate, exponentiate) in an efficient way. 
Who is going to do it?

> In fact, I think this would be the right approach. This would also make
> specialising to the exponential generating series efficient, and in fact,
> specialising whenever "many" variables are set to zero, which does happen very
> often in the symmetric functions world. (One is the so called "principal
> specialisation of order n")

Be a bit more precise.

Ralf

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Aldor-combinat-devel mailing list
Aldor-combinat-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/aldor-combinat-devel

Reply via email to