I am going to let I be the integral of ex sin(x) and start
by integrating by parts with
u1 = sin(x) and dv1 = ex dx
I = u1v1 - J
where J is the integral of x cos(x).
Now integrate J by parts with
u2 = cos(x) and dv2 =
I = u1v1 - [u2v2 + I]
Solve for I.
I think that ``the integrator'' uses an algorithm that
from what is usually seen in calculus courses: it guesses what should
be the form of the solution, and then differentiates to do the fine tuning.
It is just like guessing that the integral of x3 ex should be of the form
+ b(x2 ex)
+ c(x ex)
+ d(ex), and taking the derivative
to find the constants a, b, c and d. The standard textbook method is
hold up your fingers and ask yourself "Can I do this by substitution?
I do this by parts? ... '' and then further decide what to substitute
or what are the parts. This is not really a well defined procedure that
implemented on a computer, because of all the guessing involved.
feel that you have grasped the main point: However difficult it is
to integrate an expression, it is always easy to verify the solution
differentiation. It is actually the fundamental theorem of calculus
you have fully understood, and you could be trusted to use a computer
calculus package wisely and not accept gibberish for an answer.
the fundamental open questions in theoretical computer science is
``If it is easy to confirm an affirmative answer to a given question,
is it easy to find such an affirmative answer?'' (See
the P vs NP problem in http://www.claymath.org/Millennium_Prize_Problems/).
I feel that it also has its counterpart in mathematical education in
"What is the role of computers in calculus courses?'': We could
decide to remove integration by parts, partial fractions, or other
from the curriculum and use a calculus package instead. But if the
still check their answer to the integral of ex sin(x) by looking
back of the book instead of confirming their answers by differentiating,
I think that not much is gained.