arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2301.08482cs.DBcs.LO
收藏

主键约束下一致性查询回答的简单算法

A Simple Algorithm for Consistent Query Answering under Primary Keys

Diego Figueira, Anantha Padmanabha, Luc Segoufin, Cristina Sirangelo

AI总结:

提出一种简单的膨胀不动点算法,用于主键约束下一致性查询回答,在无自连接和路径查询的多项式时间情形下正确判定确定性,对任意查询提供下近似保证。

摘要:

我们考虑主键约束下一致性查询回答的二分猜想。该猜想指出,对于每个固定的布尔合取查询q,测试q是否确定(即给定不一致数据库的所有修复上是否求值为真)要么是多项式时间,要么是coNP完全的。该猜想已对无自连接查询和路径查询得到验证。我们提出一种用于一致性查询回答的简单膨胀不动点算法,对于给定数据库,该算法朴素地计算数据库事实的规模至多为k的子集集合Δ,其中k是查询q的规模。该算法在多项式时间内运行,可形式化定义为:(1)用所有规模至多为k且满足S⊨q的事实集合S初始化Δ。(2)如果存在一个块B(即共享相同键的事实最大集合),使得对于B中的每个事实a,存在S'⊆S∪{a}且S'∈Δ,则将任何规模至多为k的事实集合S添加到Δ。对于输入数据库D,当且仅当Δ最终包含空集时,算法回答“q是确定的”。当查询q属于已知无自连接查询和路径查询二分法的多项式时间情形时,算法正确计算确定性。对于任意布尔合取查询,该算法是一种下近似:如果算法声称查询确定,则查询保证确定。然而,存在多项式时间确定查询(含自连接)未被算法识别为确定。

英文摘要:

We consider the dichotomy conjecture for consistent query answering under primary key constraints. It states that, for every fixed Boolean conjunctive query q, testing whether q is certain (i.e. whether it evaluates to true over all repairs of a given inconsistent database) is either polynomial time or coNP-complete. This conjecture has been verified for self-join-free and path queries. We propose a simple inflationary fixpoint algorithm for consistent query answering which, for a given database, naively computes a set $Δ$ of subsets of facts of the database of size at most k, where k is the size of the query q. The algorithm runs in polynomial time and can be formally defined as: (1) Initialize $Δ$ with all sets $S$ of at most $k$ facts such that $S\models q$. (2) Add any set $S$ of at most k facts to $Δ$ if there exists a block $B$ (i.e., a maximal set of facts sharing the same key) such that for every fact $a \in B$ there is a set $S' \subseteq S \cup \{a\}$ such that $S'\in Δ$. For an input database $D$, the algorithm answers "q is certain" iff $Δ$ eventually contains the empty set. The algorithm correctly computes certainty when the query q falls in the polynomial time cases of the known dichotomies for self-join-free queries and path queries. For arbitrary Boolean conjunctive queries, the algorithm is an under-approximation: the query is guaranteed to be certain if the algorithm claims so. However, there are polynomial time certain queries (with self-joins) which are not identified as such by the algorithm.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