References & Citations
Computer Science > Databases
Title: A Simple Algorithm for Consistent Query Answering under Primary Keys
(Submitted on 20 Jan 2023 (v1), revised 23 Jan 2023 (this version, v2), latest version 26 Jan 2023 (v3))
Abstract: 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.
Submission history
From: Anantha Padmanabha [view email][v1] Fri, 20 Jan 2023 09:28:43 GMT (4148kb,D)
[v2] Mon, 23 Jan 2023 10:19:49 GMT (3470kb,D)
[v3] Thu, 26 Jan 2023 11:44:16 GMT (3466kb,D)
Link back to: arXiv, form interface, contact.