论文标题
与不完整的数据库计数问题的复杂性
The Complexity of Counting Problems over Incomplete Databases
论文作者
论文摘要
我们研究了在不完整的数据库中出现的各种基本计数问题的复杂性,即可能包含未知值的关系数据库,以标记为空的nulls的形式。具体而言,我们假设这些未知值的域是有限的,对于布尔查询$ q $,我们考虑以下两个问题:给出以输入为不完整的数据库$ d $,(a)返回满足$ q $的$ d $的完成数;或(b)返回$ d $的nulls的估值数量,得出满足$ q $的完成。当$ q $是一种无自由结合的查询时,我们可以在这些问题的\#p-hardness和多项式时间计算之间获得二分法,并研究对以下两个限制的复杂性的影响:(1)每一个无零一次在$ d $ in $ d $中最多出现(称为codd tables); (2)每个空的域相同。粗略地说,我们表明,计数完成比计算估值要难得多:例如,尽管后者始终在\ #p中,但我们证明前者不在\ #p中,在某些广泛相信的理论复杂性假设下。此外,我们发现(1)和(2)都可以减少问题的复杂性。我们还研究了这些问题的近似性,并表明,虽然计算估值始终具有完全多项式的随机近似方案(FPRAS),但在大多数情况下,计算完成的估值却没有。最后,我们考虑更具表现力的查询语言,并在已知的复杂性类别上解决我们的问题。
We study the complexity of various fundamental counting problems that arise in the context of incomplete databases, i.e., relational databases that can contain unknown values in the form of labeled nulls. Specifically, we assume that the domains of these unknown values are finite and, for a Boolean query $q$, we consider the following two problems: given as input an incomplete database $D$, (a) return the number of completions of $D$ that satisfy $q$; or (b) return the number of valuations of the nulls of $D$ yielding a completion that satisfies $q$. We obtain dichotomies between \#P-hardness and polynomial-time computability for these problems when $q$ is a self-join-free conjunctive query, and study the impact on the complexity of the following two restrictions: (1) every null occurs at most once in $D$ (what is called Codd tables); and (2) the domain of each null is the same. Roughly speaking, we show that counting completions is much harder than counting valuations: for instance, while the latter is always in \#P, we prove that the former is not in \#P under some widely believed theoretical complexity assumption. Moreover, we find that both (1) and (2) can reduce the complexity of our problems. We also study the approximability of these problems and show that, while counting valuations always has a fully polynomial-time randomized approximation scheme (FPRAS), in most cases counting completions does not. Finally, we consider more expressive query languages and situate our problems with respect to known complexity classes.