PB-SAT

PB-SAT is a SAT-based pseudo-Boolean solver. It is described in the following paper:

Panagiotis Manolios and Vasilis Papavasileiou. Pseudo-Boolean Solving by Incremental Translation to SAT. FMCAD, 2011. [PDF]

PB-SAT uses PicoSAT as the backend.

A Note on Partial Assignments

The core algorithm of our solver can work with partial assignments, as described in the paper.

At the time of writing, the latest available version of PicoSAT (936) did not provide support for partial assignments. Therefore, the implementation used in the experimental section and provided below uses complete assignments.

We have experimented with partial assignments. For more information, contact us.

Source Code

The source code is publicly available. It requires SBCL, a Quicklisp installation and PicoSAT compiled as a shared library.