2

I am modeling the methods used by integral-calculator to implement an API that runs maxima commands on a server. So far, setting up integrate(), diff(), and limit() have all gone relatively smoothly, however the end goal is to create a teaching aid for calculus students, so seeing the steps taken by Maxima for integration and differientiatiton would be really useful.

The author of integral-calculator references a program that was written to do this, but does not explicitly state which one. I have also searched the documentation and have found very little about outputing steps, although I found this page to be very interesting. Any and all help is appreciated.

  • Bryan, as the integral-calculator author notes, Maxima itself doesn't have a step by step output for integrals. I'm not sure which algorithm he is referring to, although it sounds like it might be similar to Rubi (https://rulebasedintegration.org). I think maybe you'll have to ask the integral-calculator author what is happening there. You might consider posting a message to the Maxima mailing list (https://sourceforge.net/projects/maxima/lists/maxima-discuss) to ask if anyone knows about software for the purpose you describe. Several tutorial systems based on Maxima have been devised, – Robert Dodier Jul 04 '23 at 05:28
  • of varying scope and complexity. I don't know if there is an overview of the various systems, but a web search should find some of them. – Robert Dodier Jul 04 '23 at 05:45
  • @RobertDodier thank you for the tip! I had never heard of Rubi before, and thankfully they have an implementation in the python library Sympy that I should be able to use. – Bryan Bergo Jul 04 '23 at 19:42
  • In addition, the algorithms used by Maxima for integration are generally not ones used by calculus students. IIRC, integration by parts is only used in exactly one situation for a very particular case. In many definite integrals, complex contour integration is used. – Raymond Toy Jul 05 '23 at 17:27
  • @RaymondToy This was very insightful. I am using that method for general computation, ex. a request for integration without steps. Right now I am using maxima to compute integrals and Sympy to show the steps using an adapted version of the [sympy gamma](https://github.com/blbergo/AI-Calc-Tutor/tree/main/maxima_server/commands) code, which implements Rubi in Python. – Bryan Bergo Jul 06 '23 at 18:56

0 Answers0