06.05.2015 Views

Symbolic definite (and indefinite) integration: methods ... - SIGSAM

Symbolic definite (and indefinite) integration: methods ... - SIGSAM

Symbolic definite (and indefinite) integration: methods ... - SIGSAM

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Symbolic</strong> <strong>integration</strong>: <strong>methods</strong> <strong>and</strong> open issues<br />

There is a bright side. After substantial bug fixing, especially in pattern matching parts of the<br />

Integrate code, Mathematica h<strong>and</strong>les more problems than in the past. Here is an example that<br />

works well due to several of transformations of the integr<strong>and</strong>. It comes from an <strong>integration</strong> test<br />

suite in [3].<br />

∫ Tan[x]<br />

r 2<br />

“ 1− ”“1− Sin[x]2 2Sin[x]2<br />

2<br />

5<br />

” dx<br />

( √<br />

[<br />

5<br />

− 4i<br />

(EllipticE<br />

3 Cos[x]2 iArcSinh<br />

√ √ )<br />

(4 + Cos[2x])Sec[x]<br />

2<br />

2 + Tan[x] 2 /<br />

[√<br />

3<br />

4.2 Out on a Limb with a Cut Branch<br />

] ]<br />

[<br />

Tan[x] , 5 − EllipticF iArcSinh<br />

5 6<br />

( √25 )<br />

+ 14Cos[2x] + Cos[4x]<br />

[√ ] ])<br />

3<br />

Tan[x] , 5 5 6<br />

Frequently we require transformations that bring into play multivalued functions. The consequence<br />

is that we may arrive at an antiderivative that is only correct up to a piecewise multiplicative<br />

constant (i.e. caused by a transformation that is 1 in some places <strong>and</strong> -1 in others, such as √ x 2 → x).<br />

Hence we now attempt to restore the proper factor. This is not always straightforward <strong>and</strong> often<br />

leads to a significantly enlarged form of result. Moreover it is not trivial to recognize in all cases<br />

how to correctly reverse effects of such transformations.<br />

4.3 Transformations<br />

In many cases it is well understood how one might obtain an antiderivative for a particular class of<br />

integr<strong>and</strong> e.g. rational functions of trigonometrics. But the needed transformations must be applied<br />

carefully in order to avoid potential explosion in intermediate complexity or that of the final result.<br />

An example of this would be ∫ x<br />

dx. Version 4 of Mathematica gives a result about five<br />

sin 2 (2x)+cos(x)<br />

times larger than what is obtained with more recent vintages.<br />

4.4 To Exp<strong>and</strong> or Not Exp<strong>and</strong>, In<strong>definite</strong>ly<br />

This is a (very important) special case of a transformation. As the issues are a subset of those that<br />

arise in the context of <strong>definite</strong> <strong>integration</strong> we cover it there instead.<br />

5 Issues in the Implementation of Definite Integration<br />

In this section we arrive at the main focus of this report. Within symbolic <strong>definite</strong> <strong>integration</strong> one<br />

encounters a wide array of issues. In the subsections below I will endeavor to present <strong>and</strong> illustrate<br />

many of them.<br />

5.1 To Exp<strong>and</strong> or Not Exp<strong>and</strong>, Definitely<br />

When one has certain types of input it makes sense to exp<strong>and</strong> over summ<strong>and</strong>s <strong>and</strong> integrate termby-term.<br />

In other cases this can be a very bad thing to do. So the question is when should one<br />

exp<strong>and</strong> the input <strong>and</strong> loop over summ<strong>and</strong>s. We will illustrate with a few examples.<br />

Here is a case where one must not exp<strong>and</strong>. The reason is that the summ<strong>and</strong>s have cancelling<br />

singularities at infinity (there is also an infinitely oscillatory, but nevertheless integrable, part at<br />

the origin).<br />

ii = ∫ ( )<br />

∞<br />

e i x − 1<br />

Sin[x] dx<br />

0<br />

6

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!