## Open Source 'Sage' Takes Aim at High End Math Software 360

Posted
by
CmdrTaco

from the that'll-take-awhile dept.

from the that'll-take-awhile dept.

coondoggie writes

*"A new open source mathematics program is looking to push aside commercial software commonly used in mathematics education, in large government laboratories and in math-intensive research. The program's backers say the software, called Sage, can do anything from mapping a 12-dimensional object to calculating rainfall patterns under global warming."*
## Very Nice (Score:3, Interesting)

## Re:This makes me think..... (Score:2, Interesting)

## Re:another one bites the dust (Score:2, Interesting)

## FINALLY! (Score:3, Interesting)

## Maxima vs Mathematica (Score:5, Interesting)

But I use Mathematica because it is full of functionality, fairly reliable, and has a very elegant programming paradigm. Also, as a student, it'll cost me $100-150, depending on where I live, for the lifetime of my studentship, assuming no site license; the kinds of business that run this software commercially really don't care too much about a $2500 license fee.Free software isn't about price -- it is about freedom. One of the research groups at my university cannot use Mathematica since a few weeks because the license expired, and neither renewing the license nor contacting tech support has so far brought a solution.

Another no-go is that Mathematica 6 notebooks are not compatible with Mathematica 5 notebooks. Also, the unwillingness of Wolfram to timely fix bugs leading to wrong results is unacceptable. I could go on ranting like this, but recently I have completely switched to Maxima [osreviews.net] and have not regretted it.

## The Sage Notebook (Score:2, Interesting)

This is one area which could use some help from a web developers familiar with Python and AJAX -- a background in math is not needed at all. Eventually, we'd like to split off the interface into its own project since it pretty useful on its own.

--Mike

## Re:another one bites the dust (Score:3, Interesting)

That market is custom database design: it's where your company pays $10,000 per license of some "cutting-edge" VB6.0 front-end to a MS Access database file because it has been completely customized to their business model. They are rampant with bugs, bag programming procedures, and hidden [usually annual] costs.

Doesn't look like it's going anywhere either, until corporate purchasing mindsets evolve from "price = value".

## Matlab (Score:4, Interesting)

Anyway, since then, we've renewed our licences every year, and we've been looking for an alternative. We even tried to migrate the whole lab to Scilab [scilab.org] but that didn't work out (mostly because of the limited capabilities of Scilab in scientific plotting and GUIs). Some of us use Python + Matplotlib (I'm a big fan), some (often the same people) use Octave. Although we've converted some individuals, we weren't able to find a software which could be used by everyone in the lab as a substitute to Matlab. This is frustrating, as the vast majority of people here use only a fraction of the capabilities of Matlab.

I for one, would be really happy if we had something to replace Matlab, be it Sage or whatever else...

## Commercial vs Free (Score:3, Interesting)

Theoretically no, but in reality probably yes.

There are some applications that are simply very difficult to make work in an open source or free software model. CAD software comes to mind immediately. Creating a CAD system is highly specialized, requires serious math skillz, and the end application is large and complicated (on par with operating systems or top tier database software) so a good team is required. There also are likely to be patent issues to work around as well. From a user's perspective changing CAD systems has VERY VERY high switching costs, require a LOT of training, and the user bases are quite small. Sure there are a few free/open-source CAD packages out there but they are toys compared with CATIA or ProEngineer or even AutoCAD. Don't get me wrong, lots of firms would love to not have to spend huge $ on an expensive 3D modeling package like CATIA. It costs a bloody fortune. But there just aren't enough programmers out there with the right skills and the itch to create a CAD package that will replace the commercial stuff any time soon.

Games seem to be another area where free software struggles to challenge commercial offerings. High development costs, small group of available programmers, requires artistic/creative skills not widely possessed by programmers, and other reasons besides.

Basically, the more specialized the software or the more artistic content required, the more difficult it seems to be to develop under a free model. Not impossible mind you, just more difficult; sometimes to the point where it is not practical even if it is theoretically possible.

## Re:SAGE is an interesting project (Score:2, Interesting)

## Re:SAGE is an interesting project (Score:2, Interesting)

--Mike

## Re:What about other math software? (Score:2, Interesting)

Sage provides much more functionality than existing FLOSS projects. One of the ways it does this is by making use of those project. For example, Sage comes with Maxima and uses it as an engine to do symbolic calculus type computations. Axiom can be used from within Sage if it is installed as well. Sage also includes GAP, which is the open-source package for doing abstract algebra computations. One of the main reasons for starting a new project was to take advantage of existing projects and tie them together.So, is there something that Sage does that can not be achieved by a BASH shell?

## Re:SAGE is an interesting project (Score:4, Interesting)

There is a mathematical proof verification language, Metamath [wikipedia.org], whose rigor and/or correctness (meaning freedom from bugs) are probably near the top, if only because (1) the proof language is trivially simple and (2) as a result half a dozen independently written proof verifiers have been coded, in C, Haskell, Python (300 lines of code), Java, Lisp, and Lua, so the likelihood they all have the same bug is pretty small. It stands in contrast to some other proof verifiers or theorem provers that embed complex internal algorithms and tend to be very large programs that would be hard to formally verify for correctness - and in some cases are closed source (like Mizar [wikipedia.org], which BTW probably has the largest body of mathematical knowledge developed for it).

A problem with Metamath is that it is very labor-intensive to develop proofs. The proof of 2 + 2 = 4 [metamath.org] has 23,000 steps from ZF set theory axioms, and the computation of cosine of 2 [metamath.org] to one decimal place has some 75,000 steps that take several seconds for the verifier to verify. All of these steps were entered by hand (although once a collection of theorems are developed they can be reused, so proofs become easier as a body of knowledge is developed). All of these steps are absolutely, rigorously correct - assuming that at least one of the independent verifiers has no bugs. Unlike a 75,000 line computer program, there is no such thing a a bug in the proof - a proof is either right or wrong (i.e. not a proof).

## Re:FLOSS misses the point again (Score:2, Interesting)

## Re:FLOSS misses the point again (Score:5, Interesting)

--Mike

## Re:another one bites the dust (Score:4, Interesting)

Blender is a UI for advanced users. It has very poor learnability, but I've heard it is a very good UI once you are used to it. I haven't seen any usability studies though, so it is just hearsay.

I have used GIMP for commercial work for years and it has been the best tool on the market for certain uses, especially large automated batch jobs that are beyond Graphics Converter. More recently, Pixelmator may have taken the title away from them, but to call GIMP "no good" in a commercial environment is just wrong. It is used a lot in certain segments, although it can't compete with Photoshop for one off photo touch-ups and that sort of thing.

Inkscape is pretty decent and a reasonable Illustrator replacement for many projects. The main drawbacks I have with it is for Visio type work it is not well suited, and support on the Mac (where realistically most pro graphic artists work) is very weak.

I disagree. Most of them are focused on different parts of the market than commercial competitors, but all of this software is probably the best for some uses.

## Re:User interface and documentation (Score:3, Interesting)

The success of Sage with research mathematicians may be determined by how

powerful Sage is, but you're right -- the success for 99% of users won't be

determined by that.

> As others have observed, it is largely a mashup of existing stuff.

> Its success will be determined by how easy it is to use. If someone

> can put together some decent documentation

We have many people in the development team who are really very interested

in writing good documentation (and who write published mathematics books as

part of our jobs). For example, the author of "Adventures in Group Theory:

Rubik's Cube, Merlin's Machine, and Other Mathematical Toys" is

one of the main Sage developers (he's coming out with a new version of the

book that uses Sage soon).

> and a semi-intuitive UI, it will take off.

From the start we've had many undergraduates with a software engineering

background involved in the project and they have helped immensely with

the browser-based GUI (which one can use locally -- no need to be online!).

Also, us "professional mathematicians" -- even the ones that use mainly FOSS --

really do greatly value having a nice GUI. You might be able to try

out the GUI right now here:

https://sage.math.washington.edu:8101/ [washington.edu]

that is, if it hasn't been slashdotted into oblivion already!

-- Willam

## Re:another one bites the dust (Score:1, Interesting)

There ARE some practical issues, though..

1) flight software applications are usually not "ground up creations from scratch", but, rather, inherit a LOT of their code from previous go-arounds (it works, don't break it). That "known good code" might well be closed source

2) flight software might be subject to export controls and ITAR (i.e. it's a munition). The same software that might control a science probe to the moon could also control a re-entering ICBM warhead. (this is probably the biggest issue with releasing code)

3) In a schedule critical development, one might not to wait for a F/OSS developer to need to scratch that particular itch. So you have to pay a developer or contracting firm to develop the software. That firm may wish to use their (closed source) libraries, or might see some downstream profit potential from the development in other markets. That closed source profit potential might be orders of magnitude greater than what a space mission is willing to pay for the software.

4) Those F/OSS toilers in the bazaar might not want to work in the rigorous schedule and configuration control environment needed for flight-critical code development. Your Mars launch opportunity only comes once every 2 years or so.. no time to follow the latest interesting branch.

## Re:Added benefit (Score:1, Interesting)

## Re:Added benefit (Score:1, Interesting)