Lesson 16: IntegrationDefinite integralsWhen Maple can find an antiderivative of a function, it should have no trouble with definite integrals of that function, using the Fundamental Theorem of Calculus. Well, maybe...Here's an example of what can go wrong.f:= abs(sin(x))^3;F:= unapply(int(f,x),x);Note LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNidGKy1GIzYmLUYsNiVRJ3NpZ251bUYnLyUnaXRhbGljR1EmZmFsc2VGJy8lLG1hdGh2YXJpYW50R1Enbm9ybWFsRictSSNtb0dGJDYtUTAmQXBwbHlGdW5jdGlvbjtGJ0Y7LyUmZmVuY2VHRjovJSpzZXBhcmF0b3JHRjovJSlzdHJldGNoeUdGOi8lKnN5bW1ldHJpY0dGOi8lKGxhcmdlb3BHRjovJS5tb3ZhYmxlbGltaXRzR0Y6LyUnYWNjZW50R0Y6LyUnbHNwYWNlR1EmMC4wZW1GJy8lJ3JzcGFjZUdGUi1JKG1mZW5jZWRHRiQ2JC1GIzYkLUYsNiVRInRGJy9GOVEldHJ1ZUYnL0Y8USdpdGFsaWNGJ0Y7RjtGOy1GPzYtUSI9RidGO0ZCRkRGRkZIRkpGTEZOL0ZRUSwwLjI3Nzc3NzhlbUYnL0ZURl9vLUkjbW5HRiQ2JFEiMUYnRjtGO0YrRjtGK0Y7 for LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYoLUkjbWlHRiQ2JVEidEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RIn5GJy9GM1Enbm9ybWFsRicvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRj0vJSlzdHJldGNoeUdGPS8lKnN5bW1ldHJpY0dGPS8lKGxhcmdlb3BHRj0vJS5tb3ZhYmxlbGltaXRzR0Y9LyUnYWNjZW50R0Y9LyUnbHNwYWNlR1EmMC4wZW1GJy8lJ3JzcGFjZUdGTC1GNjYtUSI+RidGOUY7Rj5GQEZCRkRGRkZIL0ZLUSwwLjI3Nzc3NzhlbUYnL0ZORlNGNS1JI21uR0YkNiRRIjBGJ0Y5Rjk=, LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNiUtSSNtb0dGJDYtUSomdW1pbnVzMDtGJy8lLG1hdGh2YXJpYW50R1Enbm9ybWFsRicvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRjwvJSlzdHJldGNoeUdGPC8lKnN5bW1ldHJpY0dGPC8lKGxhcmdlb3BHRjwvJS5tb3ZhYmxlbGltaXRzR0Y8LyUnYWNjZW50R0Y8LyUnbHNwYWNlR1EsMC4yMjIyMjIyZW1GJy8lJ3JzcGFjZUdGSy1JI21uR0YkNiRRIjFGJ0Y3RjdGK0Y3RitGNw== for LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNiYtRiw2JVEidEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RIjxGJy9GOlEnbm9ybWFsRicvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRkQvJSlzdHJldGNoeUdGRC8lKnN5bW1ldHJpY0dGRC8lKGxhcmdlb3BHRkQvJS5tb3ZhYmxlbGltaXRzR0ZELyUnYWNjZW50R0ZELyUnbHNwYWNlR1EsMC4yNzc3Nzc4ZW1GJy8lJ3JzcGFjZUdGUy1JI21uR0YkNiRRIjBGJ0ZARkBGK0ZARitGQA==.It looks OK as an antiderivative:plot(D(F)(x)-f,x=0..2*Pi);So let's try a definite integral.int(f,x=Pi/2 .. 3*Pi/2) = F(3*Pi/2) - F(Pi/2);Which is right? Well, f is LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNiYtRiw2JVEkc2luRicvJSdpdGFsaWNHUSZmYWxzZUYnLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGJy1JI21vR0YkNi1RMCZBcHBseUZ1bmN0aW9uO0YnRjkvJSZmZW5jZUdGOC8lKnNlcGFyYXRvckdGOC8lKXN0cmV0Y2h5R0Y4LyUqc3ltbWV0cmljR0Y4LyUobGFyZ2VvcEdGOC8lLm1vdmFibGVsaW1pdHNHRjgvJSdhY2NlbnRHRjgvJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZQLUklbXN1cEdGJDYlLUkobWZlbmNlZEdGJDYkLUYjNiQtRiw2JVEieEYnL0Y3USV0cnVlRicvRjpRJ2l0YWxpY0YnRjlGOS1GIzYlLUkjbW5HRiQ2JFEiM0YnRjlGaG5Gam4vJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYnRjlGK0Y5RitGOQ== for LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYrLUkjbW5HRiQ2JFEiMEYnLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGJy1JI21vR0YkNi1RIn5GJ0YvLyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0Y4LyUpc3RyZXRjaHlHRjgvJSpzeW1tZXRyaWNHRjgvJShsYXJnZW9wR0Y4LyUubW92YWJsZWxpbWl0c0dGOC8lJ2FjY2VudEdGOC8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHRkctRjM2LVEiPEYnRi9GNkY5RjtGPUY/RkFGQy9GRlEsMC4yNzc3Nzc4ZW1GJy9GSUZOLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnL0YwUSdpdGFsaWNGJ0YyRkpGMi1GUTYlUScmIzk2MDtGJy9GVUY4Ri9GLw== and LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbW9HRiQ2LVEqJnVtaW51czA7RicvJSxtYXRodmFyaWFudEdRJ25vcm1hbEYnLyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0Y0LyUpc3RyZXRjaHlHRjQvJSpzeW1tZXRyaWNHRjQvJShsYXJnZW9wR0Y0LyUubW92YWJsZWxpbWl0c0dGNC8lJ2FjY2VudEdGNC8lJ2xzcGFjZUdRLDAuMjIyMjIyMmVtRicvJSdyc3BhY2VHRkMtSSNtaUdGJDYlUSRzaW5GJy8lJ2l0YWxpY0dGNEYvLUklbXN1cEdGJDYlLUkobWZlbmNlZEdGJDYkLUYjNiQtRkc2JVEieEYnL0ZLUSV0cnVlRicvRjBRJ2l0YWxpY0YnRi9GLy1GIzYlLUkjbW5HRiQ2JFEiM0YnRi9GV0ZZLyUxc3VwZXJzY3JpcHRzaGlmdEdRIjBGJ0Yv for LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYuLUkjbWlHRiQ2JVEnJiM5NjA7RicvJSdpdGFsaWNHUSZmYWxzZUYnLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGJy1JI21vR0YkNi1RIn5GJ0YyLyUmZmVuY2VHRjEvJSpzZXBhcmF0b3JHRjEvJSlzdHJldGNoeUdGMS8lKnN5bW1ldHJpY0dGMS8lKGxhcmdlb3BHRjEvJS5tb3ZhYmxlbGltaXRzR0YxLyUnYWNjZW50R0YxLyUnbHNwYWNlR1EmMC4wZW1GJy8lJ3JzcGFjZUdGSS1GNjYtUSI8RidGMkY5RjtGPUY/RkFGQ0ZFL0ZIUSwwLjI3Nzc3NzhlbUYnL0ZLRlBGNS1GLDYlUSJ4RicvRjBRJXRydWVGJy9GM1EnaXRhbGljRidGNUZMRjUtSSNtbkdGJDYkUSIyRidGMkY1RitGMg==.int(sin(x)^3,x=Pi/2 .. Pi) - int(sin(x)^3,x=Pi .. 3*Pi/2);If we plot the antiderivative, we see what's going on.plot(F(x),x=0..2*Pi);So Maple was right.The point of this story: you also have to be careful about jumps in the "antiderivative".
Maple doesn't always succeed in locating them, though it does this time. It's better than it used to be, but still not perfect. Absolute values are especially troublesome.In this one, Maple doesn't give us a value for the integral.int(abs(x-cos(x)),x=-Pi..Pi);int(abs(x-cos(x)),x);plot(%,x=-Pi..Pi);The antiderivative takes a jump at the point where LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYpLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RIn5GJy9GM1Enbm9ybWFsRicvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRj0vJSlzdHJldGNoeUdGPS8lKnN5bW1ldHJpY0dGPS8lKGxhcmdlb3BHRj0vJS5tb3ZhYmxlbGltaXRzR0Y9LyUnYWNjZW50R0Y9LyUnbHNwYWNlR1EmMC4wZW1GJy8lJ3JzcGFjZUdGTC1GNjYtUSI9RidGOUY7Rj5GQEZCRkRGRkZIL0ZLUSwwLjI3Nzc3NzhlbUYnL0ZORlNGNS1GLDYlUSRjb3NGJy9GMEY9RjktSShtZmVuY2VkR0YkNiQtRiM2JEYrRjlGOUY5. But there's no exact formula for that, unless you use RootOf.solve(x=cos(x));So in this case perhaps you can't blame Maple for not coming up with a result. But sometimes it's too cautious.int(1/(1+x^2 + x^5),x=0..1);F:= unapply(int(1/(1+x^2+x^5),x), x);plot(F(x),x=0..1);It looks continuous. Here's what the Fundamental Theorem of Calculus gives us.evalf(F(1) - F(0));Note that last bit is 0 i, not 0.1. Presumably the calculation involved complex numbers, and the imaginary parts cancelled. To get rid of the 0 i:simplify(%);To check this, here's what numerical integration (which we'll talk about in detail later) gives us for this integral.evalf(Int(1/(1+x^2+x^5),x=0..1));Note the difference between evalf(Int(...)) and evalf(int(...)): evalf(Int(...)) will always do numerical integration without trying symbolic methods (because the Int is inert), evalf(int(...)) tries symbolic integration first and applies evalf to whatever the result is.If you're sure the antiderivative will be continuous (or you feel like living dangerously) you can tell Maple that:int(1/(1+x^2+x^5),x=0..1, continuous);evalf(%);Here's a bug.J:= Int(arctan(z)^2/(1+4*z^2),z=-1..1);V:= value(J);evalf(V=J);So there's a discrepancy. What's the antiderivative?F:= unapply(int(arctan(z)^2/(1+4*z^2),z),z);Was Maple using the Fundamental Theorem of Calculus with this antiderivative?V - (F(1) - F(-1));Is it really an antiderivative?simplify(diff(F(z),z)-arctan(z)^2/(1+4*z^2));plot(Re(F(z)),z=-1..1);Improper integralsMaple can do improper integrals. It checks for convergence or divergence. Here are some you may have met.int(1/x^2, x= 1 .. infinity);int(1/x, x= -1 .. 1);int(exp(-a*x),x=0..infinity);Why didn't that one work? Because nobody told Maple that LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYkLUkjbWlHRiQ2JVEiYUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy9GM1Enbm9ybWFsRic= > 0. If LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYkLUkjbWlHRiQ2JVEiYUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy9GM1Enbm9ybWFsRic= < 0 the integral doesn't converge. Don't expect Maple to read your mind! And remember that variables are allowed to be complex unless otherwise specified, so replacing LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYkLUkjbWlHRiQ2JVEiYUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy9GM1Enbm9ybWFsRic= with LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JC1JJW1zdXBHRiQ2JS1GLDYlUSJhRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW5HRiQ2JFEiMkYnL0Y7USdub3JtYWxGJy8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGQUYrRkE= wouldn't have worked either. When you want to make an assumption on a variable, you can use assume.assume(a > 0);about(a);int(exp(-a*x),x=0..infinity);That ~ is there to remind you that the variable has an assumption on it. You can change that:
Tools, Options..., Display, and change Assumed Variables from Trailing Tildes to Phrase or No Annotation. To remove assumptions from a variable, "unassign" it.a:= 'a';about(a);int(exp(-a*x),x=0..infinity);You can also make a temporary assumption (for just a single command) using assuming.int(exp(-a*x),x=0..infinity) assuming a > 0;about(a);Here's an improper integral that might appear in Math 301, which you would do using residues. Maple can do it too.J:= Int(x^a/(x^2+3*x+2),x=0..infinity);
J = value(J) assuming a > 0, a < 1;Maple is not using an antiderivative on this one, by the way, because it doesn't know an antiderivative.int(x^a/(x^2 + 3*x + 2), x) assuming a > 0, a < 1;On the other hand, here's one that we can do easily with a bit of insight, but Maple can't.J:= Int(sin(a*x)/(1 + x^4 + x^6), x=-infinity .. infinity);
value(J) assuming a > 0;... or even J1:=int(sin(a*x)/(1+x^4 + x^6), x=-1 .. 1);simplify(%);Of course it can get a numerical value for particular values of LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYkLUkjbWlHRiQ2JVEiYUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy9GM1Enbm9ybWFsRic=.(eval(J1,a=3)); evalf(%);That's 0 i, not 0.1.Exact or numeric?In some cases, even when there is an "exact" formula for the antiderivative, that formula could be so complicated that numerical integration may be faster and more accurate. In general, evalf(Int(...)) is quite reliable and reasonably fast, except for some circumstances we'll see where it has difficulties.time() returns the number of seconds of CPU time used so far in the session. By saving the value of time() at the beginning of the execution group and subtracting that from the value at the end, we get the number of seconds spent doing the calculation.restart; timer:= time():
int(sqrt(sec(x)^2+4), x = 0 .. 1);
evalf(%);
time()-timer;timer := time():
evalf(Int(sqrt(sec(x)^2+4), x = 0 .. 1));
time() - timer;Of course, if your answer is not just a number (i.e. there are other parameters involved), evalf(Int(...)) can't help.evalf(Int(sqrt(sec(x)^2+r^2), x = 0 .. 1)) assuming r > 0;Finding antiderivativesHow does Maple find formulas for antiderivatives?In contrast to the completely mechanical procedure for differentiation, Calculus texts tend to have a hodgepodge of different techniques for integration, and often it is not clear which technique will work for a particular integral. If we can't manage to make these techniques work, there's always the suspicion that if we were cleverer we could find an answer. Maple uses a more systematic procedure that, in most cases, will produce an answer if there is one.The basic problem can be stated as follows. First, we need a technical term: elementary function. These include all the functions a Math 101 student might know about. Basically, we can start with constants and x, and build more and more complicated functions using:The arithmetic operations +,-,*,/,^Roots of polynomials whose coefficients are elementary functionsexp, ln, and the standard trig and inverse trig functionsSo for example LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JC1JJm1zcXJ0R0YkNiMtRiM2KEYrLUYjNiYtRiw2JVEkc2luRicvJSdpdGFsaWNHUSZmYWxzZUYnLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGJy1JI21vR0YkNi1RMCZBcHBseUZ1bmN0aW9uO0YnRj4vJSZmZW5jZUdGPS8lKnNlcGFyYXRvckdGPS8lKXN0cmV0Y2h5R0Y9LyUqc3ltbWV0cmljR0Y9LyUobGFyZ2VvcEdGPS8lLm1vdmFibGVsaW1pdHNHRj0vJSdhY2NlbnRHRj0vJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZVLUkobWZlbmNlZEdGJDYkLUYjNiQtRiw2JVEieEYnL0Y8USV0cnVlRicvRj9RJ2l0YWxpY0YnRj5GPkY+LUZCNi1RIitGJ0Y+RkVGR0ZJRktGTUZPRlEvRlRRLDAuMjIyMjIyMmVtRicvRldGYm8tRiM2Ji1GLDYlUSNsbkYnRjtGPkZBLUZZNiQtRiM2JkYrLUYjNiYtSSNtbkdGJDYkUSIxRidGPi1GQjYtUSgmbWludXM7RidGPkZFRkdGSUZLRk1GT0ZRRmFvRmNvLUYyNiNGZ25GPkYrRj5GPkY+RitGPkY+RitGPg== is an elementary function, but LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNiYtRiw2JVEmZGlsb2dGJy8lJ2l0YWxpY0dRJmZhbHNlRicvJSxtYXRodmFyaWFudEdRJ25vcm1hbEYnLUkjbW9HRiQ2LVEwJkFwcGx5RnVuY3Rpb247RidGOS8lJmZlbmNlR0Y4LyUqc2VwYXJhdG9yR0Y4LyUpc3RyZXRjaHlHRjgvJSpzeW1tZXRyaWNHRjgvJShsYXJnZW9wR0Y4LyUubW92YWJsZWxpbWl0c0dGOC8lJ2FjY2VudEdGOC8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHRlAtSShtZmVuY2VkR0YkNiQtRiM2JC1GLDYlUSJ4RicvRjdRJXRydWVGJy9GOlEnaXRhbGljRidGOUY5RjlGK0Y5RitGOQ== and all sorts of other special functions are not elementary.Now the question is this: Given an elementary function LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNiYtRiw2JVEiZkYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RMCZBcHBseUZ1bmN0aW9uO0YnL0Y6USdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGRC8lKXN0cmV0Y2h5R0ZELyUqc3ltbWV0cmljR0ZELyUobGFyZ2VvcEdGRC8lLm1vdmFibGVsaW1pdHNHRkQvJSdhY2NlbnRHRkQvJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZTLUkobWZlbmNlZEdGJDYkLUYjNiQtRiw2JVEieEYnRjZGOUZARkBGQEYrRkBGK0ZA, is there an elementary function LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNiYtRiw2JVEiRkYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RMCZBcHBseUZ1bmN0aW9uO0YnL0Y6USdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGRC8lKXN0cmV0Y2h5R0ZELyUqc3ltbWV0cmljR0ZELyUobGFyZ2VvcEdGRC8lLm1vdmFibGVsaW1pdHNHRkQvJSdhY2NlbnRHRkQvJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZTLUkobWZlbmNlZEdGJDYkLUYjNiQtRiw2JVEieEYnRjZGOUZARkBGQEYrRkBGK0ZA such that LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNihGKy1GIzYmLUYsNiVRI0YnRicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW9HRiQ2LVEwJkFwcGx5RnVuY3Rpb247RicvRjxRJ25vcm1hbEYnLyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0ZGLyUpc3RyZXRjaHlHRkYvJSpzeW1tZXRyaWNHRkYvJShsYXJnZW9wR0ZGLyUubW92YWJsZWxpbWl0c0dGRi8lJ2FjY2VudEdGRi8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHRlUtSShtZmVuY2VkR0YkNiQtRiM2JC1GLDYlUSJ4RidGOEY7RkJGQkZCLUY/Ni1RIj1GJ0ZCRkRGR0ZJRktGTUZPRlEvRlRRLDAuMjc3Nzc3OGVtRicvRldGXm8tRiM2Ji1GLDYlUSJmRidGOEY7Rj5GWEZCRitGQkYrRkJGK0ZC? If so, find it.For example, for LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYsLUkjbW9HRiQ2LVEifkYnLyUsbWF0aHZhcmlhbnRHUSdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGNC8lKXN0cmV0Y2h5R0Y0LyUqc3ltbWV0cmljR0Y0LyUobGFyZ2VvcEdGNC8lLm1vdmFibGVsaW1pdHNHRjQvJSdhY2NlbnRHRjQvJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZDLUkjbWlHRiQ2JVEiZkYnLyUnaXRhbGljR1EldHJ1ZUYnL0YwUSdpdGFsaWNGJy1JKG1mZW5jZWRHRiQ2JC1GIzYkLUZHNiVRInhGJ0ZKRk1GL0YvRistRiw2LVEiPUYnRi9GMkY1RjdGOUY7Rj1GPy9GQlEsMC4yNzc3Nzc4ZW1GJy9GRUZlbkYrLUYjNiUtRkc2I1EhRictSSZtc3FydEdGJDYjLUYjNiUtRkc2JVEkdGFuRicvRktGNEYvRk9GL0YvRitGK0Yvthe answer is yes, and here's one LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNiYtRiw2JVEiRkYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RMCZBcHBseUZ1bmN0aW9uO0YnL0Y6USdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGRC8lKXN0cmV0Y2h5R0ZELyUqc3ltbWV0cmljR0ZELyUobGFyZ2VvcEdGRC8lLm1vdmFibGVsaW1pdHNHRkQvJSdhY2NlbnRHRkQvJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZTLUkobWZlbmNlZEdGJDYkLUYjNiQtRiw2JVEieEYnRjZGOUZARkBGQEYrRkBGK0ZA:int(sqrt(tan(x)),x);On the other hand, for LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYqLUkjbWlHRiQ2JVEiZkYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JKG1mZW5jZWRHRiQ2JC1GIzYkLUYsNiVRInhGJ0YvRjIvRjNRJ25vcm1hbEYnRj0tSSNtb0dGJDYtUSJ+RidGPS8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGRS8lKXN0cmV0Y2h5R0ZFLyUqc3ltbWV0cmljR0ZFLyUobGFyZ2VvcEdGRS8lLm1vdmFibGVsaW1pdHNHRkUvJSdhY2NlbnRHRkUvJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZULUZANi1RIj1GJ0Y9RkNGRkZIRkpGTEZORlAvRlNRLDAuMjc3Nzc3OGVtRicvRlZGZW5GPy1GIzYlLUYsNiNRIUYnLUklbXN1cEdGJDYlLUZANi1RLyZFeHBvbmVudGlhbEU7RidGPS9GRFEmdW5zZXRGJy9GR0Zjby9GSUZjby9GS0Zjby9GTUZjby9GT0Zjby9GUUZjb0ZSL0ZWUSwwLjExMTExMTFlbUYnLUYjNiQtRl1vNiVGOi1GIzYkLUkjbW5HRiQ2JFEiMkYnRj1GPS8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGPUZmcEY9RmluRj0= the answer is no. Maple does find an antiderivative, but it's not an elementary function.int(exp(x^2),x);There actually is an algorithm (called the Risch algorithm) that will answer this question.Some of the basic ingredients date back to Liouville in 1833, but the problem was not completely solved until quite recently: the last case of it only in 1987. The complete algorithm is not easy to implement, however, and Maple includes only part of it. The theory involves some very high-powered mathematics, but I'll try to give you a taste of some of the simpler parts. We'll start by looking at how to integrate a rational function.Integrating rational functionsA rational function is a quotient of polynomials. Here's a typical one.p := 2*x^5 + x^3 -x + 1:
q := x^4 - 6*x^2 - 8*x - 3:
f := p/q; What is its antiderivative?F:=int(f,x);How does the typical Calculus text tell you to integrate this (if it does)? The first step is division: write LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNictSSZtZnJhY0dGJDYoLUYjNiQtRiw2JVEicEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy9GP1Enbm9ybWFsRictRiM2JC1GLDYlUSJxRidGO0Y+RkEvJS5saW5ldGhpY2tuZXNzR1EiMUYnLyUrZGVub21hbGlnbkdRJ2NlbnRlckYnLyUpbnVtYWxpZ25HRk0vJSliZXZlbGxlZEdRJmZhbHNlRictSSNtb0dGJDYtUSI9RidGQS8lJmZlbmNlR0ZSLyUqc2VwYXJhdG9yR0ZSLyUpc3RyZXRjaHlHRlIvJSpzeW1tZXRyaWNHRlIvJShsYXJnZW9wR0ZSLyUubW92YWJsZWxpbWl0c0dGUi8lJ2FjY2VudEdGUi8lJ2xzcGFjZUdRLDAuMjc3Nzc3OGVtRicvJSdyc3BhY2VHRmFvLUYjNiYtRiw2JVEic0YnRjtGPi1GVDYtUSIrRidGQUZXRllGZW5GZ25GaW5GW29GXW8vRmBvUSwwLjIyMjIyMjJlbUYnL0Zjb0ZdcC1GNDYoLUYjNiQtRiw2JVEickYnRjtGPkZBRkNGSEZLRk5GUEZBRitGQUYrRkFGK0ZB where s and r are polynomials, with LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNihGKy1GIzYmLUYsNiVRJ2RlZ3JlZUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RMCZBcHBseUZ1bmN0aW9uO0YnL0Y8USdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGRi8lKXN0cmV0Y2h5R0ZGLyUqc3ltbWV0cmljR0ZGLyUobGFyZ2VvcEdGRi8lLm1vdmFibGVsaW1pdHNHRkYvJSdhY2NlbnRHRkYvJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZVLUkobWZlbmNlZEdGJDYkLUYjNiQtRiw2JVEickYnRjhGO0ZCRkJGQi1GPzYtUSI8RidGQkZERkdGSUZLRk1GT0ZRL0ZUUSwwLjI3Nzc3NzhlbUYnL0ZXRl5vLUYjNiZGNUY+LUZZNiQtRiM2JC1GLDYlUSJxRidGOEY7RkJGQkZCRitGQkYrRkJGK0ZC. That equation is equivalent to LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNictRiw2JVEicEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RIj1GJy9GOlEnbm9ybWFsRicvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRkQvJSlzdHJldGNoeUdGRC8lKnN5bW1ldHJpY0dGRC8lKGxhcmdlb3BHRkQvJS5tb3ZhYmxlbGltaXRzR0ZELyUnYWNjZW50R0ZELyUnbHNwYWNlR1EsMC4yNzc3Nzc4ZW1GJy8lJ3JzcGFjZUdGUy1GIzYnRistRiM2Ji1GLDYlUSJzRidGNkY5LUY9Ni1RMSZJbnZpc2libGVUaW1lcztGJ0ZARkJGRUZHRklGS0ZNRk8vRlJRJjAuMGVtRicvRlVGW28tRiw2JVEicUYnRjZGOUZALUY9Ni1RIitGJ0ZARkJGRUZHRklGS0ZNRk8vRlJRLDAuMjIyMjIyMmVtRicvRlVGZG8tRiw2JVEickYnRjZGOUZARitGQEYrRkBGK0ZA. Maple can do this with quo for quotient and rem for remainder, as we've seen.s := quo(p, q, x); r := rem(p, q, x);p/q = s + r/q;Integrating the polynomial s is easy. That gives us the polynomial part of LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNiYtRiw2JVEiRkYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RMCZBcHBseUZ1bmN0aW9uO0YnL0Y6USdub3JtYWxGJy8lJmZlbmNlR1EmZmFsc2VGJy8lKnNlcGFyYXRvckdGRC8lKXN0cmV0Y2h5R0ZELyUqc3ltbWV0cmljR0ZELyUobGFyZ2VvcEdGRC8lLm1vdmFibGVsaW1pdHNHRkQvJSdhY2NlbnRHRkQvJSdsc3BhY2VHUSYwLjBlbUYnLyUncnNwYWNlR0ZTLUkobWZlbmNlZEdGJDYkLUYjNiQtRiw2JVEieEYnRjZGOUZARkBGQEYrRkBGK0ZA: LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYlLUklbXN1cEdGJDYlLUkjbWlHRiQ2JVEieEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21uR0YkNiRRIjJGJy9GNlEnbm9ybWFsRicvJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYnLUYvNiNRIUYnRjw=. We're left with the problem of integrating r/q, a rational function where the numerator has lower degree than the denominator.The next step is to factor the denominator q.factor(q);Now r/q is supposed to be decomposed into partial fractions: a sum of the following form: parfrac:= r/q = a/(x-3)+ b/(x+1) + c/(x+1)^2 + d/(x+1)^3;To handle the LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYkLUklbXN1cEdGJDYmLUkobWZlbmNlZEdGJDYkLUYjNiYtSSNtaUdGJDYlUSJ4RicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW9HRiQ2LVEnJnBsdXM7RicvRjtRJ25vcm1hbEYnLyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0ZFLyUpc3RyZXRjaHlHRkUvJSpzeW1tZXRyaWNHRkUvJShsYXJnZW9wR0ZFLyUubW92YWJsZWxpbWl0c0dGRS8lJ2FjY2VudEdGRS8lJ2xzcGFjZUdRLDAuMjIyMjIyMmVtRicvJSdyc3BhY2VHRlQtSSNtbkdGJDYkUSIxRidGQUZBRkEtRlg2JFEiM0YnRkEvJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYnL0krbXNlbWFudGljc0dGJFEiXkYnRkE= we need a term in LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYkLUklbXN1cEdGJDYmLUkobWZlbmNlZEdGJDYkLUYjNiYtSSNtaUdGJDYlUSJ4RicvJSdpdGFsaWNHUSV0cnVlRicvJSxtYXRodmFyaWFudEdRJ2l0YWxpY0YnLUkjbW9HRiQ2LVEnJnBsdXM7RicvRjtRJ25vcm1hbEYnLyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0ZFLyUpc3RyZXRjaHlHRkUvJSpzeW1tZXRyaWNHRkUvJShsYXJnZW9wR0ZFLyUubW92YWJsZWxpbWl0c0dGRS8lJ2FjY2VudEdGRS8lJ2xzcGFjZUdRLDAuMjIyMjIyMmVtRicvJSdyc3BhY2VHRlQtSSNtbkdGJDYkUSIxRidGQUZBRkEtRiM2JS1GPjYtUSgmbWludXM7RidGQUZDRkZGSEZKRkxGTkZQRlJGVS1GNDYlUSJqRidGN0Y6RkEvJTFzdXBlcnNjcmlwdHNoaWZ0R1EiMEYnL0krbXNlbWFudGljc0dGJFEiXkYnRkE= for each j from 1 to 3.We need to solve for the constants a, b, c, d that make this equation true. If we clear away the denominators, we get an equation for polynomials.Maple objects introduced in this lessonevalf(Int(...))
assume
about
assuming
timeLUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYjLUkjbWlHRiQ2I1EhRic=JSFH