3 research outputs found
Recognition and Exploitation of Gate Structure in SAT Solving
In der theoretischen Informatik ist das SAT-Problem der archetypische Vertreter der Klasse der NP-vollstÀndigen Probleme, weshalb effizientes SAT-Solving im Allgemeinen als unmöglich angesehen wird.
Dennoch erzielt man in der Praxis oft erstaunliche Resultate, wo einige Anwendungen Probleme mit Millionen von Variablen erzeugen, die von neueren SAT-Solvern in angemessener Zeit gelöst werden können.
Der Erfolg von SAT-Solving in der Praxis ist auf aktuelle Implementierungen des Conflict Driven Clause-Learning (CDCL) Algorithmus zurĂŒckzufĂŒhren, dessen LeistungsfĂ€higkeit weitgehend von den verwendeten Heuristiken abhĂ€ngt, welche implizit die Struktur der in der industriellen Praxis erzeugten Instanzen ausnutzen.
In dieser Arbeit stellen wir einen neuen generischen Algorithmus zur effizienten Erkennung der Gate-Struktur in CNF-Encodings von SAT Instanzen vor, und auĂerdem drei AnsĂ€tze, in denen wir diese Struktur explizit ausnutzen.
Unsere BeitrĂ€ge umfassen auch die Implementierung dieser AnsĂ€tze in unserem SAT-Solver Candy und die Entwicklung eines Werkzeugs fĂŒr die verteilte Verwaltung von Benchmark-Instanzen und deren Attribute, der Global Benchmark Database (GBD)
URSA: A System for Uniform Reduction to SAT
There are a huge number of problems, from various areas, being solved by
reducing them to SAT. However, for many applications, translation into SAT is
performed by specialized, problem-specific tools. In this paper we describe a
new system for uniform solving of a wide class of problems by reducing them to
SAT. The system uses a new specification language URSA that combines imperative
and declarative programming paradigms. The reduction to SAT is defined
precisely by the semantics of the specification language. The domain of the
approach is wide (e.g., many NP-complete problems can be simply specified and
then solved by the system) and there are problems easily solvable by the
proposed system, while they can be hardly solved by using other programming
languages or constraint programming systems. So, the system can be seen not
only as a tool for solving problems by reducing them to SAT, but also as a
general-purpose constraint solving system (for finite domains). In this paper,
we also describe an open-source implementation of the described approach. The
performed experiments suggest that the system is competitive to
state-of-the-art related modelling systems.Comment: 39 pages, uses tikz.st