1 Introduction
The notion of critical tuple was introduced by Miklau and Suciu [2], who also claimed that the problem of checking whether a tuple is noncritical is complete. Kostylev identified an error in the 12pagelong hardness proof. It turns out that the issue is rather fundamental: the proof can be adapted to show hardness of a relative variant of tuplenoncriticality, but we have neither been able to prove the original claim nor found an algorithm for it of lower complexity. In this note we state formally the relative variant and present an alternative, simplified proof of its hardness; we also give an NPhardness proof for the original problem, the best lower bound we have been able to show. Hence, the precise complexity of the original critical tuple problem remains open.
2 Problem definition
Consider a firstorder signature without functional symbols. A tuple (or fact) is a ground atom. A database instance, or instance for short, is a set of tuples. A Boolean conjunctive query, or just query for short, is an implicitly existentially quantified firstorder sentence of the form
over atoms , for , with predicates
and vectors of variables
. A homomorphism from a query to an instance is a mapping from the variables of to constants such that every atom of is mapped to a tuple in . It is wellknown that if there exists such a homomorphism, then holds on .The following is the definition of a critical tuple as it is given in [2] (modulo straightforward equivalent modifications).
Definition
A tuple is critical for a query if and only if there exists an instance with a homomorphism from to such that there is no homomorphism from to .
Next we give the definition of a relative critical tuple, which is slightly different from the previous one. However, as we will see later, this difference may have important consequences for the computational complexity of the considered problems.
Definition
A tuple is critical for a query relative to an atom in if and only if there exists an instance with a homomorphism from to sending to such that there is no homomorphism from to .
We note that if is critical for relative to an atom then it is critical for . However, the converse fails. Indeed, take over variables , and , and over constants and . Then is noncritical relative to the first atom, , because if a homomorphism from to an instance maps to then it sets , and therefore the image of the second atom is the tuple making redundant for witnessing . However, is critical for because holds on the instance , but false on .
As mentioned above, Miklau and Suciu showed completeness of the problem of checking whether a tuple is not critical for a query [2]. Alas, the proof of hardness is incorrect. The problem is that the constructed mapping from the variables of the query to the instance (i.e., in our notation) may not be a homomorphism, contrary to what is claimed. In particular, in case in Section A.13 when is a bad instance and we have that , while for , since . Hence, is not a homomorphism, because it does not send atom anywhere— does not have , and is not by itself.
3 Complexity of relative critical tuple problem
In this section we prove the completeness of the problem of checking whether a tuple is not critical for a query relative to an atom. Note, however, that this result immediately implies only membership of the original critical tuple problem, but says nothing about its hardness.
Theorem 1
Given a tuple , a query , and an atom in , it is complete to decide whether is not critical for relative to .
Proof. The upper complexity bound is straightforward, because we can restrict the search for an instance witnessing criticality to the search only through the instances of the size at most the size of the query ; therefore, a possible algorithm first guesses such an instance with a homomorphism from to sending to , and then calls for an NP oracle to check that there is no homomorphism from to .
Next we prove the lower complexity bound. The proof is by reduction of 3SAT—that is, of a canonical complete problem. Consider a quantified Boolean formula , where and are vectors of distinct propositional variables, and is a conjunction of clauses of the form with each either a propositional variable in or the negation of such a variable. We assume that each variable appears in both positively and negatively (we can do it without loss of generality, because if it is not the case for some , then we can add to a clause without changing the validity of ). We construct a tuple , a query , and an atom in such that is not critical for relative to if and only if is valid.
In the reduction we will use a predicate of arity 4 and, for each clause in , a predicate of arity 6.
First, let be the tuple , where , and are constants.
Then, let consist of the following, where all arguments are variables:

the atoms and ;

the atoms , , and for each ;

for every clause in with each literal over a propositional variable ,

the atom
(1) where, for ,

the atoms
(2) for each (of 7) assignment of , and satisfying , where, for ,

and the atoms
(3) for each (of 8) assignment of , and , where the are as before.

For example, for a clause with and query contains atoms
(4) 
Finally, let be the first atom above, .
We prove the reduction correct by means of the following two claims, the first for the forward direction and the second for the backward direction.
Claim 1
If is not critical for relative to then is valid.
Proof. Let be not critical for relative to . We need to prove that is valid. To this end, consider an arbitrary assignment of . We show that there exists an extension of to such that evaluates to under the extended .
Consider a mapping sending

, , , and to , , , and , respectively;

, , and to , , and , respectively, for each such that ;

, , and to , , and , respectively, for each such that ; and

all other variables to fresh constants.
Let also , so that is a homomorphism from to sending to . In particular, contains the following tuples over :
Since, by our assumption, is not critical for relative to , there exists a homomorphism from to .
First, we claim that (which is different from by the fact that is a fresh constant). Indeed, on the one hand, should be one of the tuples in except , so is one of , , (for ), and . On the other hand, , for any clause , is the image of one of the atoms under , so is either or . Therefore, the only option satisfying both conditions is . This fact also implies that . Moreover, since , .
We also claim that is either or for each . Indeed, since and , is the image of one of the 7 atoms under for any . So, considering any that has a literal over any variable , is either or .
Therefore, we can consider the extension of assignment to such that, for any , if and otherwise. We next prove that evaluates to under the extended .
To this end, we first show that for each such that . Indeed, this can be shown similarly to the claim above about . On the one hand, should be one of the tuples in with the first two arguments equal and except , so is one of , , (for ), and . On the other, by our assumption there exists a clause in with a positive literal , so, for this , is the image of one of the atoms under , which implies that is either or . Therefore, the only option satisfying both conditions is . Moreover, this only option for the atom implies that .
In fact, is either or for each as above—that is, such that . This can be shown in exactly the same way as above, except that is also an option in the first condition, because is not and hence belongs to . Moreover, this implies that if then , and if then .
In a symmetrical way, we can prove that, for each such that , is and is either or .
Consider now the mapping that is the same as except that

