A comparison of encodings for cardinality constraints in a SAT solver

Ed Wynn

Cardinality constraints are important in many Sat problems; previous studies provide contradictory conclusions about the best encoding to use. Here, three encodings are compared: Sinz's sequential-counter, Bailleux and Boufkhad's tree-based, and Ab\'{\i}o and coworkers' sort-based approaches. The sequential-counter approach is found to be the fastest of these for a range of related, combinatorial test cases. All encodings permit multiple solutions in the auxiliary variables for a single solution to the main variables; the numbers of multiple solutions can be very large, and might impede a Sat solver. Variants of the encodings are developed, where extra clauses reduce the numbers of multiple solutions. These variants are found to have remarkably little effect on solution time, even when the number of clauses is approximately doubled. The results accentuate the well-known observation that clause count and other measures of encoding size are not reliable indicators of the difficulty of a Sat problem.

Knowledge Graph



Sign up or login to leave a comment