<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">On the Decidability of Consistent Query Answering</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Marcelo</forename><surname>Arenas</surname></persName>
							<email>marenas@ing.puc.cl</email>
							<affiliation key="aff0">
								<orgName type="department">Department of Computer Science</orgName>
								<orgName type="institution">Pontificia Universidad Católica de Chile</orgName>
								<address>
									<settlement>Santiago</settlement>
									<country key="CL">Chile</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Leopoldo</forename><surname>Bertossi</surname></persName>
							<email>bertossi@scs.carleton.ca</email>
							<affiliation key="aff1">
								<orgName type="department">School of Computer Science</orgName>
								<orgName type="institution">Carleton University</orgName>
								<address>
									<settlement>Ottawa</settlement>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">On the Decidability of Consistent Query Answering</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">24BD0FA61AB344F64250D9633BB87ACC</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T23:29+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Consistent query answering (CQA) is about formally characterizing and computing semantically correct answers to queries posed to a database that may fail to satisfy certain integrity constraints. In this paper, we revisit the decidability status of consistent query answering by considering different parameters of the problem as input to the decision problem. More specifically, we obtain some new results about the undecidability and combined complexity of CQA.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Consistent query answering (CQA) is about formally characterizing and computing semantically correct answers to queries posed to a database that may fail to satisfy certain integrity constraints (ICs). This problem was brought into the main stream research on foundations of databases by <ref type="bibr" target="#b2">[3]</ref>. Informally, a consistent answer to a query Q posed to a relational database instance D that may not satisfy a set IC of integrity constraints is as a usual answer to Q that can be obtained from every minimal repair of D. A minimal repair D ′ of D satisfies IC and minimally departs from D (after enforcing the ICs). Different repair semantics can be obtained by playing with different notions of distance between database instances. In this paper, we stick to the original distance introduced and studied in <ref type="bibr" target="#b2">[3]</ref>: A repair of D makes minimal under set inclusion the set of tuples in (D D ′ ) ∪ (D ′ D), i.e., the symmetric set difference. In particular, this assumes that IC violations are solved by insertions or deletions of whole database tuples. For recent surveys of CQA we refer to <ref type="bibr" target="#b6">[7,</ref><ref type="bibr" target="#b12">13]</ref>.</p><p>The complexity of CQA problem, i.e., of deciding if a tuple is a consistent answer to a query under a given set of ICs, has been investigated in several papers and under several repairs semantics <ref type="bibr" target="#b10">[11,</ref><ref type="bibr" target="#b11">12,</ref><ref type="bibr" target="#b26">27,</ref><ref type="bibr" target="#b17">18,</ref><ref type="bibr" target="#b7">8,</ref><ref type="bibr" target="#b20">21,</ref><ref type="bibr" target="#b27">28,</ref><ref type="bibr" target="#b1">2,</ref><ref type="bibr" target="#b22">23]</ref>. As expected most all the complexity results have been about data complexity, i.e., in terms of the size of the original instance D. Few results have been presented on combined complexity, where other parameters are also taken into account, e.g. size of the query or of the set of ICs. There are also few results about undecidability of CQA. Exceptions in this direction are <ref type="bibr" target="#b10">[11,</ref><ref type="bibr" target="#b7">8]</ref>; and both refer to a form of combined undecidability, i.e., without a fixed query and a fixed set of ICs. We do not elaborate more on <ref type="bibr" target="#b7">[8]</ref>, because the repair semantics is different from the one investigated in this paper. Furthermore, the results in <ref type="bibr" target="#b7">[8]</ref> heavily rely on having denial constraints that involve numerical attributes.</p><p>However, some results in <ref type="bibr" target="#b10">[11]</ref> are highly relevant in our context. The framework there considers a combination of key constraints (KCs) and inclusion dependencies (IDs). In case of inconsistency, KCs are repaired via tuple deletions; but IDs are repaired only by insertion of tuples. If the original instance is consistent wrt the KCs, then inconsistencies are solved by insertion of whole tuples, which can happen in possibly many different ways, and only constrained by the KCs. The new tuples can take values in the database domain associated to the schema. In this case, the repairs minimize the set of inserted tuples wrt set inclusion.</p><p>It is proved in <ref type="bibr" target="#b10">[11]</ref> that CQA is undecidable. This result is obtained by reduction from the problem of deciding entailment of dependencies from a set of functional dependencies (FDs) and inclusion dependencies: F ∪ I |= δ? Here, F and I are sets of FDs and IDs, respectively, and δ is a dependency. This problem is undecidable <ref type="bibr">[1, theorem 9.2.4]</ref>. A careful examination of the proof in <ref type="bibr">[11, theorems 3.2, 3.4]</ref>, shows that the reduction in it requires, in essence, generating for the combination of F , I and δ an ad hoc combination of KCs, IDs, a query and a database instance. In consequence, the undecidability result involves as input to the problem all the three natural parameters of CQA, namely the ICs, the query and the instance. The set I is actually a cyclic set of IDs.</p><p>In this paper, we revisit the decidability status of consistent query answering by considering different parameters of the problem as input to the decision problem. We obtain some new results about the undecidability and combined complexity of CQA. More specifically, we prove that CQA is undecidable for all the combinations of the possible inputs (instance, ICs, query) to the problem depending upon the parameters that are left fixed. We also establish the decidability of CQA for a broad class of universal ICs, with the combination of instance, ICs, and query as the input. Furthermore, we study the combined complexity on data and ICs (fixed query) for this class of dependencies.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Preliminaries</head><p>If we start from a database schema S, including a countably infinite database domain U , we may consider the first-order language L(S) based on the predicates in S and the constants for the elements of U . Database instances for schema S are Herbrand structures with domain U and finite extensions for the interpretations of the predicates in S. In consequence, a database instance D can be identified with a set of ground atoms R( t), with R ∈ S and t a finite sequence of elements of U of the same length as the arity of R. The active domain of D, denoted by dom(D), is the finite set that contains all the elements of U that appear in D.</p><p>We also allow built-in predicates in L(S), like =, =, &lt;, etc., that have fixed and predefined extensions in a database instance.</p><p>An integrity constraint (IC) over a database schema S is a first-order sentence in L(S). In particular, a universal IC is a sentence of the form ∀x ψ, where ψ does not contain any quantifiers. We use IC to denote a set of integrity constraints, and we assume that IC is consistent in the sense that there is some database instance that makes it true, but not necessarily by the one at hand. It is always the case that in CQA, and also in this paper, we consider database instances that may not satisfy the given set of ICs.  Notice that the extensions of the built-in predicates do not contribute to ∆, because they have fixed extensions, identical in every database instance. Queries are formulas of L(S). If a query is a sentence, i.e., it has not free variables, it is called a Boolean query. We assume that queries and ICs satisfy the usual syntactic safety conditions <ref type="bibr" target="#b24">[25]</ref> that make them domain independent <ref type="bibr" target="#b16">[17,</ref><ref type="bibr" target="#b23">24]</ref>. This means that they can be evaluated or checked against the active domain of the database instance.</p><p>For a query Q(x), with free variables in x, and a database instance D, a tuple t of constants of U is an answer to Q in D iff D |= Q[ t], i.e., Q is true in D when the variables in x are replaced by the corresponding values in t.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 3 ([3]</head><p>). Given a set of integrity constraints, a (ground) tuple t is a consistent answer to a query Q(x) in a database instance D wrt a set of integrity constraints IC , denoted</p><formula xml:id="formula_0">D |= IC Q[ t], if for every repair D ′ of D wrt IC , D ′ Q[ t]. If Q is Boolean, then yes is the consistent answer if for every repair D ′ of D, D ′ Q; otherwise the consistent answer is no. 2<label>3</label></formula><p>The Decision Problem of CQA</p><p>The computational problem of retrieving consistent answers to a query from a possibly inconsistent database can be studied by concentrating on the decision problem of consistent query answering. Actually, this gives rise to several decision problems depending on which of the natural parameters involved are considered to be fixed and which are considered to be a part of the input. The most basic decision problems of CQA are the following. (b) For a database instance D and a consistent set IC of integrity constraints:</p><formula xml:id="formula_1">q-CQA(D, IC ) := {Q | Q is a Boolean query and D |= IC Q}. 2 Problem d -CQA(Q, IC</formula><p>) is the problem of CQA in data, where the ICs and the query are fixed -the parameters of the problem-and the database is variable, i.e., the input. The data complexity <ref type="bibr" target="#b25">[26]</ref> of CQA is precisely the complexity of this problem, for different classes of parameters IC, Q. As common in database research, this is the problem that has been investigated the most. This problem is decidable for all common classes of ICs and queries, and tight complexity bounds have been established <ref type="bibr">[11, 12,</ref> </p><p>We may consider combined versions of the CQA decision problem. For example, for a given Boolean query Q:</p><formula xml:id="formula_3">{d, ic}-CQA(Q) := {(D, IC ) | D is a database instance,</formula><p>IC is a set of ICs and D |= IC Q}, <ref type="bibr" target="#b0">(1)</ref> and, more generally,</p><formula xml:id="formula_4">{d, q, ic}-CQA := {(D, Q, IC ) | D is a database instance, Q is a Boolean query, IC is a set of ICs and D |= IC Q}. (2)</formula><p>In what follows, when we refer to {d}-CQA(Q, IC ), we mean d-CQA(Q, IC ), as in Definition 4; the same for ic and q. The complexity of {d , q}-CQA(IC ) is usually called combined complexity of CQA (with fixed ICs). It is measured in terms of the size of both the database and the query. In the case of {q, ic, d}-CQA, the instance, the query and the set of ICs become part of the input. All this decision problems can also be stated for queries with free variables, say Q(x), and tuples t of constants in U , asking if t is a consistent answer. Since the schema has the constants in U , we may restrict ourselves to Boolean queries. As already indicated above, it holds: Proposition 1 ( <ref type="bibr" target="#b10">[11]</ref>). {d, q, ic}-CQA is undecidable.</p><p>2</p><p>The proof of this proposition given in <ref type="bibr" target="#b10">[11]</ref> uses key constraints and cyclic sets of referential integrity constraints (RICs) <ref type="bibr" target="#b0">[1]</ref>. The existential quantifiers of the RICs are satisfied by picking up values from the underlying database domain U . We should mention that, in <ref type="bibr" target="#b9">[10]</ref>, {q, ic, d}-CQA was made decidable for this type of ICs by considering repairs based on introduction of null values as used in SQL databases. Those null values are used for the existential variables in the RICs. Actually, the decidability follows in <ref type="bibr" target="#b9">[10]</ref> from the use of disjunctive Datalog programs with stable model semantics <ref type="bibr" target="#b18">[19,</ref><ref type="bibr" target="#b14">15]</ref> to specify the repairs of the original instance wrt universal ICs and RICs, including those considered in <ref type="bibr" target="#b10">[11]</ref>. These repair programs have been used before <ref type="bibr" target="#b4">[5,</ref><ref type="bibr" target="#b19">20,</ref><ref type="bibr" target="#b5">6]</ref>, and they provide an upper bound of Π P 2 for the time complexity of d-CQA(Q, IC ) <ref type="bibr" target="#b13">[14]</ref>. This is also a lower bound since CQA can be Π P 2 -complete in data <ref type="bibr" target="#b11">[12]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Undecidability of CQA</head><p>Now we turn to some of the other decision problems for CQA. Clearly, for Y ⊆ X ⊆ {d, ic, q}, if X-CQA is decidable, then also Y-CQA is decidable, but not necessarily the other way around. We first consider the problem of CQA in integrity constrains.</p><p>Proposition 2. There exist a database instance D and a Boolean query Q such that ic-CQA(D, Q) is undecidable.</p><p>Proof. Let S be a database schema that contains a binary predicate E and a unary predicate P . Consider the instance D of S whose extension for P is {P (a)}, where a is an element of U , and whose extension for E is ∅. Now we address the problem of CQA in queries, that is, when queries are the input of the problem. The complexity of this decision problem is the query complexity of CQA <ref type="bibr" target="#b25">[26]</ref>.</p><p>Proposition 3. There exists a database instance D and a consistent set IC of integrity constraints such that q-CQA(D, IC ) is undecidable.</p><p>Proof. Let S be a database schema containing a unary predicate P , a binary predicate E, a ternary predicate F and built-in predicate ≤ that is interpreted in such a way that (U, ≤) is isomorphic to (N, ≤). Then let D be the empty instance of S, and IC be a set consisting of the following integrity constraints:</p><formula xml:id="formula_5">∃xP (x), ∀u∀v(E(u, v) ↔ ∃yF (u, v, y)), ∀x∀y(P (x) ∧ y ≤ x → ∃u∃vF (u, v, y)).</formula><p>Consider SAT := {ψ ∈ L({E}) | ψ is satisfiable}. As mentioned in the proof of Proposition 2, this problem is undecidable over finite graphs. Next we show that the restriction of SAT to finite graphs can be reduced to the complement of q-CQA(D, IC ). In fact, we prove that ψ ∈ SAT iff ¬ψ ∈ q-CQA(D, IC ). Assume that ψ ∈ SAT , and let D ′ be a database instance over {E} satisfying ψ. Define a database instance D ⋆ over S as follows. The interpretation of E in D ⋆ coincides with the interpretation of E in D ′ . Let t1 , . . ., tm be the tuples in the interpretation of E in D ′ , and assume that a 1 , . . ., a m are the first m elements of U according to linear order ≤. Then the interpretations of P and F in D ⋆ are {a m } and {( ti , a i ) | 1 ≤ i ≤ m}, respectively. It is straightforward to prove that D ⋆ |= IC . Furthermore, D ⋆ is a repair of D since no proper subset of D ⋆ satisfies IC . Thus, given that D ⋆ |= ψ, we conclude that D |= IC ¬ψ and, therefore, ¬ψ / ∈ q-CQA(D, IC ). The other implication is immediate, which concludes the proof of the proposition.</p><p>2</p><p>Finally, we also consider the case when integrity constraints and queries are considered to be fixed.</p><p>Proposition 4. There exist a Boolean query Q and a consistent set IC of integrity constraints such that d -CQA(Q, IC ) is undecidable.</p><p>Proof. We will reduce to the complement of our problem the halting problem for deterministic Turing machines with empty string on an infinite unidirectional tape with alphabet 0, 1, B (blank). The integrity constraints will codify the dynamics of the machine, and the database instance will contain the transition function δ of the machine. Repairing the instance wrt the dynamics of the machine corresponds to making the machine compute. The initial and final states are q 0 , q f , respectively. We need the following predicates:</p><p>1. Head (t, p): At time t the head is at position with number p of the tape. 2. State(t, q): At time t the state is q.</p><p>3. Conf a (t, p): At time t and position p the symbol read is a. Here, a = B; and a blank is represented by the absence of 0 or 1. 4. δ a,a ′ ,R (q, q ′ ): Being at state q, reading a causes, according to the transition function δ, to write a ′ , move to the right (R) and jump to state q ′ . There are similar predicates, L, for left. 5. Succ(n, n ′ ): For natural numbers n, n ′ , it holds that n ′ is the successor of n. This predicate can be defined using the built-in predicate &lt;, and its definition can be part of IC . Thus, we also assume that the database schema contains a built-in predicate &lt; that is interpreted in such a way that (U, &lt;) is isomorphic to (N, &lt;).</p><p>Assume that a 0 is the first element of U according to linear order &lt;. Then IC contains the following sentences:</p><p>(a) Head (a 0 , a 0 ) and State(a 0 , q 0 ). (b) ∀p(¬Conf 0 (a 0 , p) ∧ ¬Conf 1 (a 0 , p)). This formula states that that we start with a blank tape. In general, we represent with ¬Conf 0 (t, p) ∧ ¬Conf 1 (t, p) the fact that at time t in position p there is a blank.</p><p>(c) For a = B and a ′ = B:</p><formula xml:id="formula_6">∀t∀t ′ ∀q∀q ′ ∀p∀p ′ State(t, q) ∧ Head (t, p) ∧ Conf a (t, p) ∧ δ a,a ′ ,L (q, q ′ ) ∧ Succ(t, t ′ ) ∧ Succ(p ′ , p) → Conf a ′ (t ′ , p) ∧ Head (t ′ , p ′ ) ∧ State(t ′ , q ′ ) .</formula><p>There is a similar sentence for δ a,a ′ ,R . If a is B, in the previous formula Conf a (t, p) is replaced by ¬Conf 0 (t, p) ∧ ¬Conf 1 (t, p), obtaining:</p><formula xml:id="formula_7">∀t∀t ′ ∀q∀q ′ ∀p∀p ′ State(t, q) ∧ Head (t, p) ∧ ¬Conf 0 (t, p) ∧ ¬Conf 1 (t, p) ∧ δ B,a ′ ,L (q, q ′ ) ∧ Succ(t, t ′ ) ∧ Succ(p ′ , p) → Conf a ′ (t ′ , p) ∧ Head (t ′ , p ′ ) ∧ State(t ′ , q ′ ) .</formula><p>Similar formulas are obtained when a ′ = B. (d) For every a = B:</p><formula xml:id="formula_8">∀t∀t ′ ∀p∀p ′ (Head (t, p) ∧ p = p ′ ∧ Succ(t, t ′ ) → (Conf a (t, p ′ ) ↔ Conf a (t ′ , p ′ ))).</formula><p>The query Q is ¬∃t State(t, q f ). All these elements determine a particular decision problem of the form q-CQA(IC , Q), parameterized by IC and Q. Now, we show that this problem is undecidable by reduction from the halting problem.</p><p>For a machine M , the database instance D(M ) corresponds to the transition function δ by means of the δ-predicates above and their contents. The other relations are empty. It holds that M halts at state q f iff D(M ) |= IC Q. In fact: (⇒) In this case, there is a repair D(M ) ′ corresponding to the finite computation of M , i.e., it contains all the configuration tuples that lead to the final state. For this repair, it holds that D(M ) ′ |= Q. Thus, D(M ) |= IC Q.</p><p>(⇐) Assume M does not halt at state q f . We have two cases: First, assume that M does not halt (at any state). The infinite computation does not generate a repair, because repairs have finite relations. In this case, repairs can be obtained by deletion of tuples from D(M ), and then they correspond to sub-function of the original δ. None of the computations related to such a repair can reach state q f , because they represent subcomputation of the original machine (the determinism of the machine is crucial here). In this case, all the repairs satisfy Q and, therefore D(M ) |= IC Q. In the second case, M halts at a state different from q f . A similar argument as in the previous case can be applied.</p><p>2</p><p>It is important to notice that the proof of Proposition 4 relies on the availability of a built-in linear order. Also, in this proof we use universal ICs except for the definition of the successor function. However, this definition, namely ∀m∀n(Succ(m, n) ↔ m &lt; n ∧ ¬∃j(m &lt; j ∧ j &lt; n)), as an IC does not contain "repairable" predicates, i.e., database predicates. Thus, one could also rely on the availability of a built-in successor predicate to prove this proposition, avoiding the use of non-universal constraints. The propositions above have been established for the single input cases in Definition 4. However, several possible inputs can be combined, as in ( <ref type="formula">1</ref>) and (2). From Propositions 2, 3 and 4, we obtain: Theorem 1 (Undecidability of consistent query answering). For every nonempty subset X of {d, q, ic}, there are cases where X-CQA is undecidable. The cases depend upon the parameters of the problem, i.e., on {d, q, ic} X. 2</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Combined Decidability and Complexity of CQA</head><p>In this section, we concentrate on a particular but common class of ICs. Definition 5. An integrity constraint is a safe universal IC if both:</p><p>(a) It is logically equivalent to a sentence of the form</p><formula xml:id="formula_9">∀( m i=1 P i (x i ) ∨ n j=1 ¬Q j (ȳ j ) ∨ ψ),<label>(3)</label></formula><p>where ∀ represents the universal closure of the formula, xi , ȳj are tuples of variables, the P i , Q j are database predicates, and ψ is a formula that mentions only the built-in predicates. (b) Each variable in an xi or ψ in (3) appears in some ȳj .</p><p>2</p><p>The second condition is the safety condition that guarantees domain independence <ref type="bibr" target="#b16">[17,</ref><ref type="bibr" target="#b23">24]</ref>. It is easy to see that, according to this definition, the ICs in Proposition 4 are not safe, nor domain independent.</p><p>Theorem 2. For finite sets IC of safe universal ICs, and Boolean queries Q, the problem of CQA, i.e., {(D, Q, IC ) | D |= IC Q}, is decidable.</p><p>Proof. We may assume that the sentences in IC are in the clausal form (3). This representation for ICs allows us to determine all the repairs of a database that does not satisfy them: From the domain independence condition, the finitely many tuples that participate in a violation and whose modification may lead to a restoration of the consistency of the database, can be obtained by posing to D, for each IC (3), the domain independent query about the set of violating tuples:</p><formula xml:id="formula_10">V (ȳ 1 , . . . , ȳn ) :- n j=1 Q j (ȳ j ) ∧ ¬ψ ∧ m i=1 ¬P i (x i ).</formula><p>Repairs are obtained by deleting Q j -ground tuples and/or inserting P i -ground tuples. In this way, the finitely many repairs can be computed. Then, the query Q can be evaluated in every single repair. If for all of them it becomes true, the answer is yes, otherwise, is no. 2</p><p>Notice that the decision algorithm in the proof of Theorem 2 requires the computation all of possible repairs; and we know that there may be exponentially many of them in the size of the database <ref type="bibr" target="#b3">[4]</ref>. This decidability result extends similar implicit results <ref type="bibr" target="#b4">[5,</ref><ref type="bibr" target="#b19">20,</ref><ref type="bibr" target="#b5">6,</ref><ref type="bibr" target="#b9">10]</ref> that guarantee decidability for certain syntactic classes of universal ICs. Their syntax makes them safe, and then, also domain independent. This is obtained from the representation of repairs as stable models of disjunctive logic programs. A direct proof of decidability of {d, ic, q}-CQA for this class of universal constraints plus RICs can be found in <ref type="bibr" target="#b9">[10]</ref> (existential variables are satisfied with an SQL null). Decidability of {d, ic, q}-CQA is proved in <ref type="bibr" target="#b10">[11]</ref> for sets of non-conflicting key constrains and inclusion dependencies.</p><p>In the following, we study a form of combined complexity of CQA, where the input consists of the database and the ICs. <ref type="foot" target="#foot_0">3</ref> This is a special case of the general {d, ic}-CQA problem in (1) where only universal, domain independent ICs are considered in the input. Proof. (a) We prove that the complement of CQA(Q) belongs to 2-NEXP, that is, we prove that there exists a non-deterministic Turing machine M that works in double exponential time and accepts the complement of CQA(Q). Let D be a database instance and ϕ a safe universal IC. In order to verify whether (D, ϕ) ∈ CQA(Q), Turing machine M first transforms ϕ into an equivalent IC ψ of the form (3), then it guesses a repair D ′ of D wrt ψ, and finally it checks whether D ′ |= Q (which implies that D |= {ϕ} Q). Sentence ψ can be of exponential size in the size of ϕ, and it takes exponential time to generate this formula. Checking that D ′ is a repair of D can be done in exponential time in the size of ψ and D, because it might be necessary to compare D ′ for inclusion with exponentially many candidates (see the proof of Theorem 2). Finally, verifying that D ′ |= Q can be done in polynomial time in the size of D ′ since Q is assumed to be a fixed query. Thus, we conclude that M works in double exponential time in the size of ϕ and D.</p><p>(b) Let P be a unary predicate and a ∈ U . Next we prove that the complement of CQA(Q) is NEXP -hard, where Q is the Boolean query P (a). More precisely, next we provide a reduction from SAT for the Bernays-Schoenfinkel's syntactic class of first-order formulas (BSC ) to the complement of CQA(Q). The former problem is decidable and NEXP -complete <ref type="bibr">[22, chapter 20]</ref>.</p><p>Consider a schema S, and let χ: ∃x 1 • • • ∃x n ∀ȳ ψ(x 1 , . . . , x n , ȳ) ∈ L(S), with ψ quantifier free, be an instance for BSC . Without loss of generality, assume that S does not contain unary predicate P . If χ is satisfiable, then it is satisfiable in the universe U = {1, . . . , n}. In consequence, a sentence in BSC is satisfiable iff it is satisfiable in a finite structure (actually with finite universe), which allows us to use this result in our context.</p><p>Let a 1 , . . ., a n be pairwise distinct elements from U , which are all distinct from a, U 1 , . . ., U n be unary predicates not contained in S ∪ {P }, and D be the empty database instance over S ∪ {U 1 , . . . , U n , P }. Furthermore, let ϕ be the conjunction of: U i (a j ), ( <ref type="formula">5</ref>)</p><formula xml:id="formula_11">n i=1 ∀x∀y U i (x) ∧ U i (y) → x = y ,<label>(4)</label></formula><formula xml:id="formula_12">∀x 1 • • • ∀x n U 1 (x 1 ) ∧ • • • ∧ U n (x n ) → ∀ȳ ψ(x 1 , . . . , x n , ȳ) ∨ P (a).<label>(6)</label></formula><p>The first two sentences make sure that each U i contains exactly one element of U . If χ is satisfiable, then there will be a repair where each of the U 1 , ..., U n will contain exactly one element of U and nothing else, and P will be empty. In that repair, the query P (a) will be false and, thus, D |= {ϕ} P (a). On the other hand, if χ is not satisfiable, then no matter how U 1 , . . ., U n and the relations in S are populated, sentence</p><formula xml:id="formula_13">∀x 1 • • • ∀x n U 1 (x 1 ) ∧ • • • ∧ U n (</formula><p>x n ) → ∀ȳ ψ(x 1 , . . . , x n , ȳ)</p><p>will not be satisfied. Therefore, all the repairs of D will include element a into P in order to satisfy <ref type="bibr" target="#b5">(6)</ref>, which implies that D |= {ϕ} P (a). Hence, we conclude that χ is satisfiable iff D |= {ϕ} P (a). The IC ϕ is clearly universal, but we have to check safety. The first two conjuncts obviously are. For the third conjunct, due to the universal quantification on x 1 , ..., x n and their occurrence in the predicates U 1 , ..., U n , the only source of non-safety could be formula ψ. There is no reason for ψ to be safe. However, for the purpose of establishing our complexity lower-bound, we may restrict ourselves to a subclass of sentences in BSC that still is NEXP -hard, namely sentences that encode bounded tiling problems. Those sentences turn out to be safe (cf. [9, theorem 6.2.21] for details). <ref type="foot" target="#foot_1">4</ref>2</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Definition 1 . 2 Definition 2 (</head><label>122</label><figDesc>A database instance D is consistent with respect to IC if D satisfies IC , denoted by D IC; and inconsistent, otherwise.<ref type="bibr" target="#b2">[3]</ref>).</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head></head><label></label><figDesc>(a) The distance ∆(D 1 , D 2 ) between database instances D 1 , D 2 is the symmetric difference (D 1 D 2 ) ∪ (D 2 D 1 ). (b) For a fixed instance D and instances D ′ , D ′′ : D ′ ≤ D D ′′ iff ∆(D, D ′ ) ⊆ ∆(D, D ′′ ). (c) For a given database instances D, we say that an instance D ′ is a repair of D wrt IC iff D ′ IC and D ′ is ≤ D -minimal in the class of database instances that satisfy IC . 2</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Definition 4 .</head><label>4</label><figDesc>(a) For a Boolean query Q and a consistent set IC of integrity constraints: d -CQA(Q, IC ) := {D | D is a database instance and D |= IC Q}. (b) For a database instance D and a Boolean query Q: ic-CQA(D, Q) := {IC | IC is a consistent set of ICs and D |= IC Q}.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head></head><label></label><figDesc>Furthermore, consider the Boolean query Q : ¬P (a); and the problem SAT := {ψ ∈ L({E}) | ψ is satisfiable}. This problem is undecidable over finite graphs [16, sec. 7.2.1], and can be reduced to the complement of ic-CQA(D, Q) as follows: Given a first-order sentence ψ ∈ L({E}), define a set of integrity constraints IC by {ψ ↔ ∃xP (x)}. It is easy to check that ψ ∈ SAT iff D |= IC Q. 2</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Theorem 3 .</head><label>3</label><figDesc>(a) For every Boolean query Q,CQA(Q) := {(D, ϕ) | ϕ is a safe universal IC and D |= {ϕ} Q} is in co-2-NEXP.(b) There are Boolean queries for which the same problem is co-NEXP-hard.</figDesc></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_0">Other cases of combined complexity for CQA around key constraints and inclusion dependencies can be found in<ref type="bibr" target="#b10">[11]</ref>.</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_1">In particular, due to the bounded domain to be tiled, for each instance we do not need to go beyond a finite numerical domain U . The same would happen if we were encoding computations of Turing machines that are bounded in time.</note>
		</body>
		<back>

			<div type="funding">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>⋆ M. Arenas was supported by FONDECYT grant 1090565. ⋆⋆ Faculty Fellow of the IBM Center for Advanced Studies. Also affiliated to the University of Concepcion, Chile.</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<title level="m" type="main">Foundations of Databases</title>
		<author>
			<persName><forename type="first">S</forename><surname>Abiteboul</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Hull</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Vianu</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1995">1995</date>
			<publisher>Addison-Wesley</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Repair Checking in Inconsistent Databases: Algorithms and Complexity</title>
		<author>
			<persName><forename type="first">F</forename><surname>Afrati</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Ph</forename><surname>Kolaitis</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the International Conference on Database Theory (ICDT 09)</title>
				<meeting>of the International Conference on Database Theory (ICDT 09)</meeting>
		<imprint>
			<date type="published" when="2009">2009</date>
			<biblScope unit="page" from="31" to="41" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Consistent Query Answers in Inconsistent Databases</title>
		<author>
			<persName><forename type="first">M</forename><surname>Arenas</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bertossi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Chomicki</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. ACM Symposium on Principles of Database Systems (PODS 99)</title>
				<meeting>ACM Symposium on Principles of Database Systems (PODS 99)</meeting>
		<imprint>
			<date type="published" when="1999">1999</date>
			<biblScope unit="page" from="68" to="79" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Scalar Aggregation in Inconsistent Databases</title>
		<author>
			<persName><forename type="first">M</forename><surname>Arenas</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bertossi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Chomicki</surname></persName>
		</author>
		<author>
			<persName><forename type="first">X</forename><surname>He</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Raghavan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Spinrad</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Theoretical Computer Science</title>
		<imprint>
			<biblScope unit="volume">296</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="405" to="434" />
			<date type="published" when="2003">2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Answer Sets for Consistent Query Answering in Inconsistent Databases</title>
		<author>
			<persName><forename type="first">M</forename><surname>Arenas</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bertossi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Chomicki</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Theory and Practice of Logic Programming</title>
				<imprint>
			<date type="published" when="2003">2003</date>
			<biblScope unit="volume">3</biblScope>
			<biblScope unit="page" from="393" to="424" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Characterizing and Computing Semantically Correct Answers from Databases with Annotated Logic and Answer Sets</title>
		<author>
			<persName><forename type="first">P</forename><surname>Barcelo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bertossi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bravo</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Chapter in Semantics of Databases</title>
				<imprint>
			<date type="published" when="2003">2003</date>
			<biblScope unit="volume">2582</biblScope>
			<biblScope unit="page" from="1" to="27" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Consistent Query Answering in Databases</title>
		<author>
			<persName><forename type="first">L</forename><surname>Bertossi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Sigmod Record</title>
		<imprint>
			<biblScope unit="volume">35</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="68" to="76" />
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">The Complexity and Approximation of Fixing Numerical Attributes in Databases Under Integrity Constraints</title>
		<author>
			<persName><forename type="first">L</forename><surname>Bertossi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bravo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Franconi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Lopatenko</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Information Systems</title>
		<imprint>
			<biblScope unit="volume">33</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="407" to="434" />
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<monogr>
		<title level="m" type="main">The Classical Decision Problem</title>
		<author>
			<persName><forename type="first">E</forename><surname>Börger</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Grädel</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><surname>Gurevich</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1997">1997</date>
			<publisher>Springer</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Semantically Correct Query Answers in the Presence of Null Values</title>
		<author>
			<persName><forename type="first">L</forename><surname>Bravo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bertossi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. EDBT International Workshop on Inconsistency and Incompleteness in Databases (IIDB 06)</title>
		<title level="s">Springer LNCS</title>
		<meeting>EDBT International Workshop on Inconsistency and Incompleteness in Databases (IIDB 06)</meeting>
		<imprint>
			<date type="published" when="2006">2006</date>
			<biblScope unit="volume">4254</biblScope>
			<biblScope unit="page" from="336" to="357" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">On the Decidability and Complexity of Query Answering over Inconsistent and Incomplete Databases</title>
		<author>
			<persName><forename type="first">A</forename><surname>Cali</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Lembo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Rosati</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. ACM Symposium on Principles of Database Systems (PODS 03)</title>
				<meeting>ACM Symposium on Principles of Database Systems (PODS 03)</meeting>
		<imprint>
			<date type="published" when="2003">2003</date>
			<biblScope unit="page" from="260" to="271" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Minimal-Change Integrity Maintenance Using Tuple Deletions</title>
		<author>
			<persName><forename type="first">J</forename><surname>Chomicki</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Marcinkowski</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Information and Computation</title>
		<imprint>
			<biblScope unit="volume">197</biblScope>
			<biblScope unit="issue">1-2</biblScope>
			<biblScope unit="page" from="90" to="121" />
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">Consistent Query Answering: Five Easy Pieces</title>
		<author>
			<persName><forename type="first">J</forename><surname>Chomicki</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. International Conference on Database Theory (ICDT 07)</title>
		<title level="s">Springer LNCS</title>
		<meeting>International Conference on Database Theory (ICDT 07)</meeting>
		<imprint>
			<date type="published" when="2007">2007</date>
			<biblScope unit="volume">4353</biblScope>
			<biblScope unit="page" from="1" to="17" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Complexity And Expressive Power Of Logic Programming</title>
		<author>
			<persName><forename type="first">E</forename><surname>Dantsin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Eiter</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Gottlob</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Voronkov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Computer Surveys</title>
		<imprint>
			<biblScope unit="volume">33</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="374" to="425" />
			<date type="published" when="2001">2001</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<analytic>
		<title level="a" type="main">Disjunctive Datalog</title>
		<author>
			<persName><forename type="first">T</forename><surname>Eiter</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Gottlob</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Mannila</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Transactions on Database Systems</title>
		<imprint>
			<biblScope unit="volume">22</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="364" to="418" />
			<date type="published" when="1997">1997</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<monogr>
		<author>
			<persName><forename type="first">H.-D</forename><surname>Ebbinghaus</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Flum</surname></persName>
		</author>
		<title level="m">Finite Model Theory</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="1999">1999</date>
		</imprint>
	</monogr>
	<note>2nd edition</note>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">Horn Clauses and Database Dependencies</title>
		<author>
			<persName><forename type="first">R</forename><surname>Fagin</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal of the ACM</title>
		<imprint>
			<biblScope unit="volume">29</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="952" to="985" />
			<date type="published" when="1982">1982</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<analytic>
		<title level="a" type="main">First-Order Query Rewriting for Inconsistent Databases</title>
		<author>
			<persName><forename type="first">A</forename><surname>Fuxman</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Miller</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal of Computer and System Sciences</title>
		<imprint>
			<biblScope unit="volume">73</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="610" to="635" />
			<date type="published" when="2007">2007</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<analytic>
		<title level="a" type="main">Classical Negation in Logic Programs and Disjunctive Databases</title>
		<author>
			<persName><forename type="first">M</forename><surname>Gelfond</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Lifschitz</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">New Generation Computing</title>
		<imprint>
			<biblScope unit="volume">9</biblScope>
			<biblScope unit="page" from="365" to="385" />
			<date type="published" when="1991">1991</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<analytic>
		<title level="a" type="main">A Logical Framework for Querying and Repairing Inconsistent Databases</title>
		<author>
			<persName><forename type="first">G</forename><surname>Greco</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Greco</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Zumpano</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Transactions on Knowledge and Data Engineering</title>
		<imprint>
			<biblScope unit="volume">15</biblScope>
			<biblScope unit="issue">6</biblScope>
			<biblScope unit="page" from="1389" to="1408" />
			<date type="published" when="2003">2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b20">
	<analytic>
		<title level="a" type="main">Complexity of Consistent Query Answering in Databases under Cardinality-Based and Incremental Repair Semantics</title>
		<author>
			<persName><forename type="first">A</forename><surname>Lopatenko</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bertossi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the International Conference of Database Theory (ICDT 07)</title>
		<title level="s">Springer LNCS</title>
		<meeting>the International Conference of Database Theory (ICDT 07)</meeting>
		<imprint>
			<date type="published" when="2007">2007</date>
			<biblScope unit="volume">4353</biblScope>
			<biblScope unit="page" from="179" to="193" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b21">
	<monogr>
		<title level="m" type="main">Computational Complexity</title>
		<author>
			<persName><forename type="first">Ch</forename><surname>Papadimitriou</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1994">1994</date>
			<publisher>Addison-Wesley</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b22">
	<analytic>
		<title level="a" type="main">Consistent Query Answering in the Presence of Universal Constraints</title>
		<author>
			<persName><forename type="first">S</forename><surname>Staworko</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Chomicki</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Information Systems</title>
		<imprint>
			<biblScope unit="volume">35</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="1" to="22" />
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b23">
	<monogr>
		<author>
			<persName><forename type="first">J</forename><surname>Ullman</surname></persName>
		</author>
		<title level="m">Principles of Database and Knowledge-Base Systems</title>
				<imprint>
			<publisher>Computer Science Press</publisher>
			<date type="published" when="1988">1988</date>
			<biblScope unit="volume">I</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b24">
	<analytic>
		<title level="a" type="main">Safety and Correct Translation of Relational Calculus Formulas</title>
		<author>
			<persName><forename type="first">A</forename><surname>Van Gelder</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Topor</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the Sixth ACM Symposium on Principles of Database Systems (PODS 87)</title>
				<meeting>the Sixth ACM Symposium on Principles of Database Systems (PODS 87)</meeting>
		<imprint>
			<publisher>ACM Press</publisher>
			<date type="published" when="1987">1987</date>
			<biblScope unit="page" from="313" to="327" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b25">
	<analytic>
		<title level="a" type="main">The Complexity of Relational Query Languages</title>
		<author>
			<persName><forename type="first">M</forename><surname>Vardi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. ACM Symposium on Theory of Computing (STOC 82)</title>
				<meeting>ACM Symposium on Theory of Computing (STOC 82)</meeting>
		<imprint>
			<date type="published" when="1982">1982</date>
			<biblScope unit="page" from="137" to="146" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b26">
	<analytic>
		<title level="a" type="main">Database Repairing Using Updates</title>
		<author>
			<persName><forename type="first">J</forename><surname>Wijsen</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Transactions on Database Systems</title>
		<imprint>
			<biblScope unit="volume">30</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="722" to="768" />
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b27">
	<analytic>
		<title level="a" type="main">On the Consistent Rewriting of Conjunctive Queries Under Primary Key Constraints</title>
		<author>
			<persName><forename type="first">J</forename><surname>Wijsen</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Information Systems</title>
		<imprint>
			<biblScope unit="volume">34</biblScope>
			<biblScope unit="issue">7</biblScope>
			<biblScope unit="page" from="578" to="601" />
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
