We consider the dichotomy conjecture for consistent query answering under primary key constraints stating that for every fixed Boolean conjunctive query q, testing whether it is certain 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 $\Delta$ of subsets of database repairs with at most $k$ facts, where k is the size of the query $q$. The algorithm runs in polynomial time and can be formally defined as: 1. Initialize $\Delta$ with all sets $S$ of at most $k$ facts such that $S$ satisfies $q$. 2. Add any set $S$ of at most $k$ facts to $\Delta$ if there exists a block $B$ (ie, a maximal set of facts sharing the same key) such that for every fact $a$ of $B$ there is a set $S' \in \Delta$ contained in $(S \cup \{a\})$. The algorithm answers "$q$ is certain" iff $\Delta$ eventually contains the empty set. The algorithm correctly computes certain answers when the query $q$ falls in the polynomial time cases for self-join-free queries and path queries. For arbitrary 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.
翻译:我们考虑在主要关键限制下对一致解答的二分法猜想:对于每个固定的布利安对齐调质询 q,测试它是否肯定对给定的不一致数据库的所有修复都是多元时间或 CoNP 完成。这个猜想被核实为无自join 和路径查询。我们建议对一致解答采用简单的通胀固定点算法,对于一个特定数据库,它天真地计算了一套固定的 $\ Delta$ 的数据库修复子集, 最多为 $k美元, K是 查询的大小。 算法在混合解答题中运行的, 算法是 $$@ Delta$, 直译为“ 直译为 美元 ” 。 当某类解算时, 直译为美元, 直译为美元。 直译为美元。 当某类解算时, 直译为美元, 直译为美元。