[sage-devel] sage-2.5.alpha0
Hi, I've posted a preliminary SAGE-2.5.alpha0 tarball here: /home/was/sage2.5 I'm uploading it now -- it's 93 MB, and I'm uploading it as I write this email. I don't know for certain that it builds, though hopefully it will both build and pass all doctests -- reports are welcome. Especially if it doesn't build respond to this email and let us know, so other people don't waste a lot of time trying to build it. It includes the new ** Calculus package **, among other things. There are still numerous patches that haven't been incorporated in yet. Look in devel/sage/sage/calculus/calculus.py and wester.py for lots and lots of examples. The calculus package actually massively changes the feel of SAGE. It's quite interesting. It's also worrisome, which is one reason I'm taking my time on this release. I hope I get some feedback and bug fixes before the release. I had wanted to release sage-2.5 today, but there's no way that can happen, since there's a lot left to do. I don't see a sage-2.5 release happening until at least Friday. I want to give people time try play with the new calculus functionality first to make sure it is useful and not too radical a change for 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Sage 2.4.2 Mac.app prototype
On Apr 23, 4:29 am, William Stein [EMAIL PROTECTED] wrote: The compressed dmg is ~137MB, I will post a link once I am at the office. That's reasonable. Ok, you can find a copy at http://fsmath.mathematik.uni-dortmund.de/~mabshoff/sage/ - it is PPC only at the moment. Sounds good - I am trying to figure out if there is a way that the notebook can tell the server to terminate itself. Currently when I quit the notebook sage keeps running and even a forced quit of the sage.app via dock does not terminate sage itself. We could definitely have a way for the notebook to turn off the server. But I think the best way is to just have it keep running and timeout. That way people can just quit their web browser. This is house some software I installed from HP for my office printer works, by the way. Ok, any pointers or suggestions on how to do this? Great, please let me know as soon as you are getting ready - that would give me some time to build a msi installer close to the official release of 2.5. OK. I'll hopefully have a pre-release tonight and a real official release soon. Yep. just saw it. Once the upload is finished I will give building it a shot. There is also an issue at the moment with clock() wrapping every 35 minutes only on cygwin - seehttp://groups.google.com/group/sage-devel/browse_thread/thread/288c21... - has anybody volunteered to take a close look? I forgot to mention on sage-devel that the message you posted about this is very likely enough for me to easily fix the problem. Ok. William Cheers, Michael --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: sage-2.5.alpha0
On Monday 23 April 2007 11:35, William Stein wrote: Hi, I've posted a preliminary SAGE-2.5.alpha0 tarball here: /home/was/sage2.5 I'm uploading it now -- it's 93 MB, and I'm uploading it as I write this email. I don't know for certain that it builds, though hopefully it will both build and pass all doctests -- reports are welcome. Especially if it doesn't build respond to this email and let us know, so other people don't waste a lot of time trying to build it. builds fine on x86_64 Linux, 'make test' passes besides for MPolynomial_libsingular which isn't built (which I am working on right now). Martin -- name: Martin Albrecht _pgp: http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0x8EF0DC99 _www: http://www.informatik.uni-bremen.de/~malb _jab: [EMAIL PROTECTED] --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Sage 2.4.2 Mac.app prototype
On 4/23/07, mabshoff [EMAIL PROTECTED] wrote: Ok, you can find a copy at http://fsmath.mathematik.uni-dortmund.de/~mabshoff/sage/ - it is PPC only at the moment. Sounds good - I am trying to figure out if there is a way that the notebook can tell the server to terminate itself. Currently when I quit the notebook sage keeps running and even a forced quit of the sage.app via dock does not terminate sage itself. We could definitely have a way for the notebook to turn off the server. But I think the best way is to just have it keep running and timeout. That way people can just quit their web browser. This is house some software I installed from HP for my office printer works, by the way. Ok, any pointers or suggestions on how to do this? I'll have to think about it. It's a somewhat tricky problem, possibly involving threads or improving the cleaner process. Great, please let me know as soon as you are getting ready - that would give me some time to build a msi installer close to the official release of 2.5. OK. I'll hopefully have a pre-release tonight and a real official release soon. Yep. just saw it. Once the upload is finished I will give building it a shot. Please try to build on cygwin too. Note that I have *not* tested this version at all on cygwin yet, so it will be interesting to see what happens. There is also an issue at the moment with clock() wrapping every 35 minutes only on cygwin - seehttp://groups.google.com/group/sage-devel/browse_thread/thread/288c21... - has anybody volunteered to take a close look? I forgot to mention on sage-devel that the message you posted about this is very likely enough for me to easily fix the problem. Ok. I put the fix in the 2.5 alpha that I released. -- 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Is LiDIA valuable for free software and number theory?
I looked at LiDIA a long time ago (like 1999 or 2000) and I remember being very impressed both with its scope and with its modular (i.e. recursive) data types and programming dogma. However, I decided against using it simply because of its license. I suspect that other developers may have made the same decisions and that is why LiDIA isn't widely used. If it were GPL'd, then I would certainly find it extremely useful. Although Bill is correct in that LiDIA will never be as fast as from-scratch implementations like FLINT, the advantage of recursive data types is that you get a lot of code re-use with minimal effort. Since it's done with a nice object oriented interface, you can change the implementation at almost any level without having to worry about propagating changes manually though the code. LiDIA in GPL'd form would also be very useful to me personally because LinBox already has hooks built in to use LiDIA... so any data structure (i.e. Number Fields...) added to LiDIA get propagated into LinBox with minimal effort. However, before I spend any time writing code for LiDIA, I want to see it released under GPL. --jason On 4/23/07, Bill Hart [EMAIL PROTECTED] wrote: It would be very valuable if LiDIA were GPL'd! I re-skimread the entire 700+ page manual last night. I'm not certain how many people actually use LiDIA, but my guess is not that many. And I really don't know why this is. It is very well documented (if not a little too verbosely, and without sufficiently many examples), has a wide coverage and is actually structured very well. It is a particular shame that it is not widely used given the amount of man years that has gone into the project. My feeling is that it lies between two paradigms. It is neither a minimalist superfast C library, nor is it a computer algebra system with a nice front end (or at least I don't know of one). So it won't get used like the Pari/GP package because of the lack of front end, and it wouldn't be my choice if I wanted the greatest possible speed if I were writing a C program. For one thing it is not necessarily easy to tell which parts of the library are going to be superfast and which are going to use generic routines. However, as far as I can tell, all LiDIA types are recursive on account of the generic programming used and everything but p-adics seems to be there. It has memory management, error handling and signal handling. It is even possible to do some things quite fast. I realised last night that one could use the polynomials over prime fields to implement fast polynomial mutiplication if one so desired. Victor Schoup seems to have been involved too, so perhaps the specialised polynomials over bigints allow for asymptotically fast polynomial multiplication, which I imagine is on par with NTL (though I haven't checked this). My impression had been that only the naieve polynomial multiplication routine had been implemented, but I think I was looking at the generic routine not the specialised polynomials over bigints routine. There are various factoring routines available, including (if you look in the right place) p-1, p+1, ECM, MPQS and others. However, I understand that some of the Pari routines are souped up versions of these (e.g. the quadratic sieve in Pari came from LiDIA), so I don't expect them to be dazzlingly fast. The algebraic number theory package seems to contain quite a bit of stuff. There's binary quadratic forms, quadratic number fields, general number fields, even factorization into ideals and routines for working with ideals and elements of number fields. It doesn't have as much as Pari, and it is all restricted to absolute extensions of Q as far as I can tell, but it doesn't look too bad. The elliptic curve package has quite a lot of stuff in it, even down to implementation of computing Siksek bounds I think. It also has stuff for crypto, point counting, generating curves using complex multiplication, etc. I'm not sure I'd go so far as to say it contains the best implementations of elliptic curve stuff anywhere, but it certainly does contain quite a bit of good stuff. I see Nigel Smart, John Cremona and others have contributed code. It doesn't have any p-adic routines obviously, and there aren't routines for converting from cubics of genus 1 to Weierstrass elliptic curves, I don't think. There doesn't seem to be a way of resurrecting LiDIA by replacing all the basic arithmetic code in it with faster stuff. One can replace the kernel with a custom kernel, as far as I can see, but this just wouldn't cut it. One would need to replace the entire bigint package, and all the other basic packages it sits on (doubles, complex arithmetic, reals, rationals, etc). But once one did that, everything else on top would run faster automatically because of the way it's written. But I'm not personally enamoured of recursive data types. There is almost always a way of doing
[sage-devel] Re: Is LiDIA valuable for free software and number theory?
According to the mailing list for LiDIA, it was GPL'd last year, but no one has updated the web page with the new license information. More precisely, the authors agreed to allow it to be GPL'd last year, but none of the files contain the GPL preamble, nor is there a copy of the GPL in the tarball. It actually looks like someone would need to repackage LiDIA for the GPL since the whole package appears to have been pretty much abandoned (the developers list was closed after a year of nothing more than spam). But this would be a nontrivial task given the large number of files involved. Probably with explicit permission of the authors to GPL LiDIA, some motivated individual could just apply the license to all the files and assuming someone could be found to update the webpage, this could just go ahead. I get the feeling that no one is going to do this for us. The project has all but been abandoned. There is no motivation for anyone to go to all this trouble. There is however some information in the list archives which seems to indicate that there may still be one developer who still answers posts regarding the project. Fortunately there haven't been a ridiculous number of contributors to LiDIA, so if that one developer has information on which authors have agreed to GPL the code, it might be possible to get this done relatively painlessly. Bill. --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Is LiDIA valuable for free software and number theory?
Also, from what I can tell, there is a version of LiDIA floating about which compiles on the latest gcc. Perhaps the one remaining active developer, Christoph, has a copy of this. William and others interested in this issue, can you CC me on this topic if there are developments. If nothing happens by the end of May, I will try to see what I can do to chase up the GPL on LiDIA. It seems there are a number of people who care that LiDIA does not die. I also gave up on LiDIA when I saw the current license agreement. I believe I have an email from another developer who obliquely refers to abandoning LiDIA upon realising the uncertainty of its licensing status. Bill. --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Is LiDIA valuable for free software and number theory?
OK, here is the information regarding the GPL of LiDIA, taken from the LiDIA list from the one active developer of LiDIA (apart from Jordi Gutierrez Hermoso who has been working on the Debian port). Christoph is no longer at Darmstadt, but at WORMS but is the LiDIA maintainer. Presumably Buchmann was in charge of LiDIA at Darmstadt? In addition, there was some discussion between Jordi and Christoph to create a sourceforge page for LiDIA. I think this would be an excellent idea. We have one for FLINT, and it has been invaluable. Bill. - From lidiaadm at cdc.informatik.tu-darmstadt.de Wed Oct 18 17:58:36 2006 From: lidiaadm at cdc.informatik.tu-darmstadt.de (LiDIA Administrator) Date: Wed Oct 18 18:32:59 2006 Subject: [LiDIA] LiDIA available under GPL In-Reply-To: [EMAIL PROTECTED] References: [EMAIL PROTECTED] Message-ID: [EMAIL PROTECTED] Hi, LiDIA's license has always been very fuzzy: You could use it for research and other non-commercial purposes for free, but there was no statement regarding the re-distribution of LiDIA or derived work. There has been interest to create a Debian package of LiDIA, but a prerequisite was that LiDIA is released under the GPL (or some compatible license). I therefore asked for (and received) the permission from Prof. Buchmann to release LiDIA under the GPL. I won't be able to prepare a new release anytime soon that has the proper license text etc., but you can apply the GPL to the current release as well. Best regards Christoph - Bill. --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Is LiDIA valuable for free software and number theory?
On Apr 23, 2007, at 08:34 , Bill Hart wrote: Also, from what I can tell, there is a version of LiDIA floating about which compiles on the latest gcc. Perhaps the one remaining active developer, Christoph, has a copy of this. William and others interested in this issue, can you CC me on this topic if there are developments. If nothing happens by the end of May, I will try to see what I can do to chase up the GPL on LiDIA. It seems there are a number of people who care that LiDIA does not die. I also gave up on LiDIA when I saw the current license agreement. I believe I have an email from another developer who obliquely refers to abandoning LiDIA upon realising the uncertainty of its licensing As I read the LiDIA mailing list traffic, the decision has been made to release the source under GPL. The sticking point is that Christophe, the only active developer for LiDIA right now, has a day job :-}. His latest comment on the list indicates an updated copy of the source, which will include the GPL verbiage, is forthcoming. I don't know whether it is feasible, but it's always worth offering to help, to get some progress in completing the job (this is a suggestion to all, not a pointed hint :-}). Regarding a version that works with recent releases of gcc (4.0 and later), Grant Atoyan (who did the work) may be willing to release a copy. It is Christophe's intent to fold his work into the putative upcoming release... I think that LiDIA is a very good collection of ideas and implementation for number theory. Its big problem is incurable: it's written in C++. Justin -- Justin C. Walker, Curmudgeon-At-Large Director Institute for the Enhancement of the Director's Income Weaseling out of things is what separates us from the animals. Well, except the weasel. - Homer J Simpson --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] sqlite
Hi, The sqlite-3.3.15 package included in the SAGE-2.5 alpha that I posted here: http://sage.math.washington.edu/home/was/sage2.5 doesn't build under cygwin. So if you try to build the alpha version under cygwin, you'll have to replace that package by sqlite-3.3.14.spkg from the previous version. Also, if anybody has any idea how to fix this, let me know. Here's the error output (see below). In the meantime, I'll revert to including sage-3.3.14.spkg in sage-2.5. ' rm -rf tsrc mkdir -p tsrc cp ./src/alter.c ./src/analyze.c ./src/attach.c ./src/auth.c ./src/btree.c ./src/btree.h ./src/build.c ./src/callback.c ./src/complete.c ./src/date.c ./src/delete.c ./src/expr.c ./src/func.c ./src/hash.c ./src/hash.h ./src/insert.c ./src/legacy.c ./src/loadext.c ./src/main.c ./src/os.c ./src/os_unix.c ./src/os_win.c ./src/os_os2.c ./src/pager.c ./src/pager.h ./src/parse.y ./src/pragma.c ./src/prepare.c ./src/printf.c ./src/random.c ./src/select.c ./src/shell.c ./src/sqlite.h.in ./src/sqliteInt.h ./src/table.c ./src/tclsqlite.c ./src/tokenize.c ./src/trigger.c ./src/utf.c ./src/update.c ./src/util.c ./src/vacuum.c ./src/vdbe.c ./src/vdbe.h ./src/vdbeapi.c ./src/vdbeaux.c ./src/vdbefifo.c ./src/vdbemem.c ./src/vdbeInt.h ./src/vtab.c ./src/where.c ./ext/fts1/fts1.c ./ext/fts1/fts1.h ./ext/fts1/fts1_hash.c ./ext/fts1/fts1_hash.h ./ext/fts1/fts1_porter.c ./ext/fts1/fts1_tokenizer.h ./ext/fts1/fts1_tokenizer1.c sqlite3.h ./src/btree.h ./src/hash.h opcodes.h ./src/os.h ./src/os_common.h ./src/sqlite3ext.h ./src/sqliteInt.h ./src/vdbe.h parse.h ./ext/fts1/fts1.h ./ext/fts1/fts1_hash.h ./ext/fts1/fts1_tokenizer.h ./src/vdbeInt.h tsrc cp: warning: source file `./src/btree.h' specified more than once cp: warning: source file `./src/hash.h' specified more than once cp: warning: source file `./src/sqliteInt.h' specified more than once cp: warning: source file `./src/vdbe.h' specified more than once cp: warning: source file `./ext/fts1/fts1.h' specified more than once cp: warning: source file `./ext/fts1/fts1_hash.h' specified more than once cp: warning: source file `./ext/fts1/fts1_tokenizer.h' specified more than once cp: warning: source file `./src/vdbeInt.h' specified more than once rm tsrc/sqlite.h.in tsrc/parse.y cp parse.c opcodes.c keywordhash.h tsrc tclsh ./tool/mksqlite3c.tcl gcc sqlite3.c -o sqlite3 /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../libcygwin.a(libcmain.o):(.text+0xab): undefined reference to [EMAIL PROTECTED]' collect2: ld returned 1 exit status make[2]: *** [sqlite3] Error 1 make[2]: Leaving directory `/usr/local/sage-2.5.alpha0/spkg/build/sqlite-3.3.15' Error installing sqlite real4m15.186s user2m29.130s sys 2m54.779s sage: An error occured while installing sqlite-3.3.15 Please email William Stein [EMAIL PROTECTED] explaining the problem and send him the relevant part of of /usr/local/sage-2.5.alpha0/install.log. Don't send the whole thing. If you want to try to fix the problem, yourself *don't* just cd to /usr/local/sage-2.5.alpha0/spkg/build/sqlite-3.3.15 and type 'make'. Instead (using bash) type source local/bin/sage-env from the directory /usr/local/sage-2.5.alpha0 in order to set all environment variables correctly, then cd to /usr/local/sage-2.5.alpha0/spkg/build/sqlite-3.3.15 make[1]: *** [installed/sqlite-3.3.15] Error 1 make[1]: Leaving directory `/usr/local/sage-2.5.alpha0/spkg' real7m41.864s user4m42.220s sys 4m59.183s -- William Stein Associate Professor of Mathematics University of Washington http://www.williamstein.org --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: sqlite
Hello, I also found this. The problem is here: tclsh ./tool/mksqlite3c.tcl gcc sqlite3.c -o sqlite3 /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../libcygwin.a(libcmain.o): (.text+0xab): undefined reference to [EMAIL PROTECTED]' sqlite3.c is build with the script ./tool/mksqlite3c.tcl - then compiled with a default rule for .c file. Because there is no main function in sqlite3.c the linked throws an error. sqlite3.exe is not build from sqlite3c, but from src/shell.c. I am digging around in makefile.in, but I haven't found a solution yet. Cheers, Michael --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Sage 2.4.2 Mac.app prototype
On Apr 23, 2007, at 7:32 AM, William Stein wrote: On 4/23/07, mabshoff [EMAIL PROTECTED] dortmund.de wrote: Ok, you can find a copy at http://fsmath.mathematik.uni- dortmund.de/~mabshoff/sage/ - it is PPC only at the moment. Sounds good - I am trying to figure out if there is a way that the notebook can tell the server to terminate itself. Currently when I quit the notebook sage keeps running and even a forced quit of the sage.app via dock does not terminate sage itself. We could definitely have a way for the notebook to turn off the server. But I think the best way is to just have it keep running and timeout. That way people can just quit their web browser. This is house some software I installed from HP for my office printer works, by the way. Ok, any pointers or suggestions on how to do this? I'll have to think about it. It's a somewhat tricky problem, possibly involving threads or improving the cleaner process. I think it might be handy to have some kind of a timeout parameter on the cleanup processes (though I'm not sure how one would communicate inactivity, touch a file whenever you're doing something). Alternatively, put something in the main loop (or using timed callback functions) in the sage notebook server. An idle notebook--ie one that's open but not doing any calculations could poll the server at some interval shorter than the timeout interval so that the server remains up as long as the webpage does, but not long after. - Robert --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: Sage 2.4.2 Mac.app prototype
On 4/23/07, Robert Bradshaw [EMAIL PROTECTED] wrote: I'll have to think about it. It's a somewhat tricky problem, possibly involving threads or improving the cleaner process. I think it might be handy to have some kind of a timeout parameter on the cleanup processes (though I'm not sure how one would communicate inactivity, touch a file whenever you're doing something). Yes, I like that -- it would be very handy. Measuring inactivity is the tricky part. I like your file idea -- with the notebook, every so often it saves its state to a file -- it would be very easy to add something so that it also touches a certain file in a tmp directory. If that file doesn't get touched for 10 minutes, say, then the notebook server is killed. This works very nicely, since, e.g., if the notebook crashes or gets into some weird horrible loop, after 10 minutes it gets automatically killed by the cleaner. (I'm imagining a frustrated deranged user who bangs on SAGE via the notebook, somehow puts SAGE into a resource hogging infinite loop, then crashes their poor web browser, and is happy when SAGE automatically cleans up the mess within 2-3 minutes with no further work on their part. Alternatively, put something in the main loop (or using timed callback functions) in the sage notebook server. An idle notebook--ie one that's open but not doing any calculations could poll the server at some interval shorter than the timeout interval so that the server remains up as long as the webpage does, but not long after. I considered this but I don't really have access to the current main loop; it's owned by the SimpleHTTPServer right now. Also, this doesn't work if the notebook crashes or gets into a weird state -- we want the thing to stop after 10 minutes (say), no matter what. Using a separate cleaner process seems much better from this point of view. And the result will likely be very widely useful. Thanks for your ideas. 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: plotting equations
On 4/23/07, Timothy Clemans [EMAIL PROTECTED] wrote: What is the plan to support plotting of equations, especially ones like x^2 + y^2 == 1 which is y == +- sqrt(-x^2 + 1) and 6*x + 4*y == 9 which is y == -6/4*x + 3/2? I don't have a good plan yet. Thought out suggestions for an implementation strategy are welcome. Please email the list. This will be after sage-2.5 is released though. 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] OLPC
hi all, Last night I had a beer with Ivan Krstic (one of the OLPC developers), and he showed me one of their little laptop gizmo thingys. I have to say I was, on the whole, quite impressed. It has a gorgeous (small) display. It's pretty slow and the keyboard is fiddly. But I ran the SAGE notebook off sage.math, using their browser (which is basically the firefox kernel with a slimmed down UI), and it worked beautifully. I could compute 2+3, I could do tab-completion, graph functions, etc. All looked great. It really made we wonder whether the notebook would be a good platform for doing educational mathematics on these machines, assuming they could make available servers with enough grunt to run SAGE itself. david --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: plotting equations
Do we just create a function based on the equation in question or in the case of the equation of circles two functions and just plot the function(s)? On 4/23/07, Bobby Moretti [EMAIL PROTECTED] wrote: In terms of features, something comparable to Apple's grapher application would be nice. Specifically, if you give, say, a polynomial in two variables, it should automagically do implicit plotting. I think that having dead simple implicit plotting could be a huge selling point for SAGE. ~Bobby On 4/23/07, William Stein [EMAIL PROTECTED] wrote: On 4/23/07, Timothy Clemans [EMAIL PROTECTED] wrote: What is the plan to support plotting of equations, especially ones like x^2 + y^2 == 1 which is y == +- sqrt(-x^2 + 1) and 6*x + 4*y == 9 which is y == -6/4*x + 3/2? I don't have a good plan yet. Thought out suggestions for an implementation strategy are welcome. Please email the list. This will be after sage-2.5 is released though. 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: plotting equations
On 4/23/07, Bobby Moretti [EMAIL PROTECTED] wrote: In terms of features, something comparable to Apple's grapher application would be nice. Specifically, if you give, say, a polynomial in two variables, it should automagically do implicit plotting. I think that having dead simple implicit plotting could be a huge selling point for SAGE. OK, I agree with how the interface would work. I'm more interested in an actual implementation plan. I.e., what code can we barrow, what algorithms, etc... ~Bobby On 4/23/07, William Stein [EMAIL PROTECTED] wrote: On 4/23/07, Timothy Clemans [EMAIL PROTECTED] wrote: What is the plan to support plotting of equations, especially ones like x^2 + y^2 == 1 which is y == +- sqrt(-x^2 + 1) and 6*x + 4*y == 9 which is y == -6/4*x + 3/2? I don't have a good plan yet. Thought out suggestions for an implementation strategy are welcome. Please email the list. This will be after sage-2.5 is released though. William -- William Stein Associate Professor of Mathematics University of Washington http://www.williamstein.org --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: plotting equations
This can't always be done in general, and even if it can it's usually really ugly. For example, sin(sin(y) + y) = x^5 - x + 1. There are other algorithms to do this kind of implicit plotting. On Apr 23, 2007, at 11:25 AM, Timothy Clemans wrote: Do we just create a function based on the equation in question or in the case of the equation of circles two functions and just plot the function(s)? On 4/23/07, Bobby Moretti [EMAIL PROTECTED] wrote: In terms of features, something comparable to Apple's grapher application would be nice. Specifically, if you give, say, a polynomial in two variables, it should automagically do implicit plotting. I think that having dead simple implicit plotting could be a huge selling point for SAGE. ~Bobby On 4/23/07, William Stein [EMAIL PROTECTED] wrote: On 4/23/07, Timothy Clemans [EMAIL PROTECTED] wrote: What is the plan to support plotting of equations, especially ones like x^2 + y^2 == 1 which is y == +- sqrt(-x^2 + 1) and 6*x + 4*y == 9 which is y == -6/4*x + 3/2? I don't have a good plan yet. Thought out suggestions for an implementation strategy are welcome. Please email the list. This will be after sage-2.5 is released though. 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: plotting equations
On 4/23/07, Robert Bradshaw [EMAIL PROTECTED] wrote: This can't always be done in general, and even if it can it's usually really ugly. For example, sin(sin(y) + y) = x^5 - x + 1. There are other algorithms to do this kind of implicit plotting. Maybe we should enumerate some.For example, there's this obvious one for plotting F(x,y) == 0 on some rectangle R. (1) Determine if F is a polynomial in either x or y. If not, either (a) give up, or (b) somehow find a polynomial approximation to F in x using Taylor series. Assume without loss that F is a polynomial in x (with coefficients that are arbitrary functions of y). (2) For each of a slightly randomly chosen list of sample points p_i in the y direction, compute the polynomial F(x,p_i) numerically. Then use the (very fast GSL) numerical polynomial solver to compute the double precision roots of the polynomial F(x,p_i). (3) Use some sort of clever sorting method to order the solutions found in (2) along a curve. Then plot that curve. The input parameters to the plot routine would influence the number of sample points; also one could adaptively refine in step (2) depending on the nature of the solution to F(x,p_i)=0. Hopefully there is a paper about this somewhere, which explains the subtleties I'm missing. 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: sage-2.5.alpha0
Seems to build fine in 40 minutes on a dual core Pentium-D 32 bit 3.2 GHz with Fedora Core (no idea what version - if someone tells me how to check, I will). There were plenty of compiler warnings including ones about variables used uninitialised, incorrect C++ compiler directives used and the like, but nothing fatal apparently. The tests seem to run fine except for the ones Martin is working on. There's also a sprinkling of stuff like the following, which probably aren't failures: sage -t devel/sage-main/sage/geometry/lattice_polytope.py [Errno 39] Directory not empty: '/maths/workshop/masfaw/.sage//tmp/25604/' sage -t devel/sage-main/sage/libs/cf/__init__.py (skipping) -- nodoctest.py file in directory sage -t devel/sage-main/sage/libs/cf/cf.pyx (skipping) -- nodoctest.py file in directory sage -t devel/sage-main/sage/libs/cf/nodoctest.py (skipping) -- nodoctest.py file in directory s sage -t devel/sage-main/sage/matrix/constructor.py 3 [1.0 s] Bill. --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: sqlite
Hello, uncommenting line 306 307 in Makefile.in fixes it for me: #sqlite3.c: target_source $(TOP)/tool/mksqlite3c.tcl # tclsh $(TOP)/tool/mksqlite3c.tcl sqlite has been build successfully, but I am not sure if there will be problems down the road. Once I am done and run all the tests I can give you an update. I did not test this on platforms that are not cygwin, yet. Cheers, Michael --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: sage-2.5.alpha0
On 4/23/07, Bill Hart [EMAIL PROTECTED] wrote: Seems to build fine in 40 minutes on a dual core Pentium-D 32 bit 3.2 GHz with Fedora Core (no idea what version - if someone tells me how to check, I will). No clue. Thanks. There were plenty of compiler warnings including ones about variables used uninitialised, incorrect C++ compiler directives used and the like, but nothing fatal apparently. That's entirely normal with SAGE -- most of the warnings are with the constituent components of SAGE... The tests seem to run fine except for the ones Martin is working on. There's also a sprinkling of stuff like the following, which probably aren't failures: sage -t devel/sage-main/sage/geometry/lattice_polytope.py [Errno 39] Directory not empty: '/maths/workshop/masfaw/.sage//tmp/25604/' This is a serious problem. What is worse is that it doesn't happen on my Debian or OS X systems. I'll probably have to install Fedore core in a virtual machine to try to get to the bottom of this, unless somebody else can figure it out first. sage -t devel/sage-main/sage/libs/cf/__init__.py (skipping) -- nodoctest.py file in directory sage -t devel/sage-main/sage/libs/cf/cf.pyx (skipping) -- nodoctest.py file in directory sage -t devel/sage-main/sage/libs/cf/nodoctest.py (skipping) -- nodoctest.py file in directory s That's fine -- it means that doctesting is turned off for the cf package. (Note that cf is slated to be removed entirely from sage-2.5.) sage -t devel/sage-main/sage/matrix/constructor.py 3 [1.0 s] Bill. Thanks. 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: sage-2.5.alpha0
William Stein wrote: Hi, I've posted a preliminary SAGE-2.5.alpha0 tarball here: /home/was/sage2.5 Linux paix.jaapspies.nl 2.6.20-1.2307.fc5smp #1 SMP Sun Mar 18 21:02:16 EDT 2007 i686 i686 i386 GNU/Linux real74m15.263s user60m38.879s sys 9m37.326s To install gap, gp, singular, etc., scripts in a standard bin directory, start sage and type e.g., install_scripts('/usr/local/bin') at the command prompt. SAGE build/upgrade complete! [EMAIL PROTECTED] sage-2.5.alpha0]$ The following tests failed: sage -t devel/sage-main/sage/rings/multi_polynomial_libsingular.pyx Total time for all tests: 1384.6 seconds [EMAIL PROTECTED] sage-2.5.alpha0]$ Jaap Last lines of failing test: Exception raised: Traceback (most recent call last): File /home/jaap/downloads/sage-2.5.alpha0/local/lib/python2.5/doctest.py, line 1212, in __run compileflags, 1) in test.globs File doctest __main__.example_55[3], line 1, in module from sage.rings.multi_polynomial_libsingular import MPolynomialRing_libsingular###line 2154: sage: from sage.rings.multi_polynomial_libsingular import MPolynomialRing_libsingular ImportError: No module named multi_polynomial_libsingular ** File multi_polynomial_libsingular.pyx, line 2155: sage: Q.x,y,z=MPolynomialRing_libsingular(QQ,3) Exception raised: Traceback (most recent call last): File /home/jaap/downloads/sage-2.5.alpha0/local/lib/python2.5/doctest.py, line 1212, in __run compileflags, 1) in test.globs File doctest __main__.example_55[4], line 1, in module Q=MPolynomialRing_libsingular(QQ,Integer(3),names=('x', 'y', 'z')); (x, y, z,) = Q.gens()###line 2155: sage: Q.x,y,z=MPolynomialRing_libsingular(QQ,3) NameError: name 'MPolynomialRing_libsingular' is not defined ** File multi_polynomial_libsingular.pyx, line 2156: sage: P.x,y,z=MPolynomialRing_libsingular(QQ,3) Exception raised: Traceback (most recent call last): File /home/jaap/downloads/sage-2.5.alpha0/local/lib/python2.5/doctest.py, line 1212, in __run compileflags, 1) in test.globs File doctest __main__.example_55[5], line 1, in module P=MPolynomialRing_libsingular(QQ,Integer(3),names=('x', 'y', 'z')); (x, y, z,) = P.gens()###line 2156: sage: P.x,y,z=MPolynomialRing_libsingular(QQ,3) NameError: name 'MPolynomialRing_libsingular' is not defined ** File multi_polynomial_libsingular.pyx, line 2157: sage: P(0).sub_m_mul_q(P(0),P(1)) Exception raised: Traceback (most recent call last): File /home/jaap/downloads/sage-2.5.alpha0/local/lib/python2.5/doctest.py, line 1212, in __run compileflags, 1) in test.globs File doctest __main__.example_55[6], line 1, in module P(Integer(0)).sub_m_mul_q(P(Integer(0)),P(Integer(1)))###line 2157: sage: P(0).sub_m_mul_q(P(0),P(1)) AttributeError: 'SymbolicConstant' object has no attribute 'sub_m_mul_q' ** File multi_polynomial_libsingular.pyx, line 2159: sage: x.sub_m_mul_q(Q.gen(1),Q.gen(2)) Exception raised: Traceback (most recent call last): File /home/jaap/downloads/sage-2.5.alpha0/local/lib/python2.5/doctest.py, line 1212, in __run compileflags, 1) in test.globs File doctest __main__.example_55[7], line 1, in module x.sub_m_mul_q(Q.gen(Integer(1)),Q.gen(Integer(2)))###line 2159: sage: x.sub_m_mul_q(Q.gen(1),Q.gen(2)) AttributeError: 'SymbolicVariable' object has no attribute 'sub_m_mul_q' ** File multi_polynomial_libsingular.pyx, line 2187: sage: from sage.rings.multi_polynomial_libsingular import MPolynomialRing_libsingular Exception raised: Traceback (most recent call last): File /home/jaap/downloads/sage-2.5.alpha0/local/lib/python2.5/doctest.py, line 1212, in __run compileflags, 1) in test.globs File doctest __main__.example_56[0], line 1, in module from sage.rings.multi_polynomial_libsingular import MPolynomialRing_libsingular###line 2187: sage: from sage.rings.multi_polynomial_libsingular import MPolynomialRing_libsingular ImportError: No module named multi_polynomial_libsingular ** File multi_polynomial_libsingular.pyx, line 2188: sage: P.x,y,z=MPolynomialRing_libsingular(QQ,3) Exception raised: Traceback (most recent call last): File /home/jaap/downloads/sage-2.5.alpha0/local/lib/python2.5/doctest.py, line 1212, in __run compileflags, 1) in test.globs File doctest __main__.example_56[1], line 1, in module
[sage-devel] 2 notebook bugs
Hi there, I've noticed 2 problems with tne notebook: -- When running sage in notebook mode from a directory other than SAGE_ROOT (btw, I'm glad I can finally do this), SAGE reads/writes my worksheets in $CURR_DIR/sage_notebook. For example, iI'm running SAGE from: {{{ /home/dfdeshom/custom/sage/devel/sage-main }}} Running sage in notebook mode, I read this on top of the page: {{{ SAGE Notebook running from /home/dfdeshom/custom/sage/devel/sage-main/ sage_notebook. }}} And in fact, a directory is created and my worksheet is there. Is there any way to prevent this? Maybe there should be a NOTEBOOK_DIR variable set so that every worksheet created is forced to live in SAGE_ROOT/sage_notebook? -- When running SAGE from $SAGE_ROOT, every time I create a new worksheet, it is created in GAP mode (a new feature in 2.4.2, I think). This does not happen when I run it from a non-standard directory. How do I get out of this mode? On a related note, how is GAP mode implemented in the notebook? I've been dreaming of writing Maple programs via the notebook since Maple's own worksheet mode gets in my way (es) didier --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: 2 notebook bugs
On 4/23/07, didier deshommes [EMAIL PROTECTED] wrote: Hi there, I've noticed 2 problems with tne notebook: ... -- When running SAGE from $SAGE_ROOT, every time I create a new worksheet, it is created in GAP mode (a new feature in 2.4.2, I think). This does not happen when I run it from a non-standard directory. How do I get out of this mode? On a related note, how is GAP mode implemented in the notebook? I've Is notebook('gap', system='gap') what you are looking for? been dreaming of writing Maple programs via the notebook since Maple's own worksheet mode gets in my way (es) didier --~--~-~--~~~---~--~~ 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---
[sage-devel] Re: 2 notebook bugs
On 4/23/07, didier deshommes [EMAIL PROTECTED] wrote: Hi there, I've noticed 2 problems with tne notebook: These are both design decisions rather than bugs. -- When running sage in notebook mode from a directory other than SAGE_ROOT (btw, I'm glad I can finally do this), One could run the notebook from any directory ever since the notebook was first released. SAGE reads/writes my worksheets in $CURR_DIR/sage_notebook. That's the design. If you type sage -notebook or type the notebook command but don't give a directory name, then the default notebook sage_notebook in the current directory is created and run. The same is true for the wiki (e.g., type wiki() to run a wiki from the current directory). For example, iI'm running SAGE from: {{{ /home/dfdeshom/custom/sage/devel/sage-main }}} Running sage in notebook mode, I read this on top of the page: {{{ SAGE Notebook running from /home/dfdeshom/custom/sage/devel/sage-main/ sage_notebook. }}} And in fact, a directory is created and my worksheet is there. Is there any way to prevent this? Maybe there should be a NOTEBOOK_DIR variable set so that every worksheet created is forced to live in SAGE_ROOT/sage_notebook? How do you start the notebook? Do you type notebook() from in SAGE or do you type sage -notebook on the command line? If you start the notebook from the command line, you might just create a little shell script that cd's to SAGE_ROOT and then runs sage -notebook: cd /home/dfdeshom/custom/sage/ ./sage -notebook -- When running SAGE from $SAGE_ROOT, every time I create a new worksheet, it is created in GAP mode (a new feature in 2.4.2, I think). The mode thing has been in SAGE since when the notebook was introduced. But the interface to use it is sucks, as you've discovered. I'm amazed I haven't improved it yet, but I've been so busy with other things. This does not happen when I run it from a non-standard directory. How do I get out of this mode? From in SAGE do this: sage: notebook(system=sage) At some point you must have typed notebook(system=gap) which sets that copy of the notebook to create GAP worksheets by default. You can also do notebook(system=maple) so that SAGE will create only maple worksheets by default. Existing worksheets in the notebook aren't affected -- just new ones use the given system (and always will in the future). This is actually a pretty cool feature; my impression is that a lot of people use SAGE mainly for this feature. On a related note, how is GAP mode implemented in the notebook? I've been dreaming of writing Maple programs via the notebook since Maple's own worksheet mode gets in my way (es) Just try notebook(system=maple). Actually anyone can easily make modes for anything -- if you start sage after typing notebook(system=foo), then all input cells get passed to foo.eval(...) and the result gets displayed. That's it. So if you add a foo object with an eval method, you get the option of a foo mode.E.g., Bobby Moretti easily made a jsmath mode this way; in fact, just try notebook(system=jsmath) to get jsmath notebooks. You can always go from one mode to another in a given worksheet by putting %modename at the top. 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://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~--~~~~--~~--~--~---