Skip to content

Commit 42901bc

Browse files
Release Managervbraun
Release Manager
authored andcommitted
Trac #19439: Corrections to infinities returned by mpmath
It seems in some cases the infinities returned from mpmath need to be changed by the function's `evalf()` in order to be correct: Before: {{{ sage: zeta(SR(1)) Infinity sage: zeta(SR(1.)) <--------- +infinity sage: type(zeta(SR(1))) <type 'sage.symbolic.expression.Expression'> sage: type(zeta(SR(1)).pyobject()) <class 'sage.rings.infinity.UnsignedInfinity'> sage: type(zeta(SR(1.))) <type 'sage.symbolic.expression.Expression'> sage: type(zeta(SR(1.)).pyobject()) <type 'sage.rings.real_mpfr.RealNumber'> }}} The ticket should result in: {{{ sage: zeta(SR(1)) Infinity sage: zeta(SR(1.)) Infinity sage: type(zeta(SR(1))) <type 'sage.symbolic.expression.Expression'> sage: type(zeta(SR(1)).pyobject()) <class 'sage.rings.infinity.UnsignedInfinity'> sage: type(zeta(SR(1.))) <type 'sage.symbolic.expression.Expression'> sage: type(zeta(SR(1.)).pyobject()) <class 'sage.rings.infinity.UnsignedInfinity'> }}} Ideally, fix other such cases too in this ticket. URL: https://trac.sagemath.org/19439 Reported by: rws Ticket author(s): Ralf Stephan Reviewer(s): Travis Scrimshaw
2 parents 6b9461b + 5d2d860 commit 42901bc

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

src/sage/functions/transcendental.py

+7
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,13 @@ def __init__(self):
123123
(zeta(pi)) + (zetaderiv(1, pi))*(-pi + x) + Order((pi - x)^2)
124124
sage: (zeta(x) * 1/(1 - exp(-x))).residue(x==2*pi*I)
125125
zeta(2*I*pi)
126+
127+
Check that the right infinities are returned (:trac:`19439`)::
128+
129+
sage: zeta(1.0)
130+
+infinity
131+
sage: zeta(SR(1.0))
132+
Infinity
126133
"""
127134
GinacFunction.__init__(self, "zeta")
128135

0 commit comments

Comments
 (0)