Hi > sage: limit((sin(2*x)/x)**(1+x), x=0) > --------------------------------------------------------------------------- > <type 'exceptions.TypeError'> Traceback (most recent call last)
BTW in SymPy: In [1]: from sympy.series.limits2 import compare, mrv, rewrite, mrv_leadterm, limit In [2]: limit((sin(2*x)/x)**(1+x), x, 0) Out[2]: 2 I am playing with the limit algorithm in SymPy, since we have made some changes in the core and it stopped working, because it relies heavily on the series facility. Some expression are quite difficult to check by hand, so I used to check them in Maple, but it would be better if I could check them in SAGE so I'd like to port the limit algorithm to SAGE as well, so that I can check more easily, where exactly the bug is. It shouldn't be difficult, the whole code is here: http://sympy.googlecode.com/svn/trunk/sympy/series/limits2.py and tests: http://sympy.googlecode.com/svn/trunk/sympy/series/tests/test_limit2.py However, I didn't figure out in the manuals how I can translate this from SymPy to SAGE: In [1]: e = x*y In [2]: isinstance(e, Mul) Out[2]: True In [3]: isinstance(e, exp) Out[3]: False In [4]: e = exp(y) In [5]: isinstance(e, exp) Out[5]: True In [6]: isinstance(e, Mul) Out[6]: False It must be something trivial. I would also need to access attributes, like this: In [1]: e = sign(x**2) In [2]: e[:] Out[2]: (x**2,) In [3]: e[0] Out[3]: x**2 In [4]: (x+y*z)[:] Out[4]: (x, y*z) In [5]: (y*z)[:] Out[5]: (y, z) In [6]: sin(y*z)[:] Out[6]: (y*z,) I would expect either this notation, or some .ops, or .args or something. The only thing that I found is sage: e = x*y*exp(z) sage: e.variables() (x, y, z) but that doesn't exactly do what I want: In [1]: e = x*y*exp(z) In [2]: e[:] Out[2]: (x, y, exp(z)) Besides this there shouldn't be a major problem. To motivate you why it is good for SAGE: besides having a better algorithm than Maxima has, the limit algorithm is very good at discovering bugs and thoroughly testing the underlying series facility. We always discovered many subtle bugs in SymPy using limits. Also it would be good for me to see all the differences between SAGE and SymPy so that we can try to converge more to the same interface. Ondrej --~--~---------~--~----~------------~-------~--~----~ 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/ -~----------~----~----~----~------~----~------~--~---