Wolfram Mathematica is a technical computing environment for Windows, macOS and Linux, with a cloud counterpart that runs in a web browser. You can calculate, analyze data, draw graphics, build interactive models and write programs in the Wolfram Language. All of this happens inside documents that mix code, results and explanatory text. Mathematica is commercial software sold under commercial, government, education, student and personal licenses, and a free trial is available.
Notebooks that mix code, results and text
Work in Mathematica happens in notebooks. A notebook is divided into cells. Brackets along the right edge show how input, output, headings and text cells are grouped. Pressing Shift+Enter evaluates an input cell and places the result directly below it. The result may be a number, a formula, a table, a 3D graphic or a working control panel.
Formulas are typeset in standard mathematical notation rather than shown as plain strings. Typing a function name brings up completion suggestions, and hovering over a function shows its template information. Pressing Ctrl+= opens free-form input. It converts a request written in ordinary English into Wolfram Language code before running it. Presenter Tools turn a notebook into a slide show for lectures and talks.
Symbolic and numeric mathematics
The Wolfram Language represents formulas, data, graphics, code and even interface elements as symbolic expressions. This lets one set of functions transform all of them. For mathematics, this means Mathematica can return exact answers with variables and radicals, or switch to numerical methods at a chosen precision.
- Equations: Solve and Reduce handle algebraic equations and inequalities. DSolve and NDSolve work on ordinary and partial differential equations, and RSolve solves recurrences.
- Calculus: Integrate, D, Limit, Sum and Series compute integrals, derivatives, limits, sums and series expansions; numerical versions such as NIntegrate cover cases without closed forms.
- Algebra: Simplify, Factor, Expand and Apart rewrite expressions, and assumptions (for example that a variable is positive) change what simplification is allowed.
- Transforms and special functions: Laplace, Fourier and Mellin transforms sit alongside Bessel, elliptic, zeta and other special functions.
- Optimization: Minimize, NMinimize and FindMinimum search for exact or numerical optima, with or without constraints.
Linear algebra, number theory, probability, discrete mathematics and finite element analysis are also covered.
Plots, charts and Manipulate panels
A single function call produces a plot from a formula or a list of values. Plot types include function graphs, 3D surfaces, contour and density plots, vector fields, histograms, bar and pie charts, box plots and word clouds. Options control labels, colors and legends, and 3D graphics can be rotated with the mouse.
Manipulate adds controls to any expression. The way you specify a variable decides the control. A numeric range gives a slider; a range with a step gives a stepped slider. A short list of choices gives a setter bar or popup menu. True/False gives a checkbox, and a color gives a color slider. Moving a control recomputes the expression immediately, and control values are saved with the notebook.
Data analysis and machine learning
Mathematica works with lists, associations, structured datasets and tabular data, with functions for selecting, grouping, sorting, counting and handling missing values. Statistical functions compute descriptive statistics, fit distributions and build linear, generalized linear and time-series models.
For machine learning, Classify and Predict train a classifier or predictor from examples with little setup. FindClusters, dimension reduction and anomaly detection explore unlabeled data. Mathematica also builds neural networks from layers, such as convolution and attention layers, and trains them with NetTrain. Large language models can also be called from code.
Curated data and plain-English queries
Mathematica connects to the Wolfram Knowledgebase, a curated collection of real-world data organized as entities with properties. A country, a chemical, a city or a stock is an Entity object. EntityValue retrieves properties such as population, molecular weight or elevation. These properties can go straight into calculations and plots. Interpreter turns typed text into entities, dates or quantities with units, and Wolfram|Alpha queries can run from inside a notebook.
Images, sound, geometry and specialist fields
The same notebook can handle other kinds of material:
- Images: adjustment, filtering, edge detection, segmentation, morphological operations, face detection and text recognition, inpainting and background removal.
- Audio and video: spectrograms, effects, speech recognition and synthesis, plus frame extraction, trimming and transcoding of video.
- Geometry: regions and meshes, area and volume measurement, mesh repair and output for 3D printing.
- Science and engineering: molecule structures and reaction balancing, maps and travel distances, sunrise and eclipse calculations, signal filters, and control-system design with Bode and Nyquist plots.
Importing files and linking to other systems
Import and Export read and write hundreds of formats. These include images, vector graphics, 3D models, audio, video, spreadsheets and JSON. They also include scientific formats such as HDF5, FITS and DICOM, chemical structure files, GIS shapefiles and documents such as PDF and Markdown.
Beyond files, Mathematica sends and receives web requests, opens network sockets, queries databases and runs external programs. It also evaluates code in other languages through external sessions, sends email and talks to connected devices.
Parallel computing and cloud deployment
ParallelMap, ParallelTable and Parallelize split work across several Wolfram Language kernels on one computer. Compile converts numeric functions into faster code. Larger jobs can run on remote machines or in the Wolfram Cloud.
Mathematica code can also be published to the cloud. CloudDeploy turns a function into a web API that other software calls by URL. FormFunction creates a web form that runs a computation on submitted values, and scheduled tasks run code at set times. You can embed interactive notebooks and results in web pages. Cloud notebooks open in the desktop application as well as in the browser.
AI Assistant inside notebooks
Mathematica includes an AI Assistant that takes a request in plain language and returns Wolfram Language code with an explanation. You can run the code as is or edit it first. It also explains code, helps fix errors and writes tests. You can open it with a chat bar in the notebook or keep it in a sidebar. Active Mathematica plans include a basic AI Access level for light use; Pro and Research levels are paid upgrades with stronger models and higher usage limits.
Sharing with Wolfram Player
People without a Mathematica license can open notebooks in the free Wolfram Player for Windows, macOS, Linux and iOS. Player displays notebooks and keeps their interactive elements working. This lets someone who only has the free viewer explore a Manipulate model built in Mathematica.





