Justifying All Differences Using Pseudo-Boolean Reasoning

Authors

  • Jan Elffers Lund University
  • Stephan Gocht Lund University
  • Ciaran McCreesh University of Glasgow
  • Jakob Nordstr”öm University of Copenhagen

DOI:

https://doi.org/10.1609/aaai.v34i02.5507

Abstract

Constraint programming solvers support rich global constraints and propagators, which make them both powerful and hard to debug. In the Boolean satisfiability community, proof-logging is the standard solution for generating trustworthy outputs, and this has become key to the social acceptability of computer-generated proofs. However, reusing this technology for constraint programming requires either much weaker propagation, or an impractical blowup in proof length. This paper demonstrates that simple, clean, and efficient proof logging is still possible for the all-different constraint, through pseudo-Boolean reasoning. We explain how such proofs can be expressed and verified mechanistically, describe an implementation, and discuss the broader implications for proof logging in constraint programming.

Downloads

Published

2020-04-03

How to Cite

Elffers, J., Gocht, S., McCreesh, C., & Nordstr”öm, J. (2020). Justifying All Differences Using Pseudo-Boolean Reasoning. Proceedings of the AAAI Conference on Artificial Intelligence, 34(02), 1486-1494. https://doi.org/10.1609/aaai.v34i02.5507

Issue

Section

AAAI Technical Track: Constraint Satisfaction and Optimization