I'm starting to become more functional in Mathcad, so I wanted to take the opportunity to look into known drawbacks, mathematically speaking, of CAS/computer math systems. For instance, one of the exercises we did in school involved "breaking" TI Derive by asking for the limit of a discontinuous function (at the point of discontinuity, of course). Another example would be p. 13 of this;


So basically, I'm hoping folks will contribute known problems with these kinds of apps, whether from their experience with a particular package or generalized problems inherent in computer algebra.

I myself am most concerned with Mathcad and Mathematica, but it would be awesome for people to talk about CAS/computer math in general and drawbacks of various systems (matlab et al) in particular.

  • $\begingroup$ I removed the tag computability. $\endgroup$ – user2468 Feb 26 '12 at 20:16
  • 1
    $\begingroup$ I imagine this question is a good candidate for being community wiki! $\endgroup$ – Harald Hanche-Olsen Feb 26 '12 at 20:19
  • 1
    $\begingroup$ IMO the scope of this question is too general. Limitations of numerical packages such as MATLAB are way different than limitations of symbolic packages such as Mathematica. $\endgroup$ – user2468 Feb 26 '12 at 20:21
  • $\begingroup$ @harald - Why thank you, kind sir! blush $\endgroup$ – Joe Stavitsky Feb 26 '12 at 20:27
  • $\begingroup$ Here's a relevant collection of issues: math.niu.edu/~rusin/known-math/99/calc_errors It's a bit old and some of the bugs mentioned may have been fixed by now, but nevertheless it never hurts to be cautious when doing mathematics with technology. $\endgroup$ – Ted Feb 26 '12 at 21:44

There are many other problems: branch cuts, zero-recognition, keeping track of domains of validity, etc. A good place to find such information is to browse the web pages of leading researchers, and conference proceedings (ISSAC,SYMSAC,Sigsam,Eurosam, etc). For example, see Richard Fateman's papers, e.g. his 33 page critique of Mathematica, and Why Computer Algebra Systems Can't Solve Simple Equations and Branch Cuts in Computer Algebra, etc.

  • 1
    $\begingroup$ re Mathematica... In my distant past as a philosophy major, I had occasion to review (okay, review some reviews) of "A new kind of science", Wolfram's doorstopper book in which he basically claims to have discovered recursion and the math behind Penrose tiles (name escapes me atm). Nice to see a "professional" confirm my opinion of the dude. I'm using Mathematica basically because it's got a relatively well-behaved connection to Mathcad and I found a portable version on teh interwebz. $\endgroup$ – Joe Stavitsky Feb 26 '12 at 20:42
  • 3
    $\begingroup$ My personal impression? Wolfram has a lot in common with the late unlamented Mr. Jobs - his ability to speak marketese overshadows his deficiencies as a scientist/engineer. $\endgroup$ – Joe Stavitsky Feb 26 '12 at 20:44

I only tried this on Mathematica 4, so I don't know if the same problem happens in more modern versions. If you ask Mathematica about $$ \int_0^\infty (1-e^{-x})^2/x^2 dx, $$ it tells you that the integral does not converge. But if you split the integral, it gives you

$$ \int_0^1 (1-e^{-x})^2/x^2 dx\simeq 0.645751, $$

$$ \int_1^\infty (1-e^{-x})^2/x^2 dx\simeq 0.740543 $$

  • $\begingroup$ Mathematica 6.0 doesn't complain about divergence, but delivers another strange result: Integrate[(1-Exp[-x])^2 / x^2, {x,0,Infinity}] returns (4 I) Pi + Log[4]. The real part $\ln 4$ agrees with the numerical values, but I wonder where that nonzero imaginary part came from! Got to try this with a newer version at work tomorrow... $\endgroup$ – Hans Lundmark Feb 26 '12 at 21:13
  • $\begingroup$ Alpha can do it wolframalpha.com/input/… $\endgroup$ – user2468 Feb 26 '12 at 21:14
  • $\begingroup$ Mathematica 8.0 returns Log[4]. $\endgroup$ – Hans Lundmark Feb 27 '12 at 8:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.