for each with , and

for each with .
In other words, if has two options as described above for some or , then takes the option that is different from .
We now claim that is also a homomorphism from to . To verify this, we need to check that the images of all the atoms with and in under are in for every with , and the images of all the atoms with and are in for every with . We do it just for the first case, and the second is symmetric. To this end, consider any with .
First, and appear in the atom in . As we discussed above, there are two options for : it is either or . By construction, just picks the first option for this atom.
Second, appears in atom (1) over for each with (for our example clause and this atom is listed first in (4)). Since and , the image of this atom under is the image of one of the 7 atoms (2) for under , corresponding to the assignments satisfying (in the example they are in the left column). Here, a change of the value of from , as can be in , to , as in , preserves a homomorphism, because a change of value of a literal in a clause from to cannot turn the assignment from satisfying to not satisfying (in the example, for every atom with as the second argument in the first column there is the same atom with instead).
Third, appears in several atoms (2) over for each as in the previous case (e.g., the 4 atoms with in the rest of the first column in (4)). Since and , the images of these atoms under are among the images of the 8 atoms (3) for under (i.e., the right column in (4) for the example). Possible change from to as the value of preserves the homomorphism by the construction of atoms (3).
Finally, appears in several atoms (3) over for each (e.g., the 4 atoms with in the second column in (4)). Since , the images of these atoms under are also among (3), and changing the value of from to preserves the homomorphism as in the previous case.
So, overall we have that is a homomorphism from to such that

and for each with ,

and for each with ,

for each with , and

for each with .
By the construction of atoms (2) this means that satisfies all clauses —that is, is true under . Since our original choice of as an assignment of was arbitrary, is indeed valid, as required.
Claim 2
If is valid then is not critical for relative to .
Proof. Let is valid—that is, for all assignments of there exists its extension to such that evaluates to under the extention. We need to show that is not critical for relative to . To this end, consider an arbitrary instance with a homomorphism from to sending to . We prove that there is a homomorphism from to . Consider an assignment of satisfying such that for if and only if sends the atom of to (which exists since is valid). We construct a mapping from the variables of to constants so that it sends

, , , and to , , , and , respectively;

and to and , respectively, for every with ;

and to and , respectively, for every with ;

to for every with ;

to for every with ;

to ; and

all other variables same as .
We claim that is a homomorphism from to . Indeed, sends

atoms and to ;

for each , atom either to , if , or to otherwise;

for each , atom either to , if , or to otherwise;

for each , atom to ;
Since the choice of was arbitrary, we conclude that is indeed not critical for relative to .
Therefore, the reduction is indeed correct and the theorem is proven.
4 Complexity of critical tuple problem
In this section we show NPhardness of the original critical tuple problem. Since the best known upper bound for this problem is (see [2], the proof is very similar to the membership proof in Theorem 1), we leave the precise complexity open.
Theorem 2
Given a tuple and a query , it is NPhard to decide whether is not critical for .
Proof. The proof is by reduction of the graph homomorphism problem. Let and be two directed graphs. Without loss of generality, we assume that is weakly connected—that is, there exists an undirected path from any node to any node. We construct a tuple and a query , and then prove that is not critical for if and only if there is a homomorphism from to .
Let be with and constants, while consist of the following atoms, where all arguments are variables:

for each edge of and ;

for an arbitrarily chosen node of ; and

for each node of .
We next prove that is not critical for if and only if there is a homomorphism from to , and start with the forward direction. Since is not critical for , for every instance with a homomorphism from there is a homomorphism from to . Consider a mapping from the variables of to constants that sends and to and , respectively, and all other variables to fresh constants. Let , so that is a homomorphism from to . Since is not critical, there is a homomorphism from to . Note that, by construction, there is no node of and constant such that is in . Therefore, has to be for a node of . Since is weakly connected and graphs and do not have common nodes, this holds also for all other nodes of . So, defines a homomorphism from to , as required.
We proceed to prove the backward direction of the claim. To this end, let there be a homomorphism from to . We need to prove that is not critical for —that is, for every instance with a homomorphism from there is a homomorphism from to . Consider such an instance and a homomorphism from to . Since for any node of the atom cannot be mapped to by , the mapping that sends

to for each node of ,

to , and

to for each node of
is a homomorphism from to , as required.
5 Conclusion
Besides its own importance in database theory, the hardness of the critical tuple problem, claimed in [2], has been used to establish hardness of several other problems throughout the literature (e.g., in [1]). Therefore, until the hardness of the critical tuple problem is proved, all these results should be revised. In particular, it should be identified which of these problems could be proven hard by an independent reduction and which are for now open together with the critical tuple problem.
References

[1]
Bernardo Cuenca Grau and Egor V. Kostylev.
Logical foundations of privacypreserving publishing of Linked
Data.
In
Proc. of the 30th AAAI Conference on Artificial Intelligence (AAAI 2016)
, pages 943–949, 2016.  [2] Gerome Miklau and Dan Suciu. A formal analysis of information disclosure in data exchange. J. Comput. Syst. Sci., 73(3):507–534, 2007.