On 9/12/2013 10:46 PM, David Scherfgen wrote:
> Richard, that's great help, thank you!
> Indeed I'm trying to make Maxima solve integrals the "human way" for
> learning purposes.
> If you have any additional information/hints on that topic (maybe it
> has even been done already?), I'd be very grateful.
>
> Regards,
> David
>
* Computer algebra systems often do not use the same steps that are
taught to freshman calc students.
Therefore just revealing the steps theire algorithms take is not
necessarily helpful. On the other hand,
really interested students might benefit by learning about these
alternative methods. Most calc
students just want to pass the required course and then forget it all :(
* I am aware of one web site that claims to show the steps that a
student is supposed to take,
for a small payment US$0.05, when I looked last. calc101.com.
It seems to use Mathematica in some form, but presumably not to directly
do the integrals requested.
*Wolfram Alpha will probably do textbook indefinite integration problems
fairly well; maybe botching
the simplest form sometimes. Free. Not showing the steps.
* Joel Moses' PhD thesis program SIN uses about a dozen methods that are
relatively easy to
explain; you can look at this and simulate them. e.g. look for an
expression that is a rational
function of sin(x) and cos(x), substitute tan(x/2)...
I don't know how much code this would require -- the most effective
method, "derivative divides" is
fairly short as written out in my paper. the other methods might be longer.
* Some of the solution "methods" shown in calculus courses are not
methods at all, but examples
of inspired guesses. Some are invalid in the complex plane, and a
fundamental fact -- that
some integrals cannot be expressed in terms of elementary functions --
is often lost in the
confusion: "I can't figure this out --- maybe I'm not smart enough ---
what, no one can do it ??"
If you rewrite Moses' stuff so that it is more general and/or easy to
read, that might be fun.
Moses' program, somewhat re-written, is in Maxima, source code file sin.lisp
RJF