MathGroup Archive 2005

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

Search the Archive

Re: Mathematica goes Bad

  • To: mathgroup at smc.vnet.net
  • Subject: [mg59464] Re: [mg59422] Mathematica goes Bad
  • From: Daniel Lichtblau <danl at wolfram.com>
  • Date: Wed, 10 Aug 2005 02:57:05 -0400 (EDT)
  • References: <200508090730.DAA19089@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Igor Touzov wrote:
> I am using Mathematica second year already, and found that each consequative 
> version cuts off something good from what mathematica used to be.
> 
> Contacting technical support only results in open ticket that never gets 
> closed.
> 
> Here some simple example you can run for youself:
> Timing[
> Limit[ (a ^2 k ^2 ArcTan[ ( (-a ^2 ) Cot[ [Theta]] - w y 
> Tan[ [Theta]] ) / (a  @ (a ^2 +  ((w - y) ) ^2 + y ^2 
> Tan[ [Theta]] ^2 ) )]
>  Sin[2  [Theta]] ) / (2 + 2 k ^2 Sin[ [Theta]] ^2 ),  [Theta] -> 0]] )
> 
> It takes less then 1 ms on version 5.0, while for version 5.2 it will take 
> forever (40.328 Second).

This Limit input will not parse to useful mathematical expression. Do 
you have it in Mathematica InputForm?


> Timing[
> Limit[ArcTan[ (a  ((a k - w + y) ) Cot[ [Theta]] + k y ^2 Tan[
>  [Theta]] ) / (y  @ (a ^2 +  ((w - y) ) ^2 + y ^2 Tan[ [Theta]] ^2 ) )],
> k ->  (+ [Infinity] ), Direction -> 1]] )
> 
> It takes 76.782 Second is version 5.0, 100.187 Second in version 5.1.1 and 
> 104.015 Second in version 5.2.
> 
> Not to mention it gives you some absurd results as well:
> 
> In version 5.0 computing following
> 
> {Limit[ArcTan[k ], k -> + [Infinity], Direction -> -1],
> Limit[ArcTan[k ], k -> + [Infinity], Direction -> 1]} results in accurate
> 
> {-(Pi/2), Pi/2}
> 
> while doing the same in version 5.2 gives you absurd {(Pi/2), Pi/2}.

I think this change was the correct decision. In essence we now override 
the Direction when the point we approach is an infinity. This is largely 
an acknowledgement that we do not support approaches to infinity except 
along directed rays from the origin.


> I could continue with list of examples that shows much more. But it only 
> proofs the fact that whoever makes these changes in old good mathematica 
> should be discharged. 

That would be me.


 > If some day I will get response from technical support
> that contains something meaningful I will post an update. Till then I would 
> advise every body not to trust in results you get.

I think it is safe to say that symbolic calculus is fraught with 
problematic areas where, for example, mistakes involving a combination 
of branch cuts and arithmetic with infinities can lead to erroneous 
results. I do not see any evidence of this sort of phenomenon in the 
example above, though. That was just a design decision. While you may 
think it was the wrong thing to do, it is not symptomatic of deep 
mathematical flaws.

I will note that by our metrics the number of open bugs in Limit dropped 
sharply between versions 4 and 5 of Mathematica (I am not going to 
quantify more closely than that).


Daniel Lichtblau
Wolfram Research


  • Prev by Date: Re: Mathematica goes Bad
  • Next by Date: Re: GoTo between different cell
  • Previous by thread: Re: Mathematica goes Bad
  • Next by thread: Re: Mathematica goes Bad