tracking the solver



thanks for Your answers,
as much as I found out,  Maple has exactly what I was looking for
http://adept.maplesoft.com/categories/maple9/html/Calculus1.html

And Mathematica proposes some pattern-matching
http://documents.wolfram.com/mathematica/book/section-2.3.14

well but I thought for a while, and I think, it wouldn't be too hard
to implement formula pattern matching according to ~10 main symbolic 
integration rules
and parse the problems according to them.
http://www.alcyone.com/max/reference/maths/integrals.html
matching would actualy  be done by solving comparatively_simple 
equations  (so it would not eat CPU - I hope;)

first ratexpand should be run, to go through trivial rational 
simplifications
and then integration rules' matching should begin
some optional sequence of aplying rules would help the solving :)
there would be a tree of tries to match,
and once a way on the tree is found, it is shown step by step to user..
expert systems (prolog, CLIPS)  usually work this way, as I know..

I thought through an example of integrating (x/(x*x+1), x)
and I don't see any big problems on this way (CPU usage bothers mostly)

---
another strategy would be orientied to deal with divisor , if   f(x) = 
a(x)/b(x)
because such cases take most of time, tracking , which formula to apply ;)
so factor (b(x) +1)   and   factor((b(x) - 1) should be checked 
to see if there is a posibility of applying arctan, arcsec or arcsin
because other way it is hard to spot such possibilities..

neural network could help to choose the strategies, as it can be learned 
overtime...

hm, well, just a small question who has time to make this :)
me - no earlier than summer... so for now - just a small dream

good luck everyone..

>hi,
>> I generaly know, what Maxima is up to,
>> but I am interested is it possible to track the solver as the problem is 
>> beeing solved
>> can I get step by step output (as we are taught in calculus studies) 
>> instead of just the final answer?
>  
>
>
>I don't know if there is anything built in Maxima that would do this
>(other than trace command that Professor Fateman mentioned), but for
>simple, or not too complicated, that I sometimes used Maxima in class
>for, I would insert some steps myself. Say, we want to find a formula
>for the inverse of sinh(x).
>(%i1) y=(exp(x)-exp(-x))/2;
>(%i2) 2*%;
>(%i3) subst(z,exp(x),%);
>(%i4) z*%;
>   This one would not be expanded, which I prefer; I can ask students
>to complete the next step, and check it with Maxima, ...
>    At my current institution, we are using Mathematica, but I did not
>see a simple way to do above with Mathematica; in fact several
>students asked me the very first lab class if it would be possible to
>force Mathematica to show more steps. Some more experienced
>Mathematica colleagues showed me a couple of ways, but those never
>looked as simple and intuitive to me as the above stuff with Maxima, so I
>already forgot them:)
>Milan
>

-- 
Jurgis Pralgauskis
Don't worry, be happy :) and make things better ;)