Connect with users of Wolfram technologies to learn, solve problems and share ideas
Mark as an Answer
4 Total Likes
Follow this post
Share this post:
How trap wrong definite integrals from discontinuous functions
Stephen Fulling, Texas A&M University
10 years ago
The Wolfram blog by Oleksandr Pavlyk:
Mathematica and the Fundamental Theorem of Calculus
says that "of course" Mathematica's definite integral algorithms do not make the mistake clearly demonstrated by the attached file igdemo.nb . The last two lines in the calculation should be identical: one gives 0 and the other alpha. The 4 lines above those should also be identical; there is a 3 to 1 vote. The problem comes from the ambiguity in the choice of branch of an inverse trig function appearing in the antiderivative. I have a very large calculation full of similar integrals. How can I tell which results are correct and which are nonsense? By the way, I beg to differ with the terminology in the blog. A correct antiderivative of a true function is ALWAYS continuous. If the alleged antiderivative has a jump discontinuity, its derivative is not the original integrand. The derivative is the integrand plus a Dirac delta function (if distributions are supported) or Undefined (if they are not). Is any progress being made toward handling this situation properly in Mma?
Itai Seggev, WOLFRAM
10 years ago
It's perfectly standard in the context of Lebesgue intergration to refer to the "almost everywhere" antiderivative as the antiderivative. For an absolutely continuous integrand, the antiderivative is everywhere differentiable (just because an antiderivative is continuous does not mean it is everywhere differentiable), that derivative equals the integrand everywhere, and we reproduce the familiar results of Riemann integration. For less continuous functions, derivative of the antiderivative and the integrand will agree in regions where the integrand is absolutely continuous, and the antiderivative will not be differentiable elsewhere.
As for the substance of your complaint, I think it is a sad fact that all software packages have bugs. One way of validating the integrals is to use NIntegrate, substituting in random values for free parameters, and comparing against the numericized result for integrate. Hardly perfect, but catches a lot issues.
Reply to this discussion
in reply to
Community posts can be styled and formatted using the
Tag limit exceeded
Note: Only the first five people you tag will receive an email notification; the other tagged names will appear as links to their profiles.
Add a file to this post
Follow this discussion
Be respectful. Review our
to understand your role and responsibilities.
Wolfram|Alpha Notebook Edition
Volume & Site Licensing
Enterprise Private Cloud
Service Plans Benefits
Wolfram Language Documentation
Wolfram Language Introductory Book
Get Started with Wolfram
Fast Introduction for Programmers
Fast Introduction for Math Students
Webinars & Training
Connected Devices Project
Wolfram Data Drop
Wolfram + Raspberry Pi
. All rights reserved.
Learn how »