Skip to content

inducer/pymbolic

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.

Pymbolic: Easy Expression Trees and Term Rewriting

Gitlab Build Status Github Build Status Python Package Index Release Page Zenodo DOI for latest release

Pymbolic 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: