A Review of Mathematica RICHARD J. FATEMAN ∗
[email protected] Computer Science Division, University of California, Berkeley, CA 94720, USA 16 September 1991 Abstract The Mathematica computer system is reviewed from the perspective of its contributions to symbolic and algebraic computation, as well as its stated goals. Design and implementation issues are discussed. 1 Introduction The Mathematica1 computer program is a general system for doing mathematical computation [51][52]. It includes a command language, a programming language, and a calculation environment that is oriented toward symbolic as well as numeric mathematics. The back cover of the manual [52] provides excerpts from rave notices like “The importance of [Mathematica] cannot be overlooked. it so fundamentally alters the mechanics of mathematics.” —The New York Times. Fortune [47] says “. it will do, instantaneously, virtually all of applied mathematics. .” Hype aside, the program is without question interesting to mathematicians, computer scientists, and engineers because of its combination of a number of ∗This work has been supported in part by the following: the National Science Foundation under grant numbers CCR-8812843 and CDS-8922788, through the Center for Pure and Applied Mathe- matics and the Electronics Research Laboratory (ERL) at the University of California at Berkeley; the Defense Advanced Research Projects Agency (DoD) ARPA order #4871, monitored by Space & Naval Warfare Systems Command under contract N00039-84-C-0089, through ERL; and grants from the IBM Corporation, the State of California MICRO program, and Sun Microsystems. 1 Mathematica is a trademark of Wolfram Research Inc. (WRI). 1 technologies that have arisen in initially separate contexts—numerical and sym- bolic mathematics, graphics, and modern user interfaces.