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.
We build our mathematical functionality on top of existing, optimized packages:
Download / Sage-Interface
PolyBoRi is part of the Sage distribution of mathematical software. Installing and using PolyBoRi via Sage is the preferred way. Alternatively, our own Python interface is available on our download pages. Prebuild rpm packages for some distribution can be found at the openSuSE build service.