🤖 AI Summary
This work proposes the first native SAT solver that directly supports multi-valued discrete logic, circumventing the semantic loss and performance bottlenecks inherent in traditional approaches that binarize discrete variables before invoking Boolean SAT solvers. By performing inference directly in the discrete domain, the method preserves the semantic structure of variables and introduces several key innovations: discrete unit propagation, native clause learning, a discrete CNF representation, and an efficient search strategy. Experimental results demonstrate that the proposed solver significantly outperforms conventional CSP solvers, binarization-based SAT methods, and hybrid solvers across multiple benchmarks, thereby substantially expanding the applicability of SAT technology to discrete reasoning problems.
📝 Abstract
Discrete variables are common in many applications, such as probabilistic reasoning, planning and explainable AI. When symbolic reasoning techniques are brought in to bear on these applications, a standard technique for handling discrete variables is to binarize them into Boolean variables to allow the use of Boolean computational machinery such as SAT solvers. This technique can face both computational and semantical challenges though. In this work, we develop a native SAT solver for discrete logic, which is a direct extension of Boolean logic in which variables can take arbitrary values. Our proposed solver has a similar design to Boolean SAT solvers, with ingredients such as unit resolution and clause learning but ones that operate natively on discrete variables. We illustrate the merits of the developed SAT solver by comparing it empirically to CSP solvers applied to discrete CNFs, to Boolean SAT solver applied to binarized CNFs, and to some hybrid solvers.