Open Source Symbolic Math Program?
RickMuller asks: "I'm a quantum chemist, and every so often I'm forced to sit down and derive equations. On occasion I've used Mathematica or Maple to simplify the process, but only rarely because (i) they're not much better than plain paper and pen, and (ii) they're proprietary software, and if I'm going to learn someone's arcane command syntax, I want to make sure it's open source so I can compile and run it everywhere I need it.
I want to know if there is a reliable symbolic math package that is open source. I'm familiar with the CALC package in Emacs, which is quite good except that one needs to be running Emacs to use it. I would like to know if there is a viable alternative. Anyone? "
Nick
-- "It's a sad day for American capitalism when a man can't fly a midget on a kite over Central Park" - Jim Moran
MuPAD: nice general purpose CAS with packages for practically anything. You can view the source for the library functions, so if there's bug, you can fix it. Support is excellent and it's essentially free (as in beer) for *nix systems; MuPAD Light is free for Windows systems. www.sciface.com
PariGP: Has a decent user interface but not especially user-friendly compared to MuPAD's programming language. Has excellent support for formal power series, rings, etc.
Macaulay: User interface is bare bones; just flushes input to the interpreter. Strong in manipulation of polynomials via Grobner basis. It seems specialized for computational algebraic geometry.
I can't stand the Mathematica licensing. As a poor college student who runs Linux, I don't buy much software. But this year I decided it would be worthwhile to have Mathematica (they released a linux version).
So, I bought the student version of Mathematica. I've come to regret that, because their licensing is a pain in the ass. I reinstall OSes on a regular basis, and every time I do, Mathematica requires a new password, so I need to email the company and get a new password from them. This takes days.
Also, I dual boot windows. The CD also had a windows version, so I decided to install it. What's wrong with me using a program I paid $130 for on both operating systems right? It's still on my computer, and they can't run at the same time anyway. Well, I sent another request from them, along with a number generated from my system, and here's the response I got:
It looks as if you have changed from the Linux to the Windows platform. In
order for us to generate a new password for you, I will need for you to
complete a system transfer application. I have attached a copy of this form
in JPG format to this e-mail. Please print the form, complete it, and
return it to Wolfram Research either by fax or mail. Once received a
customer service representative will process your request. Please be sure
to write you new MathID number on the form so the person who receives it can
process your password, I do not believe the form it asks for it.
Our fax number is listed at the top of the form, and our mailing address is:
Wolfram Research Inc
Customer Service
100 Trade Center Dr
Champaign IL 61820
If you are unable to open or read the file please contact me and I will
request a copy of the form either faxed or mailed to you.
Gee, thanks. I haven't gotten around to doing this yet, but perhaps I'll find the time.
Meanwhile, AN OPEN SOURCE MATH PACKAGE WOULD BE A GODSEND!!!!!!!
--
grappler
Vidi, Vici, Veni
Though Octave is a very useful math package (I use it all the time), it doesn't have any symbolic math support. I don't know what made you think otherwise. It's almost Matlab compatible though.
As for symbolic stuff... you should look at SAL.KachinaTech.com which is a site for scientific applications under Linux
Opus: the Swiss army knife of audio codec
Call me a heretic of the Open Source movement, but:
I use Mathematica regularly. Its syntax is arcane only to the extent that it is itself a programming language with a complex instruction set; and the source is closed. But it has two features which I believe counter this. First, there are simply no programs of comparable power for complex symbolic manipulation; and yes, I am familiar with the open source packages. But algorithms for solving symbolic differential equations and large integrals are simply too much for small groups of people to do; their design requires substantial teams of very skilled people. And while the open source community has mustered many (most?) of the best programmers in the world, the skills of applied mathematicians simply aren't as prevalent in this world.
And second, Wolfram Research (the company which makes Mathematica) has systematically made itself as open as possible; they routinely solicit user suggestions and input, and sometimes incorporate user-submitted packages and code into their own releases. While the core code itself is compiled, a large fraction of the program comes in the form of modular packages which come in the form of Mathematica source code.
In short, I'll say that Not All Closed Source is Bad. The modularity of Mathematica, the publication of the API's and the source to all of the interpreter-level packages, and the responsiveness of the company to its users have given it most of the same advantages that true Open Source posesses.
(All of this applies as well to Maple; that system is oriented more towards large data set manipulation rather than pure symbolics, however, so the situation is slightly - but not very - different.)
So call me a heretic; but I believe that, when the cost of a large number of specialists needed to develop a package is high, the creation of a closed-source, sold-for-money package is reasonable so long as the company does not behave in a manner detrimental to its users. Therefore I would suggest that the continued use and active support of systems such as Mathematica and Maple is beneficial to the community as a whole and should be continued, even in the presence of open-source alternatives.
MuPAD looks OK, but the original post asked for non-proprietary software; as far as I can tell from the website, MuPAD is free-as-in-beer for educational and research use, but is no less proprietary than mathematica or maple.