A pearl on SAT and SMT solving in Prolog

  • Authors:
  • Jacob M. Howe;Andy King

  • Affiliations:
  • Department of Computing, City University London, EC1V 0HB, United Kingdom;School of Computing, University of Kent, Canterbury, CT2 7NF, United Kingdom

  • Venue:
  • Theoretical Computer Science
  • Year:
  • 2012

Quantified Score

Hi-index 5.23

Visualization

Abstract

A succinct SAT solver is presented that exploits the control provided by delay declarations to implement watched literals and unit propagation. Despite its brevity the solver is surprisingly powerful and its elegant use of Prolog constructs is presented as a programming pearl. Furthermore, the SAT solver can be integrated into an SMT framework which exploits the constraint solvers that are available in many Prolog systems.