Compiling Finite Domain Constraints to SAT with BEE: the Director's Cut
Michael Codish, Yoav Fekete, Amit Metodi

TL;DR
BEE is a compiler that translates finite domain constraints into SAT problems using equi-propagation and fragment-based reasoning, with recent enhancements including hybrid encoding and complete equi-propagation.
Contribution
This paper details undocumented implementation aspects of BEE, such as hybrid encoding and complete equi-propagation, and discusses extending BEE to binary number representations.
Findings
Enhanced encoding of cardinality constraints
Implementation of complete equi-propagation
Ongoing work on binary number representation
Abstract
BEE is a compiler which facilitates solving finite domain constraints by encoding them to CNF and applying an underlying SAT solver. In BEE constraints are modeled as Boolean functions which propagate information about equalities between Boolean literals. This information is then applied to simplify the CNF encoding of the constraints. We term this process equi-propagation. A key factor is that considering only a small fragment of a constraint model at one time enables to apply stronger, and even complete reasoning to detect equivalent literals in that fragment. Once detected, equivalences propagate to simplify the entire constraint model and facilitate further reasoning on other fragments. BEE is described in several recent papers. In this paper, after a quick review of BEE, we elaborate on two undocumented details of the implementation: the hybrid encoding of cardinality constraints…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsFormal Methods in Verification · Logic, programming, and type systems · Model-Driven Software Engineering Techniques
