Until recently, a student solving a calculus problem, a physicist modeling a galaxy or a mathematician studying a complex equation had to use powerful computer programs that cost hundreds or thousands of dollars. But an open-source tool based at the University of Washington won first prize in the scientific software division of Les Trophées du Libre, an international competition for free software.
The tool, called Sage, faced initial skepticism from the mathematics and education communities.
"I've had a surprisingly large number of people tell me that something like Sage couldn't be done – that it just wasn't possible," said William Stein, associate professor of mathematics and lead developer of the tool. "I'm hearing that less now."
Open-source software, which distributes programs and all their underlying code for free, is increasingly used in everyday applications. Firefox, Linux and Open Office are well-known examples.
But until recently, nobody had done the same for the everyday tools used in mathematics. Over the past three years, more than a hundred mathematicians from around the world have worked with Stein to build a user-friendly tool that combines powerful number-crunching with new features, such as collaborative online worksheets.
"A lot of people said: 'Wow, I've been waiting forever for something like this,'" Stein said. "People are excited about it."
Sage can take the place of commercial software commonly used in mathematics education, in large government laboratories and in math-intensive research. The program can do anything from mapping a 12-dimensional object to calculating rainfall patterns under global warming.
The idea began in 2005, when Stein was an assistant professor at Harvard University.
"For about 10 years I had been really unhappy with the state of mathematical software," Stein said. The big commercial programs – Matlab, Maple, Mathematica and Magma – charge license fees. The Mathematica Web page, for example, charges $2,495 for a regular license. For another program, a collaborator in Colombia was quoted about $550, a special "Third World" discount price, to buy a license to use a particular tool, Stein said.
The frustrations weren't only financial. Commercial programs don't always reveal how the calculations are performed. This means that other mathematicians can't scrutinize the code to see how a computer-based calculation arrived at a result.
"Not being able to check the code of a computer-based calculation is like not publishing proofs for a mathematical theorem," Stein said. "It's ludicrous."
So Stein began a year and a half of frenzied work in which he created the Sage prototype, combining decades' worth of more specialized free mathematical software and filling in the gaps.
"I worked really, really hard on this, and didn't sleep much for a year. Now I've relaxed. There are a lot more people helping out," Stein said. "It seems like everyone in the field has heard of Sage now, which is surreal."
Among those helping is a team of five UW undergraduate students who work part-time on the code – everything from writing new formulas to improving the Google-ish graphical interface. (Even when Sage runs on an individual computer, not over the Internet, you use a Web browser to enter commands.)
Regular meetings, named "Sage days," bring together volunteer developers. The fourth Sage day, held in Seattle in June, drew about 30 people. The sixth Sage day was held last month in Bristol, England. Forty-one people attended talks and many participated in coding sprints. Dozens of other people around the world contribute through Sage's online discussion boards.
Last month, Stein and David Joyner, a mathematics professor at the U.S. Naval Academy in Annapolis, Md., published a letter in the Notices of the American Mathematical Society in which they argue that the mathematical community should support and develop open-source software.
Soon Sage will face off against the major software companies in physical space. In early January, thousands of mathematicians will gather in San Diego for the joint meeting of the American Mathematical Society and the Mathematical Association of America. In the exhibition hall, Stein has paid the first-timers' rate of $400 to rent a booth alongside those of the major mathematical software companies, where he and students will hand out DVDs with copies of Sage.
"I think we can be better than the commercial versions," he said. "I really want it to be the best mathematical software in the world."
Sage research and student support is made possible by grants from the National Science Foundation. The Sage meetings are supported by various mathematical associations. The project has also received several thousand dollars in private donations.
For more information, contact Stein at (206) 543-1916, (206) 419-0925 or wstein@u.washington.edu.
The Sage project page is at www.sagemath.org.