MathGroup Archive 2004

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: Help -- Weird integration behavior

  • To: mathgroup at
  • Subject: [mg49407] Re: [mg49390] Re: Help -- Weird integration behavior
  • From: Andrzej Kozlowski <akoz at>
  • Date: Sun, 18 Jul 2004 08:09:18 -0400 (EDT)
  • References: <> <cd8a3f$og0$> <>
  • Sender: owner-wri-mathgroup at

On 17 Jul 2004, at 19:38, Mike D wrote:

> *This message was transferred with a trial version of CommuniGate(tm) 
> Pro*
> Thanks so much!
> I had never heard of the "GenerateConditions" option on definite
> integrals before. After looking at the help, it makes a little sense
> that this is necessary for an integral with parameters. But was this
> option present in earlier versions of Mathematica?

On the surface the idea is very sensible, when you try to evaluate a 
definite integral Mathematica tries to give you conditions on the 
limits under which its answer is valid. In very simple cases it works 
well, here is an example form the Documentation"

Integrate[Exp[a*x], {x, 0, Infinity}]

If[Re[a] < 0, -(1/a), Integrate[E^(a*x),
    {x, 0, Infinity}, Assumptions -> Re[a] >= 0]]

This is correct and nice, but unfortunately the attempt to give this 
sort of answer is more complex cases is much too ambitious and tends to 
give answers which so extremely as to be unusable complicated but still 
usually not universally valid. In previous versions Mathematica only 
sometimes tried to return conditional answers and often was satisfied 
with returning answers which were valid only with certain assumptions 
on the parameters, without trying to explicitly state these conditions.

> I'm still a little bothered that I couldn't simply run an old notebook
> "as is" in a newer version of Mathematica -- more so that the program
> suggested that it was giving a valid answer ("0"), with no errors --
> if I had not had an old printout of the notebook, I would have thought
> I was going crazy.

This is just a consequence of trying to do something a lot more 
ambitious in Version 5 compared with the previous versions. Integrate 
was changed in various ways: it tries to return more "correct answers" 
for definite integrals, it performs more tests to check for 
singularities, it tries to simplify the integrand etc. This leads in 
some cases to different answers than those returned by older versions. 
In many cases the new answer are better but in quite a few cases they 
are worse. It is difficult to give an objective judgement on whether 
the new Integrate in version 5 is, on the whole, better or worse 
without performing some sort of controlled test. But on the whole I am 
pretty sure that the many changes made in version 5 are a foundation 
for further improvements that will make future versions much better 
than the previous ones. At the same time I remain unconvinced that the 
ambitious approach to definite integration (trying to return an answer 
together with full conditions under which it holds) will ever work well 
enough to justify the much increased complexity of answers and the time 
taken to reach them.

Andrzej Kozlowski
Chiba, Japan

  • Prev by Date: Re: Question about Export command
  • Next by Date: Return repeated values of a list
  • Previous by thread: Re: Help -- Weird integration behavior
  • Next by thread: Re: Help -- Weird integration behavior