Constraint processing in relational database systems: from theory to implementation

Constraint satisfaction problems (CSP) are frequently solved over data residing in relational database systems. In such scenarios, the database is typically just used as a data storage back end. However, there exist important advantages, such as the wide availability of database practices and tools for modeling, to having database systems that are capable of natively modeling and solving CSPs. This paper introduces general concepts and techniques to extend a database system with constraint processing capabilities. Input CSPs are modeled via SQL, augmented with a non-deterministic guess operator as introduced by Cadoli and Mancini (TPLP 2007). Problems are represented with a combination of internal relations and parse trees, and are translated to a flexible intermediate problem representation that is subsequently translated into several common representations for SAT. Benchmarks with a prototype system show the feasibility of the approach and demonstrate the promise of a strong integration of CSP solvers and database systems.

[1]  Leonid Libkin,et al.  Elements Of Finite Model Theory (Texts in Theoretical Computer Science. An Eatcs Series) , 2004 .

[2]  Toni Mancini,et al.  Combining Relational Algebra, SQL, and Constraint Programming , 2002, FroCoS.

[3]  Ilkka Niemelä,et al.  Smodels: A System for Answer Set Programming , 2000, ArXiv.

[4]  Ian Miguel,et al.  The Rules of Constraint Modelling , 2005, IJCAI.

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

[6]  Leonid Libkin,et al.  Elements of Finite Model Theory , 2004, Texts in Theoretical Computer Science.

[7]  Dina Q. Goldin,et al.  Constraint query algebras , 2004, Constraints.

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

[9]  James J. Lu,et al.  A Case Study in Engineering SQL Constraint Database Systems (Extended Abstract) , 2008, ICLP.

[10]  Toni Mancini,et al.  Combining relational algebra, SQL, constraint modelling, and local search* , 2006, Theory and Practice of Logic Programming.

[11]  A. Kuehlmann,et al.  A fast pseudo-Boolean constraint solver , 2005, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[12]  Ronald Fagin Generalized first-order spectra, and polynomial. time recognizable sets , 1974 .

[13]  Yuliya Lierler,et al.  Answer Set Programming Based on Propositional Satisfiability , 2006, Journal of Automated Reasoning.

[14]  P. Barth A Davis-Putnam based enumeration algorithm for linear pseudo-Boolean optimization , 1995 .

[15]  Hantao Zhang,et al.  SATO: An Efficient Propositional Prover , 1997, CADE.

[16]  Stuart Kent,et al.  Advanced visual modelling: beyond UML , 2002, Proceedings of the 24th International Conference on Software Engineering. ICSE 2002.

[17]  Wenfei Fan,et al.  Conditional functional dependencies for capturing data inconsistencies , 2008, TODS.

[18]  Barry O'Sullivan Introduction to the Special Issue on User-Interaction in Constraint Satisfaction , 2004, Constraints.

[19]  Marco Cadoli,et al.  : Compiling problem specifications into SAT , 2005, Artif. Intell..

[20]  Eugenia Ternovska,et al.  Grounding for Model Expansion in k-Guarded Formulas with Inductive Definitions , 2007, IJCAI.

[21]  P. Harker,et al.  Scheduling a Major College Basketball Conference , 1998 .

[22]  Martin Gebser,et al.  GrinGo : A New Grounder for Answer Set Programming , 2007, LPNMR.

[23]  Thomas Schwentick,et al.  Solving Equations in the Relational Algebra , 2004, SIAM J. Comput..

[24]  Vladimir Lifschitz,et al.  Answer Set Programming , 2019 .

[25]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[26]  Matthew L. Ginsberg,et al.  Generalizing Boolean Satisfiability I: Background and Survey of Existing Work , 2011, J. Artif. Intell. Res..