brial: Boolean Ring Algebra implementation using binary decision diagrams#


BRiAl (“Boolean Ring Algebra”) is the successor to PolyBoRi.

The core of PolyBoRi is a C++ library, which provides high-level data types for Boolean polynomials and monomials, exponent vectors, as well as for the underlying polynomial rings and subsets of the powerset of the Boolean variables. As a unique approach, binary decision diagrams are used as internal storage type for polynomial structures. On top of this C++-library we provide a Python interface. This allows parsing of complex polynomial systems, as well as sophisticated and extendable strategies for Gröbner base computation. PolyBoRi features a powerful reference implementation for Gröbner basis computation.


GPL version 2 or later

Upstream Contact#




Version Information#



Equivalent System Packages#

$ sudo pacman -S brial
$ conda install brial
$ sudo apt-get install libbrial-dev libbrial-groebner-dev
$ sudo yum install brial brial-devel
$ sudo pkg install math/brial
$ sudo emerge sci-libs/brial
$ nix-env --install brial
$ sudo zypper install brial-devel
$ sudo xbps-install brial-devel


If the system package is installed, ./configure will check if it can be used.