Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: An independent integration test suite
Replies: 128   Last Post: Dec 8, 2013 3:21 PM

 Messages: [ Previous | Next ]
 clicliclic@freenet.de Posts: 1,245 Registered: 4/26/08
Re: An independent integration test suite
Posted: Apr 26, 2013 1:22 PM

Richard Fateman schrieb:
>
> I'm not sure what the relevance is of DERIVE's performance, since the
> program is neither supported nor distributed at this time, but the
> syntax looked almost identical to Macsyma (commercial, not supported
> or distributed) so I tried to run it through Macsyma 2.4.0

Yes, this must be largely to my own satisfaction, although there should
be other Derive users around still (the situation for Macsyma may be
similar). Judging from the activity on their website, Reduce also seems
to have very few users even though it is officially supported. For the
community of Sympy users and developers, however, results from this test
suite should be of considerable interest (is anybody there listening?).
After all, a serious bug in FriCAS has already been uncovered and
repaired (for versions > 1.2.0) in this way.

>
> [...]
>
> 1. I found expressions in the test suite of the form
>
> integrate(A,x) = B = C
>
> which do not parse properly since B=C makes sense in Macsyma
> if B and C are algebraic. It does not make sense in Macsyma
> to ask (A=B) = C since A=B is logical not algebraic.
>
> That is almost beside the point though. What is the test suite
> supposed to be used for? Testing the simplification of B=C?
> Is either answer, B or C supposed to be OK for the integration?
> Is one supposed to verify the answer by differentiating B?

