Hello, while working on a ticket I encountered different behaviour of python sum in Sage regarding whether the sum (over a symbolic expression applied to a range) was given on the command line vs. in Sage-lib (python file) within a function definition.
Specifically, applying this one-line patch on top of develop: diff --git a/src/sage/rings/arith.py b/src/sage/rings/arith.py --- a/src/sage/rings/arith.py +++ b/src/sage/rings/arith.py @@ -5336,6 +5336,7 @@ def subfactorial(n): - Jaap Spies (2007-01-23) """ + from sage.functions.other import factorial return factorial(n)*sum(((-1)**k)/factorial(k) for k in range(n+1)) will show on the command line: sage: subfactorial(8) -120960 which is wrong but when I define the same function there: sage: from sage.functions.other import factorial sage: def subf(n): return factorial(n)*sum(((-1)**k)/factorial(k) for k in range(n+1)) ....: sage: subf(8) 14833 This effect only happens with Python sum/prod. So, what difference does using Python sum/prod on the command line make vs. in a py file? Please help, -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.