Writing Declarative Specifications for Clauses

Modern satisfiability (SAT) solvers provide an efficient implementation of classical propositional logic. Their input language, however, is based on the conjunctive normal form (CNF) of propositional formulas. To use SAT solver technology in practice, a user must create the input clauses in one way or another. A typical approach is to write a procedural program that generates formulas on the basis of some input data relevant for the problem domain and translates them into CNF. In this paper, we propose a declarative approach where the intended clauses are specified in terms of rules in analogy to answer set programming (ASP). This allows the user to write first-order specifications for intended clauses in a schematic way by exploiting term variables. We develop a formal framework required to define the semantics of such specifications. Moreover, we provide an implementation harnessing state-of-the-art ASP grounders to accomplish the grounding step of clauses. As a result, we obtain a general-purpose clause-level grounding approach for SAT solvers. Finally, we illustrate the capabilities of our specification methodology in terms of combinatorial and application problems.

[1]  Maurice Bruynooghe,et al.  Modeling Machine Learning and Data Mining Problems with FO(·) , 2012, ICLP.

[2]  Peter van Beek,et al.  Fast Optimal Instruction Scheduling for Single-Issue Processors with Arbitrary Latencies , 2001, CP.

[3]  Johan Wittocx,et al.  Grounding FO and FO(ID) with Bounds , 2010, J. Artif. Intell. Res..

[4]  J. McCarthy ELABORATION TOLERANCE , 1997 .

[5]  Shahab Tasharrofi,et al.  Stable-unstable semantics: Beyond NP with normal logic programs , 2016, Theory Pract. Log. Program..

[6]  Peter J. Stuckey,et al.  The MiniZinc Challenge 2008-2013 , 2014, AI Mag..

[7]  Niklas Sörensson,et al.  Translating Pseudo-Boolean Constraints into SAT , 2006, J. Satisf. Boolean Model. Comput..

[8]  Martin Gebser,et al.  Answer Set Programming as SAT modulo Acyclicity , 2014, ECAI.

[9]  Tomi Janhunen,et al.  Some (in)translatability results for normal logic programs and propositional theories , 2006, J. Appl. Non Class. Logics.

[10]  Jeffrey D. Uuman Principles of database and knowledge- base systems , 1989 .

[11]  Miroslaw Truszczynski,et al.  Tools for modeling and solving search problems , 2006, AI Commun..

[12]  John S. Schlipf,et al.  The Expressive Powers of the Logic Programming Semantics , 1995, J. Comput. Syst. Sci..

[13]  Wolfgang Faber,et al.  The DLV system for knowledge representation and reasoning , 2002, TOCL.

[14]  Martin Gebser,et al.  Advances in gringo Series 3 , 2011, LPNMR.

[15]  Toby Walsh,et al.  Handbook of satisfiability , 2009 .

[16]  Andrei Voronkov,et al.  Proof Systems for Effectively Propositional Logic , 2008, IJCAR.

[17]  David G. Mitchell,et al.  Enfragmo: A System for Modelling and Solving Search Problems with Logic , 2012, LPAR.

[18]  Torsten Schaub,et al.  Unsatisfiability-based optimization in clasp , 2012, ICLP.

[19]  Gerda Janssens,et al.  Experimental Evaluation of a State-Of-The-Art Grounder , 2014, PPDP '14.

[20]  Inês Lynce,et al.  Efficient Haplotype Inference with Pseudo-boolean Optimization , 2007, AB.

[21]  Inês Lynce,et al.  Efficient Haplotype Inference with Combined CP and OR Techniques , 2008, CPAIOR.

[22]  Kenneth A. Ross,et al.  The well-founded semantics for general logic programs , 1991, JACM.

[23]  Eugenia Ternovska,et al.  SAT-to-SAT: Declarative Extension of SAT Solvers with New Propagators , 2016, AAAI.

[24]  Jinbo Huang Universal Booleanization of Constraint Models , 2008, CP.

[25]  Martin Gebser,et al.  On the Input Language of ASP Grounder Gringo , 2009, LPNMR.

[26]  Michael Gelfond,et al.  Classical negation in logic programs and disjunctive databases , 1991, New Generation Computing.

[27]  Shahab Tasharrofi,et al.  Declarative Solver Development: Case Studies , 2016, KR.

[28]  Gilles Audemard,et al.  A Restriction of Extended Resolution for Clause Learning SAT Solvers , 2010, AAAI.

[29]  Miroslaw Truszczynski,et al.  Answer set programming at a glance , 2011, Commun. ACM.

[30]  Stephan Schulz A Comparison of Different Techniques for Grounding Near-Propositional CNF Formulae , 2002, FLAIRS Conference.

[31]  David G. Mitchell,et al.  Grounding Formulas with Complex Terms , 2011, Canadian Conference on AI.

[32]  Shahab Tasharrofi,et al.  Solving QBF Instances with Nested SAT Solvers , 2016, AAAI Workshop: Beyond NP.

[33]  Marco Cadoli,et al.  Compiling Problem Specifications into SAT , 2001, ESOP.

[34]  Malte Helmert,et al.  Concise finite-domain representations for PDDL planning tasks , 2009, Artif. Intell..

[35]  Jukka Corander,et al.  Learning Chordal Markov Networks by Constraint Satisfaction , 2013, NIPS.

[36]  Gerda Janssens,et al.  Compiling Input* FO(·) inductive definitions into tabled prolog rules for IDP3 , 2013, Theory Pract. Log. Program..

[37]  Albert Oliveras,et al.  Cardinality Networks: a theoretical and empirical study , 2011, Constraints.

[38]  Martin Gebser,et al.  SAT Modulo Graphs: Acyclicity , 2014, JELIA.

[39]  Karem A. Sakallah,et al.  Symmetry and Satisfiability , 2021, Handbook of Satisfiability.

[40]  Timo Soininen,et al.  Extending and implementing the stable model semantics , 2000, Artif. Intell..