On Thu, Feb 14, 2008 at 2:07 PM, Andrew Mathas <[EMAIL PROTECTED]> wrote:
> Hi Bill,
>
>  Thanks for your reply. There are a couple of different ways to compute
>  the polynomials that I am interested in but they all fit the general
>  algorithm of computing a basis of Z[x,x^-1]-module and then recursively
>  stripping off "lower terms" so as to get a Z[x]-basis with certain nice
>  properties. The polynomials that I need are the coefficients of this
>  final basis when it is written as a linear combination of the "natural
>  basis" for this module. These polynomials can be quite complicated: any
>  polynomial in 1+N[x] or xN[x] can arise! However, the polynomials appear
>  to "grow" very slowly---actually, I have never seen anything on the
>  asymptotics of these polynomials, but heuristically this seems to be true.
>
>  In gap3 I have some code for computing these things but I wrote this
>  code just for looking at "small" examples and I now want to compute all
>  of these polynomials which correspond to the "blocks of weight 4" for
>  the symmetric groups. The final polynomials that you get are all of
>  degree at most 4, and there really aren't that many different
>  polynomials that arise, but to get them I need to compute in some very
>  large symmetric groups and gap3 does not have enough memory to finish
>  the calculation which, as I have implemented it, is highly recursive
>  (all known algorithms are recursive, but some more than others).
>
>  For my first project in sage I want to implement a less recursive
>  algorithm for computing these polynomials which will be more efficient
>  when computing them for a single "block" of a large symmetric group. The
>  basic algorithm is quite simple but I will need to rewrite a lot of
>  supporting code form gap in sage to set up the calculation. By the end
>  of this a fair proportion of the current (unreleased) version of my gap
>  share package will have migrated to sage (in a new and hopefully
>  improved form).
>
>  So there is a point to this soliloquy. I have two questions:
>  1. If I import FLINT will your code be automatically used by
>  LaurentSeries()?

No, not at present.   We could change this with some work,
which I think should really happen soon.

>  2. I  am currently thinking of writing the main part of the calculation
>  of these polynomials in cython. Is there is any real advantage in doing
>  this given how highly optimized FLINT already is. [The main routine here

I would write the first version in Python then profile it and rewrite
the parts that can get a speed boost in Cython.

>  will be a large loop doing something like a q-analogue of the Garnir
>  relations for the symmetric groups followed by stripping off lower
>  terms. I'll probably also rewrite functions like PartitionTuples() in
>  cython as this is very slow for large r and n in gap, and sage currently
>  calls gap for this function.]

That would also be a great first submission to Sage.  :-)

William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to