Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/inducer/pymbolic
A simple package to do symbolic math (focus on code gen and DSLs)
https://github.com/inducer/pymbolic
code-generation computer-algebra expression-tree python symbolic-computation term-rewriting
Last synced: 2 days ago
JSON representation
A simple package to do symbolic math (focus on code gen and DSLs)
- Host: GitHub
- URL: https://github.com/inducer/pymbolic
- Owner: inducer
- License: other
- Created: 2011-07-08T04:56:43.000Z (over 13 years ago)
- Default Branch: main
- Last Pushed: 2025-01-23T23:06:31.000Z (12 days ago)
- Last Synced: 2025-01-26T09:01:52.604Z (9 days ago)
- Topics: code-generation, computer-algebra, expression-tree, python, symbolic-computation, term-rewriting
- Language: Python
- Homepage: http://mathema.tician.de/software/pymbolic
- Size: 1.14 MB
- Stars: 112
- Watchers: 7
- Forks: 25
- Open Issues: 11
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
- Citation: CITATION.cff
Awesome Lists containing this project
README
Pymbolic: Easy Expression Trees and Term Rewriting
==================================================.. image:: https://gitlab.tiker.net/inducer/pymbolic/badges/main/pipeline.svg
:alt: Gitlab Build Status
:target: https://gitlab.tiker.net/inducer/pymbolic/commits/main
.. image:: https://github.com/inducer/pymbolic/workflows/CI/badge.svg?branch=main&event=push
:alt: Github Build Status
:target: https://github.com/inducer/pymbolic/actions?query=branch%3Amain+workflow%3ACI+event%3Apush
.. image:: https://badge.fury.io/py/pymbolic.png
:alt: Python Package Index Release Page
:target: https://pypi.org/project/pymbolic/
.. image:: https://zenodo.org/badge/2016193.svg
:alt: Zenodo DOI for latest release
:target: https://zenodo.org/badge/latestdoi/2016193Pymbolic is a small expression tree and symbolic manipulation library. Two
things set it apart from other libraries of its kind:* Users can easily write their own symbolic operations, simply by deriving
from the builtin visitor classes.
* Users can easily add their own symbolic entities to do calculations
with.Pymbolic currently understands regular arithmetic expressions, derivatives,
sparse polynomials, fractions, term substitution, expansion. It automatically
performs constant folding, and it can compile its expressions into Python
bytecode for fast(er) execution.If you are looking for a full-blown Computer Algebra System, look at
`sympy `__ or
`PyGinac `__. If you are looking for a
basic, small and extensible set of symbolic operations, pymbolic may
well be for you.Resources:
* `PyPI package `__
* `Documentation `__
* `Source code (GitHub) `__