Derive simplifies A = B = C to A = B AND B = C (as does Mathematica, I
believe). So this notation is adequate if equality is assumed to hold
only up to (piecewise) constants - in other words, to hold only after
differentiation. Unfortunately, in Derive, an expression A = B = C
cannot be differentiated (it is not simplified beyond DIF(A = B AND B =
C, x)), although I see no reason why this should be forbidden (what

>
> [...]
>
> Running through the examples, Macsyma paused in a number of places
> to ask (for example) is a*b pos or neg; is a nonzero; is x >0, is
> n+1 nonzero..
>
> So I added assumptions such as assume(a>0, b>0, x>0 n>0) and ran the
> test again.
>
> The test went through without any burps that I noticed except for
>
> integrate(asin(x/a)^(3/2)/sqrt(a^2-x^2),x)
> which was not integrated. This appears to be the same as the first
> clumsily restated expression in the original posting.

I suppose you are referring here to my entries for Timofeev's examples
47 and 64 (as taken from my current file):

INT(x/SQRT(a^4 - x^4), x) = 1/2*ATAN(x^2/SQRT(a^4 - x^4))
= 1/2*(a^2/SQRT(a^4 - x^4))*SQRT(1 - (x/a)^4)*ASIN((x/a)^2)

INT(ASIN(x/a)^(3/2)/SQRT(a^2 - x^2), x)
= 2/5*ASIN(x/a)^(3/2)*ATAN(x/SQRT(a^2 - x^2))
= 2/5*(a/SQRT(a^2 - x^2))*SQRT(1 - (x/a)^2)*ASIN(x/a)^(5/2)

I agree that much of this looks ugly compared to Timofeev's evaluations,
but such clumsiness often cannot be avoided if an evaluation is to pass
when the integration variable (as well as any parameters) are allowed to
be complex (assuming a framework of strictly single-valued complex
functions as implemented in Maple, Derive, and Mathematica, for
instance). Integrals in the suite have been handled as follows:

The integrands are without modification from Timofeev's book, apart from
occasional integrals whose accompanying evaluation implies a minor
misprint in the integrand, which are corrected. His evaluations, on the
other hand, are (barring oversights of mine) always modified to make
them hold on the complex domain where the original ones do not. They are
also modified if simpler forms could be found, or if the original ones
were seen to exhibit artificial discontinuities. In fact, I am trying to
establish that all antiderivatives in the book can be written such that
no unexpected discontinuities appear on the real axis (assuming real
parameters), while also remaining simple and "natural"-looking. In this,
I think, I have been successful so far. Where I saw no clear reason to
prefer one evaluation variant over another, both forms are given.

> [...]
>
> The test suite as used
>
> integrate(1/(a^2-b^2*x^2),x);
> integrate(1/(a^2+b^2*x^2),x);
> [...]

The integral you lost was not hard to hunt down: After your line 14,
integrate(sin(2*x)/(b^2*sin(x)^2-a^2),x). Your suite will then have 86
lines, or 86 integrals.

Martin.

Date Subject Author
2/24/13 clicliclic@freenet.de
3/19/13 clicliclic@freenet.de
3/21/13 Waldek Hebisch
3/22/13 clicliclic@freenet.de
3/26/13 Waldek Hebisch
3/26/13 clicliclic@freenet.de
4/20/13 clicliclic@freenet.de
4/20/13 Nasser Abbasi
4/20/13 Rouben Rostamian
4/20/13 clicliclic@freenet.de
4/20/13 Rouben Rostamian
4/20/13 Axel Vogt
4/20/13 clicliclic@freenet.de
4/20/13 Axel Vogt
4/21/13 Axel Vogt
4/21/13 clicliclic@freenet.de
4/21/13 Waldek Hebisch
4/22/13 clicliclic@freenet.de
4/22/13 Axel Vogt
4/22/13 clicliclic@freenet.de
4/23/13 Waldek Hebisch
4/24/13 clicliclic@freenet.de
4/25/13 Waldek Hebisch
4/26/13 clicliclic@freenet.de
4/27/13 Waldek Hebisch
4/24/13 Richard Fateman
4/24/13 clicliclic@freenet.de
4/25/13 Richard Fateman
4/26/13 clicliclic@freenet.de
4/26/13 Axel Vogt
4/27/13 clicliclic@freenet.de
4/25/13 Waldek Hebisch
4/25/13 Peter Pein
4/25/13 Nasser Abbasi
4/26/13 Peter Pein
4/26/13 clicliclic@freenet.de
4/26/13 Peter Pein
4/26/13 clicliclic@freenet.de
4/26/13 Richard Fateman
4/27/13 clicliclic@freenet.de
4/27/13 Richard Fateman
6/30/13 clicliclic@freenet.de
6/30/13 Axel Vogt
7/1/13 clicliclic@freenet.de
7/1/13 Axel Vogt
7/1/13 Waldek Hebisch
7/2/13 clicliclic@freenet.de
7/2/13 clicliclic@freenet.de
7/2/13 clicliclic@freenet.de
7/2/13 Nasser Abbasi
7/2/13 Nasser Abbasi
7/4/13 clicliclic@freenet.de
7/4/13 Nasser Abbasi
7/4/13 Nasser Abbasi
7/5/13 clicliclic@freenet.de
7/5/13 Nasser Abbasi
7/9/13 clicliclic@freenet.de
7/10/13 Nasser Abbasi
7/10/13 Richard Fateman
7/10/13 Nasser Abbasi
7/10/13 clicliclic@freenet.de
8/6/13 clicliclic@freenet.de
9/15/13 Albert D. Rich
9/15/13 clicliclic@freenet.de
9/15/13 clicliclic@freenet.de
9/21/13 Albert D. Rich
9/21/13 clicliclic@freenet.de
9/22/13 daly@axiom-developer.org
9/24/13 daly@axiom-developer.org
9/30/13 daly@axiom-developer.org
9/22/13 Albert D. Rich
9/25/13 Albert D. Rich
9/25/13 Albert D. Rich
9/25/13 clicliclic@freenet.de
9/25/13 Albert D. Rich
9/26/13 Albert D. Rich
9/26/13 clicliclic@freenet.de
9/26/13 Albert D. Rich
9/29/13 clicliclic@freenet.de
10/1/13 Albert D. Rich
10/1/13 clicliclic@freenet.de
10/1/13 Albert D. Rich
10/5/13 clicliclic@freenet.de
10/5/13 Albert D. Rich
10/6/13 clicliclic@freenet.de
10/10/13 Albert D. Rich
10/10/13 Nasser Abbasi
10/11/13 clicliclic@freenet.de
11/6/13 Albert D. Rich
11/6/13 Nasser Abbasi
11/7/13 did
11/7/13 clicliclic@freenet.de
11/7/13 clicliclic@freenet.de
11/7/13 Albert D. Rich
11/12/13 clicliclic@freenet.de
11/12/13 Albert D. Rich
11/13/13 clicliclic@freenet.de
11/13/13 Albert D. Rich
11/14/13 clicliclic@freenet.de
11/14/13 Albert D. Rich
11/15/13 clicliclic@freenet.de
11/15/13 Albert D. Rich
11/16/13 clicliclic@freenet.de
11/16/13 clicliclic@freenet.de
11/21/13 Albert D. Rich
11/21/13 clicliclic@freenet.de
11/21/13 Nasser Abbasi
11/21/13 Albert D. Rich
11/21/13 Albert D. Rich
11/22/13 clicliclic@freenet.de
11/14/13 Albert D. Rich
11/15/13 clicliclic@freenet.de
11/15/13 Nasser Abbasi
11/16/13 clicliclic@freenet.de
11/16/13 Nasser Abbasi
11/7/13 did
11/7/13 clicliclic@freenet.de
4/20/13 Richard Fateman
4/21/13 clicliclic@freenet.de
4/20/13 Axel Vogt
4/20/13 clicliclic@freenet.de
4/20/13 Waldek Hebisch
4/21/13 G. A. Edgar
12/8/13 clicliclic@freenet.de
10/5/13 Albert D. Rich
10/6/13 clicliclic@freenet.de