Skip to main content


logo

Symbolica website Zulip Chat Symbolica website Codecov

Symbolica ⊆ Modern Computer Algebra

Symbolica is a blazing fast computer algebra system for Python and Rust, born of a need to push the boundaries of computations in science and enterprise. Check out the live Jupyter Notebook demo!

For documentation and more, see symbolica.io.

Quick Example

Symbolica allows you to build and manipulate mathematical expressions, for example from a Jupyter Notebook:

A demo of Symbolica

You are able to perform these operations from the comfort of a programming language that you (probably) already know, by using Symbolica's bindings to Python and Rust:

A demo of Symbolica

Installation

Symbolica can be installed for Python 3.9 or newer using pip:

pip install symbolica

Visit the Get Started page for detailed installation instructions.

For Pyodide 314.x (Python 3.14), install the PyEmscripten wheel with micropip:

import micropip
await micropip.install("symbolica")

The WebAssembly build uses Symbolica's Rust numeric backends. Native code generation is unavailable in this build.

Examples

Below we list some examples of the features of Symbolica. Check the guide for a complete overview.

Pattern matching

Variables ending with a _ are wildcards that match to any subexpression. In the following example we try to match the pattern f(w1_,w2_):

from symbolica import *
x, y, w1_, w2_, f = S('x','y','w1_','w2_', 'f')
e = f(3,x)*y**2+5
r = e.replace_all(f(w1_,w2_), f(w1_ - 1, w2_**2))
print(r)

which yields y^2*f(2,x^2)+5.

Solving a linear system

Solve a linear system in x and y with a parameter c:

from symbolica import *

x, y, c, f = S('x', 'y', 'c', 'f')

x_r, y_r = Expression.solve_linear_system(
    [f(c)*x + y + c, y + c**2], [x, y])
print('x =', x_r, ', y =', y_r)

which yields x = (-c+c^2)*f(c)^-1 and y = -c^2.

Series expansion

Perform a series expansion in x:

from symbolica import *
e = E('exp(5+x)/(1-x)').series(S('x'), 0, 3)

print(e)

which yields (exp(5))+(2*exp(5))*x+(5/2*exp(5))*x^2+(8/3*exp(5))*x^3+𝒪(x^4).

Rational arithmetic

Symbolica is world-class in rational arithmetic, outperforming Mathematica, Maple, Form, Fermat, and other computer algebra packages. Simply convert an expression to a rational polynomial:

from symbolica import *
p = E('(x*y^2*5+5)^2/(2*x+5)+(x+4)/(6*x^2+1)').to_rational_polynomial()
print(p)

which yields (45+13*x+50*x*y^2+152*x^2+25*x^2*y^4+300*x^3*y^2+150*x^4*y^4)/(5+2*x+30*x^2+12*x^3).

Community packages

Version 3.0 ships core Symbolica and symbolic integration, including step-by-step explanations, through symbolica-integrate 2.0. Integration rule metadata is compressed to reduce download size.

Native wheels also include Spenso, Idenso, FeynKit HEP tools, Vakint, and the example extension. PyEmscripten wheels include Idenso, Spenso, HEP, and the example extension. Vakint and Spenso's compiled evaluators require a native installation.

The HEP classes are available directly under symbolica.community.hepkit, including FeynmanDiagram, Model, Generator, CffGenerator, and TensorReducer.

Development

Follow the development and discussions on Zulip!

Metadata

Release files for symbolica 3.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for symbolica 3.0.2
File Size Uploaded
symbolica-3.0.2.tar.gz 2.6 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for symbolica 3.0.2
File
symbolica-3.0.2-cp314-abi3-pyemscripten_2026_0_wasm32.whl CPython 3.14 abi3 PyEmscripten 2026.0+ WebAssembly Details
symbolica-3.0.2-cp39-abi3-win_amd64.whl CPython 3.9 abi3 Windows x86-64 Details
symbolica-3.0.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 abi3 Linux glibc 2.17+ x86-64 Details
symbolica-3.0.2-cp39-abi3-macosx_11_0_arm64.whl CPython 3.9 abi3 macOS 11.0+ ARM64 Details
symbolica-3.0.2-cp39-abi3-macosx_10_12_x86_64.whl CPython 3.9 abi3 macOS 10.12+ x86-64 Details

