#9393: symbolic sum cannot handle python ints
-----------------------------+----------------------------------------------
Reporter: burcin | Owner: burcin
Type: defect | Status: positive_review
Priority: major | Milestone: sage-5.0
Component: symbolics | Keywords:
Work_issues: | Upstream: N/A
Reviewer: Burcin Erocal | Author: Michael Orlitzky
Merged: | Dependencies:
-----------------------------+----------------------------------------------
Changes (by burcin):
* status: needs_review => positive_review
* reviewer: => Burcin Erocal
* milestone: sage-4.8 => sage-5.0
Old description:
> Reported by Tobias Katz on sage-support:
>
> {{{
> sage: sum(x, x, 1r, 5r)
> ---------------------------------------------------------------------------
> AttributeError Traceback (most recent call
> last)
> .../<ipython console> in <module>()
> .../local/lib/python2.6/site-packages/sage/misc/functional.pyc in
> symbolic_sum(expression, *args, **kwds)
> 657 """
> 658 if hasattr(expression, 'sum'):
> --> 659 return expression.sum(*args, **kwds)
> 660 elif len(args) <= 1:
> 661 return sum(expression, *args)
>
> .../local/lib/python2.6/site-packages/sage/symbolic/expression.so in
> sage.symbolic.expression.Expression.sum
> (sage/symbolic/expression.cpp:28895)()
>
> .../local/lib/python2.6/site-packages/sage/calculus/calculus.pyc in
> symbolic_sum(expression, v, a, b, algorithm)
> 482
> 483 if algorithm == 'maxima':
> --> 484 sum = "'sum(%s, %s, %s, %s)" %
> tuple([repr(expr._maxima_()) for expr in (expression, v, a, b)])
> 485 try:
> 486 result = maxima.simplify_sum(sum)
>
> AttributeError: 'int' object has no attribute '_maxima_'
> }}}
New description:
Reported by Tobias Katz on sage-support:
{{{
sage: sum(x, x, 1r, 5r)
---------------------------------------------------------------------------
AttributeError Traceback (most recent call
last)
.../<ipython console> in <module>()
.../local/lib/python2.6/site-packages/sage/misc/functional.pyc in
symbolic_sum(expression, *args, **kwds)
657 """
658 if hasattr(expression, 'sum'):
--> 659 return expression.sum(*args, **kwds)
660 elif len(args) <= 1:
661 return sum(expression, *args)
.../local/lib/python2.6/site-packages/sage/symbolic/expression.so in
sage.symbolic.expression.Expression.sum
(sage/symbolic/expression.cpp:28895)()
.../local/lib/python2.6/site-packages/sage/calculus/calculus.pyc in
symbolic_sum(expression, v, a, b, algorithm)
482
483 if algorithm == 'maxima':
--> 484 sum = "'sum(%s, %s, %s, %s)" %
tuple([repr(expr._maxima_()) for expr in (expression, v, a, b)])
485 try:
486 result = maxima.simplify_sum(sum)
AttributeError: 'int' object has no attribute '_maxima_'
}}}
Apply attachment:sage-trac_9393.patch
--
Comment:
Looks good to me.
Thanks for looking into this.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9393#comment:3>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
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-trac?hl=en.