Open Source Symbolic Math Packages? 46
3Suns asks: "There are many proprietary symbolic mathematics suites available, including Mathcad, Mathematica, and Maple. Strangely, I can't find a single free software project with similar functionality. These programs are as ubiquitous in universities and engineering companies as they are expensive. Given the deep roots of open-source in higher education, what can explain the lack of free/open-source mathematics software?" We last addressed this question three
years ago, but a lot can change in that time. Has it?
Google? (Score:1, Informative)
Never heard of Maxima, Mupad, Octave, Scilab?
Re:Google? (Score:2)
Re:Google? (Score:3, Informative)
I believe you can get Octave to do symbolic too, though not by default. I recall reading something about either a free sym package, or someone copying the sym package from a Matlab installation and using it in Matlab.
Re:Google? (Score:5, Informative)
http://maxima.sourceforge.net/ [sourceforge.net]
or giac...
http://www-fourier.ujf-grenoble.fr/~parisse/engli
(giac, interestingly enough, runs on PDA's for a mobile solution...)
If you haven't found open source CAS, you haven't really looked...
Re:Google? (Score:3, Informative)
Re:Please explain (Score:2, Offtopic)
Re:Please explain (Score:3, Informative)
I'm not saying an open source Mathematica type software package wouldn't be nice, but there isn't the same drive for it as for an OS. There are already software packages that run on UNIX/Linux. They
Maple is open source (Score:2)
Also, contrary to some of the comments , Maple beats out everything else--including specialized programs--in some areas, e.g. symbolic solutions of ODEs. (It's true, though, that for say group theory, specialized programs are better.)
Re:Please explain (Score:4, Insightful)
Read OSNews of KernelTrap sometime. There are also dozens of small OSes written by individuals in their spare time.
How many books on writing programs to deal with symbolic math have you read lately?
Re:Please explain (Score:2)
Re:Please explain (Score:3, Informative)
Numerical math, yes. Symbolic math is far more complicated. Integration, for example, requires the Risch integration algorithm, which is quite non-trivial; computing polynomial GCDs has been the subject of dozens and dozens of papers.
Re:Please explain (Score:2)
Re:Please explain (Score:2)
Re:Please explain (Score:1, Informative)
There are probably a single digit number of universities in North America with a computer algebra/symbolic computing course.
A book on computer algebra (Score:2, Insightful)
I might come as a surprise to some, but symbolic mathematical systems require a lot of advanced math! Finishing the college calculus sequence is about 3 years insufficient to start scratching the surface. So, there aren't
Re:A book on computer algebra (Score:1, Funny)
Re:Please explain (Score:5, Insightful)
Well, here's how it would work. People don't write open source software for OTHER PEOPLE, they write it for themselves.
Somebody needs symbolic math package, but doesn't want to pay for the expensive versions. Unlike yourself, he reasons that like any complex system, a symbolic math package can be broken down into simpler subsets that maybe he can write himself.
Or maybe, he just wants to try writing it.
Or maybe he reads your post and considers it a challenge.
After a while, he gets it working and it solves his particular problem. Then he puts it on his web site and waits for open source magic to take over. Maybe it will, maybe it won't. But it doesn't cost him anything to try, after all, he's already solved his particular problem.
And that boys and girls, is how open source software is born.
maxima and axiom (Score:4, Informative)
There are some others: I think there's one in Scheme and I think YACAS comes with a lot of Linux distributions but I've never tried it.
Re:maxima and axiom (Score:1)
Well, it is lot of code (23 MB compressed). Since it is hosted on Savannah, I wonder how long it will take to start development again?
Re:maxima and axiom (Score:3, Informative)
No need. Axiom, Maxima, YACAS, and Scilab are all in the Debian archive.
It is *because* of the ubiquity... (Score:5, Insightful)
Re:It is *because* of the ubiquity... (Score:2)
Re:It is *because* of the ubiquity... (Score:4, Informative)
The fact that most universities and engineering copmanies have these packages readily available is probably why a big reason why open source alternatives have not shown up.
This comment was modded "insightful". Unfortunately it is not true. Depending on what you want to do, there are some highly specialized, hardcore symbolic programs which make Maple, Mathematica, and Mathcad seem like toys. Really, those commercial apps just give you a smorgasboard of basic functions and formulas so as to be considered useful to all. Once you start doing something more serious, you might drop them completely (unless you use their programming languages). If all you're looking for is some general purpose thingie which is a clone of the very popular commercial apps, try the options others already suggested. One I don't think has been mentioned so far is Scilab [inria.fr], which seems to look like Matlab, and looks pretty extensive, though I've never used it. And by the way, the reason why all the specialized programs exist is because scientists and mathematicians find commercial apps largely inadequate for their needs. What's so funny is that this largely parallels the Windows vs. Linux situation-- the commercial players make general purpose, easy-to-use programs which are very pretty and have lots of ohhhhh-ahhhhhh eye-popping features that are very useful for powerpoint presentations.
Re:It is *because* of the ubiquity... (Score:3, Insightful)
Like what? Seriously, where can I find them? I will most likely be too much to a novice to make use of them, but they would be interesting to see and I am sure I am not alone in this. Also, why are not some of the features that are present in these high-performance programs incorporated into commercial apps. such as Mathematica and Maple? Perhaps Wolfr
Re:It is *because* of the ubiquity... (Score:2)
Anyway, I'm just an amateur, and the one I use the most is Singular. Compare Singular to Maple, for instance. If you want to do computational commutative algebra in Maple, you hav
Re:It is *because* of the ubiquity... (Score:2)
Re:It is *because* of the ubiquity... (Score:2, Informative)
Depends exactly what you're doing.. (Score:5, Informative)
Maxima (Score:4, Informative)
It is an implementation of Macsyma [wikipedia.org] written in LISP and will compile and run fairly well on almost any machine
The syntax is easy to learn and the program is fairly powerful yet approachable
Even if it's not exactly what you're looking for, it is an extremely valuable tool
Singular (Score:5, Informative)
Please (Score:3, Informative)
Given the deep roots of open-source in higher education, what can explain the lack of free/open-source mathematics software?
There is not, nor will there ever be, a lack of free mathematics software. Is there a lack of free/open source "Linux software"? Yes, but only if you ask a news reporter or MS apologist. C'mon man, Google Directory lists a good deal of free stuff here. [google.com] You just forgot to look. Anyway, I'm sure this was covered on Slashdot as recently as last year.
A few small offerings (Score:1)
JEP - Java equation parser jep.sourceforge.net [sourceforge.net] just a simple parser for equations, but can be used as the first steps for a CA program.
SingSurf - Draws singular algrbraic and other surface. SingSurf [leeds.ac.uk].
Javaview - JavaView [javaview.de] a platform for 3D mathematical graphic.
It would be really nice to see a good open source framework, which allows easy extension into domain specific areas. I can't really see it happening. Maybe the best thing is to work on interopability
Roll your own (Score:2)
matlab (Score:2)
Go out and _buy_ yourself a copy of MATLAB R13. The student version is under 100$, which is a deal considering the amount of time it takes to put together such a program. In fact, these programs are so complex, anyone with enough time to dedicate making an open source alternative would have to dedicate their lives to it. And until somewhere in industry realizes they can (if possible) save money by developing an open source version in-house (like disney and wine) then no open source suites will exist.
-n