Mathematica
A multi-paradigm computer algebra and technical computing system built on the symbolic Wolfram Language, spanning symbolic mathematics, numerics, visualization, and knowledge-based computation.
Created by Stephen Wolfram
Mathematica is a proprietary computer algebra and technical computing system developed by Wolfram Research. It is built on the Wolfram Language, a multi-paradigm language in which nearly everything is represented as a symbolic expression manipulated by transformation rules. Spanning symbolic mathematics, numerical computation, visualization, statistics, machine learning, and access to large curated knowledge bases, Mathematica is one of the most comprehensive integrated environments in technical computing.
History & Origins
Mathematica’s lineage begins with SMP (Symbolic Manipulation Program), a computer algebra system that Stephen Wolfram and Chris Cole began developing around 1979 in the physics department at Caltech. SMP was, in Wolfram’s own description, effectively “Version Zero” of the more ambitious system that would follow.
Wolfram began work on Mathematica in late 1986 and founded Wolfram Research in 1987 in Champaign, Illinois. Mathematica 1.0 was released on June 23, 1988, and was immediately recognized as a significant advance in technical computing. Early commercial momentum came when Steve Jobs arranged to bundle Mathematica with NeXT computers, with hardware vendors such as Sun, Silicon Graphics, and IBM following.
The Name
The name Mathematica was suggested to Wolfram by Steve Jobs. It captures the system’s ambition: a single environment for doing mathematics — symbolic, numeric, and graphical — by computer.
Design Philosophy
Mathematica’s defining idea is that everything is a symbolic expression. Numbers, functions, graphics, data, and even entire documents are represented uniformly as expressions of the form head[arg1, arg2, ...]. Computation proceeds by applying transformation rules to these expressions until no more rules apply.
This foundation gives the language several distinctive characteristics:
- Term rewriting at the core — Evaluation is driven by pattern matching and rule application, making it natural to define behavior by describing transformations rather than step-by-step procedures.
- Symbolic-first — The system manipulates expressions exactly and symbolically by default, computing derivatives, integrals, and algebraic simplifications in closed form before resorting to numerics.
- Functional style — Functions are first-class, and idiomatic code leans heavily on functional constructs like
Map,Apply, and pure functions. - Multi-paradigm — Procedural, rule-based, and functional styles all coexist, letting users choose the approach that fits the problem.
- Dynamic typing — Expressions are untyped in the conventional sense; the head of an expression conveys its meaning.
Key Features
Mathematica integrates an unusually broad range of capabilities into one system:
- Computer algebra — Exact symbolic manipulation: simplification, equation solving, calculus, and transforms.
- Numerical computation — Arbitrary-precision arithmetic and high-performance numerics, including packed arrays (introduced in Version 4.0) and sparse matrices (Version 5.0).
- Notebook interface — Since Version 3.0, notebooks combine code, typeset mathematics, formatted text, and interactive output in a single document — an early precursor to the computational notebook paradigm now familiar from tools like Jupyter.
- Dynamic interactivity —
Manipulate(Version 6.0) makes it trivial to build interactive visualizations with sliders and controls. - Curated knowledge — Built-in access to extensive curated data on topics from chemistry to geography, the same foundation that powers Wolfram|Alpha.
- Visualization — Publication-quality 2D and 3D graphics as a first-class part of the language.
Evolution
Mathematica has been developed continuously for over three decades. Major milestones include the typeset notebook front end (1996), high-performance numerics (1999–2003), the dynamic-interactivity release built around Manipulate (2007), and GPU computing with free-form linguistic input (2010).
A notable shift came in 2014: with Version 10.0, Wolfram Research formally named the underlying language the Wolfram Language. Mathematica is the flagship desktop application, while the Wolfram Language is the language itself — now also available through the Wolfram Engine, Wolfram Cloud, and Wolfram|Alpha. Recent releases through Version 14.3 (August 2025) have layered in machine learning and large language model tooling, alongside quality-of-life features such as dark mode.
Current Relevance
Mathematica remains a leading system for symbolic and technical computing, especially in academia and research where exact, closed-form manipulation is valued. Its breadth — combining symbolic algebra, numerics, visualization, and curated knowledge in one coherent language — continues to distinguish it from more narrowly scoped tools.
The system is commercial, though the Wolfram Engine is available free for developers under a personal-use license (including an official Docker image), and Wolfram|Alpha exposes much of the underlying technology to the public at no cost. While open-source languages like Python have captured much of the general data-science workflow, the Wolfram Language’s symbolic core and integrated design keep it in a category of its own.
Why It Matters
Mathematica demonstrated that an entire technical-computing workflow — from symbolic derivation to numerical experiment to interactive visualization to publishable document — could live inside one consistent, expression-based language. Its notebook interface helped popularize the idea of literate, interactive computing, and its symbolic, rule-based design remains one of the most fully realized examples of computation as expression transformation.
Timeline
Notable Uses & Legacy
Academic Research & Education
Widely used across universities for teaching and research in mathematics, physics, and engineering, particularly for symbolic algebra, calculus, and numerical experimentation.
Wolfram|Alpha
The Wolfram|Alpha computational knowledge engine is built on Mathematica technology and answers natural-language queries with computed results.
Scientific Computing & Physics
Used for symbolic derivations, theoretical physics calculations, and modeling where exact closed-form manipulation matters as much as numerical results.
Finance & Quantitative Analysis
Applied to derivative pricing, statistical modeling, and quantitative research where symbolic and numeric methods are combined.
Engineering & Data Visualization
Employed for algorithm prototyping, image processing, and high-quality technical visualization across engineering disciplines.
Language Influence
Influenced By
Influenced
Running Today
Run examples using the official Docker image:
docker pull wolframresearch/wolframengine:latestExample usage:
docker run --rm -v $(pwd):/app -w /app wolframresearch/wolframengine:latest wolframscript -file hello.wl