Boolean conjunctive query

From testwiki
Revision as of 06:13, 14 January 2025 by imported>Chipmunkdavis (Llm generated SDs of very variable quality)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

In the theory of relational databases, a Boolean conjunctive query is a conjunctive query without distinguished predicates, i.e., a query in the form R1(t1)Rn(tn), where each Ri is a relation symbol and each ti is a tuple of variables and constants; the number of elements in ti is equal to the arity of Ri. Such a query evaluates to either true or false depending on whether the relations in the database contain the appropriate tuples of values, i.e. the conjunction is valid according to the facts in the database.

As an example, if a database schema contains the relation symbols Template:Mvar (binary, who's the father of whom) and Template:Mvar (unary, who is employed), a conjunctive query could be Father(Mark,x)Employed(x). This query evaluates to true if there exists an individual Template:Mvar who is a child of Mark and employed. In other words, this query expresses the question: "does Mark have an employed child?"

Complexity

Template:Main

See also

References