3804
Comment: add link to Geddes, et. al book for integration
|
3971
add link to Geddes' integration survey
|
Deletions are marked like this. | Additions are marked like this. |
Line 20: | Line 20: |
* A survey by Keith Geddes: [[http://www.cs.uwaterloo.ca/~kogeddes/papers/Integration/IntSurvey.html|Algorithms for Indefinite and Definite Integration in Maple]] |
Symbolics in Sage
These pages are aimed at developers of symbolics functionality in Sage. If you're interested in helping out with any of the items below please contact the sage-devel googlegroup or the people already working on your item of interest.
Pynac and Maxima based symbolics
Most symbolics functionality in Sage relies on Maxima. While Maxima is a very mature and capable software package, there are some problems with using it in Sage. Namely,
- the pexpect interface to Maxima is slow, and
- Sage developers cannot fix problems in Maxima or enhance its functionality.
To provide a better framework for symbolics in Sage, and to make implementation of new symbolics functionality that relies on components of Sage easier; we created a fork of the C++ library GiNaC, called Pynac, which works with Python types. There are still some low level changes required in Pynac before it can be used as a basis for symbolics in Sage, we keep track of these at the Pynac todo list.
With the switch to Pynac based symbolics, it will be possible to implement native functionality in Sage. Here is a brief list of areas that need work.
TODO
- Integration
A summary of heuristics used in Maple from Algorithms in Computer Algebra by Geddes, Czapor and Labahn
A survey by Keith Geddes: Algorithms for Indefinite and Definite Integration in Maple
Heuristics from maxima (relevant parts of the maxima manual have some documentation)
Transcendental Risch (from Bronstein's book)
- Solve
Talk by Barton Willis on Maxima's to_poly solve function
test suite for Maxima's to_poly solver
- Limits
- Differential equation solver
documentation of Sum^it library might be useful
- Basic simplification routines
- trig
- radical
- rational
- binomial/factorial?
Some of the functionality listed above is provided by Maxima wrappers at the moment.
- Summation
Burcin Erocal ([email protected]) is working on this
- Hypergeometric functions
m}(\frac{n}{2}+1)_m} \,_2 F_1 \left( \begin{array}{cc} m+1, m+n \\ m+ \frac{n}{2} +1 \end{array} ; \frac{1}{2} \right) = \frac{2^{n-1} \Gamma(\frac{n}{2} +1) \Gamma(\frac{m}{2} + \frac{n}{2})}{\Gamma(\frac{m}{2} + 1)\Gamma(n)}$$
- Meijer G-Functions
- Generating functions
- This is a building block for many things. A prerequisite for this is linear algebra over polynomial rings, Burcin Erocal is working on this.
gfun by Bruno Salvy and Paul Zimmermann included in Maple
GeneratingFunctions by Christian Mallinger for MMA