Total release size: 375.7 MB

Release files / symbolica-3.0.2.tar.gz

Download URL symbolica-3.0.2.tar.gz
Size 2.6 MB
Tags Source
SHA-256 checksum
How to use checksums
31473a7413374aa34344044a86d0f1e549999e4d22fc7af9eb25ce33fb7de15f
BLAKE2b-256 checksum
How to use checksums
f70c62d080a2ad563214ae45643930c0f70251078c569e2e01d62f3ae15037c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / symbolica-3.0.2-cp314-abi3-pyemscripten_2026_0_wasm32.whl

Download URL symbolica-3.0.2-cp314-abi3-pyemscripten_2026_0_wasm32.whl
Size 43.4 MB
Tags CPython 3.14 PyEmscripten 2026.0+ WebAssembly abi3
SHA-256 checksum
How to use checksums
7563175271b587541c18d58a2775f09302c08f9b105e630944a3ed9fc4d73f77
BLAKE2b-256 checksum
How to use checksums
ca1ced89b4323b7d7b119abcb727f107010c45939e42a2b1779187992697a361
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / symbolica-3.0.2-cp39-abi3-win_amd64.whl

Download URL symbolica-3.0.2-cp39-abi3-win_amd64.whl
Size 85.0 MB
Tags CPython 3.9 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
0f153a4b8415478f8cb8b0b5c71604db399395d56b21ce3e03dd45bd5a4aeeda
BLAKE2b-256 checksum
How to use checksums
14ed5c4ac77e5f3bc62b0958868c3f1310b8096991aa4fbcdcfb5adb398f3f0a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / symbolica-3.0.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL symbolica-3.0.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 83.7 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
25ddf0b492b1f00a856decdac6f957d97d3f368e50ffb03a4df76e9d68e4d04e
BLAKE2b-256 checksum
How to use checksums
c22ec7ee7edc5b88b4515ef4fad28a3277898f96573478caa72d1a0e72a989cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / symbolica-3.0.2-cp39-abi3-macosx_11_0_arm64.whl

Download URL symbolica-3.0.2-cp39-abi3-macosx_11_0_arm64.whl
Size 74.7 MB
Tags CPython 3.9 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
eec329725c645664c79341172c28e7c32cd1ff57dfbdc48770a18b14d78984f6
BLAKE2b-256 checksum
How to use checksums
fe24945153be28377a70c2c15ec40ec571cb4e180194e464716e52725bad68a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release files / symbolica-3.0.2-cp39-abi3-macosx_10_12_x86_64.whl

Download URL symbolica-3.0.2-cp39-abi3-macosx_10_12_x86_64.whl
Size 86.2 MB
Tags CPython 3.9 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
849013ff0b1628dfc01f9a07b732e495aa81c1250f8d514289a81acd50796f9a
BLAKE2b-256 checksum
How to use checksums
e39f482a0547a76a73b3caf1c395e2015ea92c754ddf7b39024ce04899993834
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.15.0

Release history Release notifications | RSS feed

This release

3.0.2 This release

6 release files

3.0.0

6 release files

2.2.0

5 release files

2.1.0

5 release files

2.0.0

5 release files

1.5.1

5 release files

1.5.0

5 release files

1.4.0

5 release files

1.3.1

5 release files

1.3.0

5 release files

1.2.0

5 release files

1.1.0

4 release files

1.0.5

4 release files

1.0.4

4 release files

1.0.3

3 release files

1.0.2

3 release files

1.0.1

3 release files

1.0.0

5 release files

0.20.0

5 release files

0.17.0

5 release files

0.16.0

5 release files

0.15.1

4 release files

0.15.0

5 release files

0.14.0

5 release files

0.13.0

5 release files

0.11.0

5 release files

0.10.0

4 release files

0.9.0

4 release files

0.8.0

4 release files

0.7.0

4 release files

0.6.0

4 release files

0.5.0

2 release files

0.4.0

4 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page