Compiling problem specification into SAT

  • Authors:
  • Marco Cadoli;Andrea Schaerf

  • Affiliations:
  • Dipartimento di Informatica e Sistemistica, Università di Roma "La Sapienza", Via Salaria 113, I-00198 Roma, Italy;Dipartimento di Ingegneria Elettrica, Gestionale e Meccanica, Università di Udine, Via delle Scienze 208, I-33100 Udine, Italy

  • Venue:
  • Artificial Intelligence - Special volume on reformulation
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a compiler that translates a problem specification into a propositional satisfiability test (SAT). Problems are specified in a logic-based language, called NP-SPEC, which allows the definition of complex problems in a highly declarative way, and whose expressive power is such as to capture all problems which belong to the complexity class NP. The target SAT instance is solved using any of the various state-of-the-art solvers available from the community. The system obtained is an executable specification language for all NP problems which shows interesting computational properties. The performance of the system has been tested on a few classical problems, namely graph coloring, Hamiltonian cycle, job-shop scheduling, and on a real-world scheduling application, namely the tournament scheduling problem.