|
Size: 5556
Comment:
|
Size: 6091
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 2: | Line 2: |
| Some of these are great. Some are probably bad and should not be implemented. Some are easy, and some are very difficult. | |
| Line 3: | Line 4: |
| Some of these are great. Some are probably bad and should not be implemented. Some are easy, and some are very difficult. |
* See the more structured project list (somebody should move that list here): |
| Line 6: | Line 6: |
| * See the more structured project list: |
. http://modular.math.washington.edu/sage/projects/ * todo: |
| Line 9: | Line 9: |
| * todo: Jones database -- added Richards (?) as co-author in documentation, etc. |
. Jones database -- added Richards (?) as co-author in documentation, etc. * todo: |
| Line 12: | Line 12: |
| * todo: dvipng -- better error about dependency -- don't build if already have. |
. dvipng -- better error about dependency . -- don't build if already have. * feature request: make an upgrade_packages() funtion that upgrades |
| Line 16: | Line 16: |
| * feature request: make an upgrade_packages() funtion that upgrades all installed optional packages to the latest versions. This would, in fact, be very easy to write with just a little Python code using the install_package and optional_packages() functions. |
. all installed optional packages to the latest versions. This would, in fact, be very easy to write with just a little Python code using the install_package and optional_packages() functions. * todo: sage build *still* doesn't check that you have flex/bison installed. Argh! Why? |
| Line 21: | Line 19: |
| * todo: sage build *still* doesn't check that you have flex/bison installed. Argh! Why? | * It would be nice to be able to do this. Need to implement more general division algorithm?? iterated poly rings: {{{ # Worksheet '_scratch_' (2006-07-28 at 12:14) R.<x> = PolynomialRing(QQ) S.<y> = PolynomialRing(R) T.<z> = S.quotient(y^3-3) z*z*z Traceback (most recent call last): TypeError: unable to find a common parent for 1 (parent: Fraction Field of Univariate Polynomial Ring in x over Rational Field) and 1 (parent: Univariate Polynomial Ring in y over Univariate Polynomial Ring in x over Rati... }}} |
| Line 33: | Line 43: |
| * {{{e^(I*pi)}}} is perhaps lame. | * {{{e^(I*pi)}}} is perhaps lame. |
| Line 36: | Line 46: |
| Line 43: | Line 54: |
| * question: is this good or bad? maybe I don't understand the rigor | |
| Line 44: | Line 56: |
| * question: is this good or bad? maybe I don't understand the rigor of MPFR well. |
. of MPFR well. |
| Line 57: | Line 68: |
| * (reported by Justin Walker -- 2006-06-07) | |
| Line 58: | Line 70: |
* (reported by Justin Walker -- 2006-06-07) |
|
| Line 64: | Line 74: |
| Line 68: | Line 77: |
| there is no knowledge of any user's home directory in the | there is no knowledge of any user's home directory in the |
| Line 70: | Line 79: |
| the root user's /root directory. | the root user's /root directory. |
| Line 73: | Line 81: |
| Line 76: | Line 83: |
This is a tricky problem, because some small part of the install process requires starting SAGE, but starting SAGE requires having some startup files in $HOME. But this is definitely a bug, and |
This is a tricky problem, because some small part of the install process requires starting SAGE, but starting SAGE requires having some startup files in $HOME. But this is definitely a bug, and |
| Line 81: | Line 87: |
| Line 86: | Line 91: |
| Line 90: | Line 94: |
That seems like a very reasonable idea. |
That seems like a very reasonable idea. |
| Line 95: | Line 97: |
| Line 99: | Line 100: |
| * It should be very easy to change properties of a graphics object, e.g., | |
| Line 100: | Line 102: |
* It should be very easy to change properties of a graphics object, e.g., change the rgbcolor without recomputing all the points! * 2006-05-21: Error when doing "sage -i " with abs path; Workaround: Just go to the correct directory and type "sage -i gap_packages-4.4.7_2.spkg" to test it out. |
. change the rgbcolor without recomputing all the points! * 2006-05-21: Error when doing "sage -i " with abs path; Workaround: Just go to the correct directory and type "sage -i gap_packages-4.4.7_2.spkg" to test it out. |
| Line 112: | Line 106: |
| The error message for "sage -bf" sucks. | |
| Line 114: | Line 107: |
| . The error message for "sage -bf" sucks. | |
| Line 115: | Line 109: |
| tracebacks include path of place where file was built?? this is hard coded? how to fix??? Maybe just do a substituion when doing the display of docs in sage/server/support.py |
|
| Line 119: | Line 110: |
| . tracebacks include path of place where file was built?? this is hard coded? how to fix??? Maybe just do a substituion when doing the display of docs in sage/server/support.py | |
| Line 122: | Line 114: |
| after running "make test". Very annoying. | |
| Line 124: | Line 115: |
| . after running "make test". Very annoying. | |
| Line 125: | Line 117: |
| by rational reconstruction; this should be "easy" to fix by doing something much better (e.g., using GMP). Good example: |
. by rational reconstruction; this should be "easy" to fix by doing something much better (e.g., using GMP). Good example: |
| Line 132: | Line 123: |
| * 2006-04: Should get better error message and caching, etc: | |
| Line 133: | Line 125: |
| * 2006-04: Should get better error message and caching, etc: |
|
| Line 147: | Line 137: |
| * This is a good example to put in the docs. | |
| Line 148: | Line 139: |
| * This is a good example to put in the docs. | |
| Line 151: | Line 141: |
Ideas to Implement in SAGE
Some of these are great. Some are probably bad and should not be implemented. Some are easy, and some are very difficult.
* See the more structured project list (somebody should move that list here):
* todo:
- Jones database -- added Richards (?) as co-author in documentation, etc.
* todo:
- dvipng -- better error about dependency
- -- don't build if already have.
* feature request: make an upgrade_packages() funtion that upgrades
- all installed optional packages to the latest versions. This would, in fact, be very easy to write with just a little Python code using the install_package and optional_packages() functions.
* todo: sage build *still* doesn't check that you have flex/bison installed. Argh! Why?
* It would be nice to be able to do this. Need to implement more general division algorithm?? iterated poly rings:
# Worksheet '_scratch_' (2006-07-28 at 12:14) R.<x> = PolynomialRing(QQ) S.<y> = PolynomialRing(R) T.<z> = S.quotient(y^3-3) z*z*z Traceback (most recent call last): TypeError: unable to find a common parent for 1 (parent: Fraction Field of Univariate Polynomial Ring in x over Rational Field) and 1 (parent: Univariate Polynomial Ring in y over Univariate Polynomial Ring in x over Rati...
* feature request: paste into notebook should resize box.
* possible change: sage_eval -- should it only take strings as input?!
* feature request: showing sourcecode of functions in pyrex files. (!!)
* feature request: add imshow functionality to plot
* in online simple sage calculator "? help" doesn't work.
* e^(I*pi) is perhaps lame.
* Macaulay2 source package:
-- it still doesn't detect the SAGE readline,
so you have to have readline installed system-wide.
apt-get install libreadline-dev
-- it depends on etags
apt-get install exuberant-ctags* question: is this good or bad? maybe I don't understand the rigor
- of MPFR well.
sage: R = RealField(10, rnd='RNDD') sage: p = R(pi) sage: p 3.1406 sage: p.str(2) '11.00100100' sage: q = p.sin() sage: q.str(2) '0.00000000001111110110'
* (reported by Justin Walker -- 2006-06-07)
> The install worked, but a bunch of the "per-user" stuff got dropped > into his home directory, presumably as expected, but owned by root, > so he can't modify the files. I'm a little puzzled about how that happened. Was he installing SAGE as user root but with his HOME environment variable set to his home directory? If you install SAGE as root, then there is no knowledge of any user's home directory in the environment. At worst, "per-user" stuff will be copied to the root user's /root directory. Probably the user wasn't logged in as root, but used sudo: was@sha:~$ sudo echo $HOME /home/was This is a tricky problem, because some small part of the install process requires starting SAGE, but starting SAGE requires having some startup files in $HOME. But this is definitely a bug, and I'll add it to the list. (from justin) Thanks! It's easy to recover from, modulo figuring out what to change, but it would be good to fix, if possible. One possible fix is to force $HOME to a known value (/dev/null? :-}) and not set up the HOME files in this case. > Does SAGE do this automatically when it starts up and discovers that > the environment it expects (the ~/.sage stuff) is either out of date > or non-existent? That seems like a very reasonable idea. > I suppose there are some that run as root by default, but that > strikes me as wrong-headed, and unsupported :-} SAGE could print a message on any startup as root warning the user that running SAGE as root is different. I like this idea.
* It should be very easy to change properties of a graphics object, e.g.,
- change the rgbcolor without recomputing all the points!
* 2006-05-21: Error when doing "sage -i " with abs path; Workaround: Just go to the correct directory and type "sage -i gap_packages-4.4.7_2.spkg" to test it out.
* 2006-05-16:
- The error message for "sage -bf" sucks.
* 2006-05-15:
- tracebacks include path of place where file was built?? this is hard coded? how to fix??? Maybe just do a substituion when doing the display of docs in sage/server/support.py
* 2006-05-08: sajax: prompt doesn't change when change mode.
* 2006-05-02: maxout.gnuplot randomly appears in my home directory
- after running "make test". Very annoying.
* in some cases echelon forms with big entries -- totally dominated
- by rational reconstruction; this should be "easy" to fix by doing something much better (e.g., using GMP). Good example:
sage: set_verbose(2)
sage: victor_miller_basis(200,50)* 2006-04: Should get better error message and caching, etc:
sage: ... what is F??? sage: time F.tropical_basis(check = False) /bin/sh: line 1: 3699 Aborted gfan_tropicalbasis 2>/dev/null CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s Wall time: 3.03 _30 = [] sage: time F.tropical_basis() CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s Wall time: 0.00 _31 = []
* This is a good example to put in the docs.
The toric ideal of the twisted cubic in projective 3 space: sage: R.<a,b,c,d> = PolynomialRing(QQ, 4) sage: I = ideal(b^2-a*c, c^2-b*d, a*d-b*c) sage: F = I.groebner_fan(); F Groebner fan of the ideal: Ideal (c^2 - b*d, -1*b*c + a*d, b^2 - a*c) of Polynomial Ring in a, b, c, d over Rational Field sage: F.reduced_groebner_bases () [[-1*c^2 + b*d, -1*b*c + a*d, -1*b^2 + a*c], [c^2 - b*d, -1*b*c + a*d, -1*b^2 + a*c], [c^2 - b*d, b*c - a*d, -1*b^2 + a*c, -1*b^3 + a^2*d], [c^2 - b*d, b*c - a*d, b^3 - a^2*d, -1*b^2 + a*c], [c^2 - b*d, b*c - a*d, b^2 - a*c], [-1*c^2 + b*d, b^2 - a*c, -1*b*c + a*d], [-1*c^2 + b*d, b*c - a*d, b^2 - a*c, -1*c^3 + a*d^2], [c^3 - a*d^2, -1*c^2 + b*d, b*c - a*d, b^2 - a*c]] sage: F.fvector() (1, 8, 8)
