Re: Re: error with Sum and Infinity
- To: mathgroup at smc.vnet.net
- Subject: [mg102307] Re: [mg102301] Re: error with Sum and Infinity
- From: Daniel Lichtblau <danl at wolfram.com>
- Date: Wed, 5 Aug 2009 05:42:40 -0400 (EDT)
- References: <h56bq2$buv$1@smc.vnet.net> <200908040830.EAA26993@smc.vnet.net>
Richard Fateman wrote:
> You've gotten several of the standard work-arounds or excuses, which are
> really standard issue here.
>
> 1. Mathematica is doing the right thing; [by definition] so the mistake
> is yours.
The common variant is to claim that it's a feature and not a bug. That
tends to avoid placing blame one way or the other.
> 2. If you computed something else, different from what you wrote, you
> would get a different answer, but corresponding to what you expected.
>
> 3. How can you expect Mathematica to read your mind?
>
> Here's one more standard, (from me, anyway). Mathematica has a design
> problem.
>
> The underlying point is that Mathematica is conflating two concepts with
> the name Sum:
>
> A. A loop of finitely many terms evaluated in sequence and adding up
> the terms. and
>
> B. A symbolic calculation based on various combinatorial ideas, the
> calculus of finite differences, and other systematic simplifications
> that reduces a summation, either finite or infinite, into a result that
> does not have any summation notation in it. Like summing arithmetic
> progressions, geometric progressions, etc (and very advanced etc.).
Many here would agree with this diagnosis. We have endeavored to repair
it (see below).
> For this second concept to work, the summand must be something that can
> be suitably manipulated, typically starting as a single algebraic
> expression. A programming segment, or a pattern match that requires that
> each value of the index be fed into an evaluator will not, generally
> work with algorithms for indefinite or definite/infinite summation.
> Obviously you cannot feed an infinite number of index values into a
> function and sum up all the terms.
>
>
> A clean solution would be to separate these two concepts: a loop and a
> symbolic closed-form simplifier for a summation. Or for Mathematica to
> use the Sum form, but somehow allow you to indicate to the system that
> you want it evaluated as a loop or simplified to a closed form.
>
> RJF
>
This already exists, as of version 7. One can specify
Method->"Procedural". But it will not help for infinite or symbolic limits.
In[8]:= Sum[t[i], {i, 1, Infinity}, Method->"Procedural"]
Out[8]= 0
Possibly such cases should return unevaluated, with an error message.
Daniel Lichtblau
Wolfram Research
- References:
- Re: error with Sum and Infinity
- From: Richard Fateman <fateman@cs.berkeley.edu>
- Re: error with Sum and Infinity