论文标题
利用数据库管理系统和树宽用于计数
Exploiting Database Management Systems and Treewidth for Counting
论文作者
论文摘要
有界的树宽是最引用的组合不变性之一,该组合型不变性物质在文献中用于有效地解决几个计数问题。 #sat是一个规范的计数问题,它要求计算布尔公式的令人满意的作业。最近的工作表明,#Sat的基准测试实例通常具有相当小的树宽。本文讨论了小树宽实例的计数问题。我们介绍了一个通用框架,以根据最先进的数据库管理系统(DBM)解决计数问题。我们的框架通过在树分解(TD)上使用动态编程(DP)求解实例,从而明确地利用了小树宽。因此,我们将DP的概念实现为DBM(PostgreSQL),因为DP算法通常是根据理论上的表操作给出的。这允许DP算法的优雅规格以及使用SQL操纵记录和表格,这使我们有一种自然的方法将DP算法付诸实践。据我们所知,我们提出了第一种使用DBM的TD算法的方法。我们方法的一个关键优点是,DBM自然允许处理具有有限的主内存(RAM),并行化以及暂停计算的巨大桌子。
Bounded treewidth is one of the most cited combinatorial invariants, which was applied in the literature for solving several counting problems efficiently. A canonical counting problem is #SAT, which asks to count the satisfying assignments of a Boolean formula. Recent work shows that benchmarking instances for #SAT often have reasonably small treewidth. This paper deals with counting problems for instances of small treewidth. We introduce a general framework to solve counting questions based on state-of-the-art database management systems (DBMS). Our framework takes explicitly advantage of small treewidth by solving instances using dynamic programming (DP) on tree decompositions (TD). Therefore, we implement the concept of DP into a DBMS (PostgreSQL), since DP algorithms are already often given in terms of table manipulations in theory. This allows for elegant specifications of DP algorithms and the use of SQL to manipulate records and tables, which gives us a natural approach to bring DP algorithms into practice. To the best of our knowledge, we present the first approach to employ a DBMS for algorithms on TDs. A key advantage of our approach is that DBMS naturally allow to deal with huge tables with a limited amount of main memory (RAM), parallelization, as well as suspending computation.