FLOC 2018: FEDERATED LOGIC CONFERENCE 2018
PySAT: A Python Toolkit for Prototyping with SAT Oracles

Authors: Alexey Ignatiev, Antonio Morgado and Joao Marques-Silva

Paper Information

Title:PySAT: A Python Toolkit for Prototyping with SAT Oracles
Authors:Alexey Ignatiev, Antonio Morgado and Joao Marques-Silva
Proceedings:SAT Proceedings
Editors: Christoph M. Wintersteiger and Olaf Beyersdorff
Keywords:toolkit, SAT solvers, cardinality encodings, prototyping, python
Abstract:

ABSTRACT. Boolean satisfiability (SAT) solvers are at the core of efficient approaches for solving a vast multitude of practical problems. Moreover, albeit targeting an NP-complete problem, SAT solvers are increasingly used for tackling problems beyond NP. Despite the success of SAT in practice, modeling with SAT and more importantly implementing SAT-based problem solving solutions is often a difficult and error-prone task. This paper proposes the PySAT toolkit, which enables fast Python-based prototyping using SAT oracles and SAT-related technology. PySAT provides a simple API for working with a few state-of-the-art SAT oracles and also integrates a number of cardinality constraint encodings, all aiming at simplifying the prototyping process. Experimental results presented in the paper show that PySAT-based implementations can be as efficient as those written in a low-level language.

Pages:9
Talk:Jul 12 14:30 (Session 76G: Tools & Applications II)
Paper: