David Harvey wrote:
FLINT is coming along well, but I don't know if I can get all of the following done before SAGE 2.0: (a) get FLINT to release 1.0 (b) move generic polynomial elements to sagex (c) write specialised Z[x] wrapper (i.e. write a derived class of generic polynomial element) which uses FLINT objects for basic arithmetic I'm reasonably sure (a) will be done by SAGE 2.0. I don't think I can get all three done though. It would be really wonderful if someone would volunteer to do (b), and hopefully have it done before I get to (c).
There's little chance of (a) being done by SAGE 2.0. The latter is due for release in 4 weeks, whilst the former will not be ready by then. The thing that will be missing is polynomial gcd (which relies on polynomial division, which also hasn't been implemented). MAGMA holds the world record for the former, and we are not going to beat them with a last minute coding sprint. However, what will be done is FLINT 0.5. This will have polynomial multiplication and integer factoring. Out integer multiplication also happens to be somewhat faster than GMP's (GMP will later this year release an improved version which will probably soundly beat us - the intial figures I've seen look very promising). It occured to me that the best way to provide this stuff directly to SAGE, and improve a whole raft of other things is to include our code in the SAGE version of Pari. But it occurs to me (just now) that this might be ill advised, given that many SAGE objects are not implemented through Pari, but through NTL. Unfortunately, integrating our code into NTL is not an option. I'm happy if people think they can write wrappers etc in time, to have SAGE just work directly with FLINT objects. Polynomial multiplication should be working by Monday-ish. But how I proceed might depend on what people think about this. So, should I: a) Try and incorporate FLINT into the SAGE pari; or b) Keep writing FLINT and let someone else figure out how to incorporate FLINT directly. The advantage of (a) is that heaps of stuff gets sped up, since heaps of stuff in Pari is built on polynomial arithmetic. The disadvantage is that some NTL stuff will want to be changed over to Pari stuff in SAGE. The advantage of (b) is probably a faster end product and less work for me. The disadvantage is it only benefits basic arithmetic, i.e. factoring, polynomial multiplication and integer multiplication and stuff *in SAGE* that depends on any of the above. Bill. --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---
