Can you open issues for all of these, so that we don't forget about them?

Aaron Meurer

On Wed, Apr 25, 2012 at 6:08 PM, Kjetil brinchmann Halvorsen
<[email protected]> wrote:
> And here is one example that leads to an internal error:
>
> In [50]: summation( (-1)**k * binomial(2*n,k)**2, (k,0,oo))
> ---------------------------------------------------------------------------
> NameError                                 Traceback (most recent call last)
> /home/kjetil/py/sympy/sympy/sympy/<ipython-input-50-ba135c6f6f06> in
> <module>()
> ----> 1 summation( (-1)**k * binomial(2*n,k)**2, (k,0,oo))
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/concrete/summations.pyc in
> summation(f, *symbols, **kwargs)
>     307
>     308     """
> --> 309     return Sum(f, *symbols, **kwargs).doit(deep=False)
>     310
>     311 def telescopic_direct(L, R, n, limits):
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/concrete/summations.pyc in
> doit(self, **hints)
>     139                 a, b = b, a
>     140
> --> 141             f = eval_sum(f, (i, a, b))
>     142             if f is None:
>     143                 return self
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/concrete/summations.pyc in
> eval_sum(f, limits)
>     389     # this can save time when b-a is big.
>
>     390     # We should try to transform to partial fractions
>
> --> 391     value = eval_sum_symbolic(f.expand(), (i, a, b))
>     392     if value is not None:
>     393         return value
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/concrete/summations.pyc in
> eval_sum_symbolic(f, limits)
>     475             return r
>     476
> --> 477     return eval_sum_hyper(f, (i, a, b))
>     478
>     479 def _eval_sum_hyper(f, i, a):
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/concrete/summations.pyc in
> eval_sum_hyper(f, (i, a, b))
>     558
>     559     # Now b == oo, a != -oo
>
> --> 560     res = _eval_sum_hyper(f, i, a)
>     561     if res is not None:
>     562         return Piecewise(res, (Sum(f, (i, a, b)), True))
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/concrete/summations.pyc in
> _eval_sum_hyper(f, i, a)
>     523     h = hyper(ap, bq, x)
>     524
> --> 525     return f.subs(i, 0)*hyperexpand(h), h.convergence_statement
>     526
>     527 def eval_sum_hyper(f, (i, a, b)):
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/simplify/hyperexpand.pyc in
> hyperexpand(f, allow_hyper, rewrite)
>    2445         if not r.has(nan, zoo, oo, -oo):
>    2446             return r
> -> 2447     return f.replace(hyper, do_replace).replace(meijerg, do_meijer)
>    2448
>    2449 from sympy.polys.polytools import Poly
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/core/basic.pyc in replace(self,
> query, value, map)
>    1315                     return None
>    1316
> -> 1317         result = rec_replace(self)
>    1318
>    1319         if result is None:
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/core/basic.pyc in rec_replace(expr)
>    1306
>    1307                 if result:
> -> 1308                     value = _value(expr, result)
>    1309
>    1310                     if map:
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/core/basic.pyc in <lambda>(expr,
> result)
>    1263                 _value = lambda expr, result: value(*expr.args)
>    1264             elif callable(value):
> -> 1265                 _value = lambda expr, result: value(*expr.args)
>    1266             else:
>    1267                 raise TypeError("given a type, replace() expects
> another type or a callable")
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/simplify/hyperexpand.pyc in
> do_replace(ap, bq, z)
>    2434
>    2435     def do_replace(ap, bq, z):
> -> 2436         r = _hyperexpand(IndexPair(ap, bq), z, rewrite=rewrite)
>    2437         if r is None:
>    2438             return hyper(ap, bq, z)
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/simplify/hyperexpand.pyc in
> _hyperexpand(ip, z, ops0, z0, premult, prem, rewrite)
>    1996     if unpolarify(z) in [1, -1] and (len(nip.ap), len(nip.bq)) ==
> (2, 1):
>    1997         f = build_hypergeometric_formula(nip)
> -> 1998         r = carryout_plan(f, ops).replace(hyper,
> hyperexpand_special)
>    1999         if not r.has(hyper):
>    2000             return r + p
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/core/basic.pyc in replace(self,
> query, value, map)
>    1315                     return None
>    1316
> -> 1317         result = rec_replace(self)
>    1318
>    1319         if result is None:
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/core/basic.pyc in rec_replace(expr)
>    1306
>    1307                 if result:
> -> 1308                     value = _value(expr, result)
>    1309
>    1310                     if map:
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/core/basic.pyc in <lambda>(expr,
> result)
>    1263                 _value = lambda expr, result: value(*expr.args)
>    1264             elif callable(value):
> -> 1265                 _value = lambda expr, result: value(*expr.args)
>    1266             else:
>    1267                 raise TypeError("given a type, replace() expects
> another type or a callable")
>
> /home/kjetil/py/sympy/sympy/sympy/sympy/simplify/hyperexpand.pyc in
> hyperexpand_special(ap, bq, z)
>    1911             if b.is_integer and b < 0:
>    1912                 return 2*cos(pi*b/2)*gamma(-b)*gamma(b - a + 1) \
> -> 1913                        /gamma(-b/2)/gamma(b/2 - a + 1)
>    1914             else:
>    1915                 return gamma(b/2 + 1)*gamma(b - a + 1) \
>
> NameError: global name 'pi' is not defined
>
> Kjetil
>
>
> --
> "If you want a picture of the future - imagine a boot stamping on the human
> face - forever."
>
> George Orwell (1984)
>
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" 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/sympy?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" 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/sympy?hl=en.

Reply via email to