JUCS - Journal of Universal Computer Science 15(1): 112-156, doi: 10.3217/jucs-015-01-0112
Weak Functional Dependencies: Full Propositional Expressiveness for the Database Practitioner
expand article infoSven Hartmann, Sebastian Link§
‡ Clausthal University of Technology, Clausthal, Germany§ Victoria University of Wellington, Wellington, New Zealand
Open Access
We study inference systems of weak functional dependencies in relational and complex-value databases. Functional dependencies form a very common class of database constraints. Designers and administrators proficiently utilise them in everyday database practice. Functional dependencies correspond to the linear-time decidable fragment of Horn clauses in propositional logic. Weak functional dependencies take advantage of arbitrary clauses, and therefore represent full propositional reasoning about data in databases. Moreover, they can be specified in a way that is very similar to functional dependencies. In relational databases the class of weak functional dependencies is finitely axiomatisable and the associated implication problem is coNP-complete in general. Our first main result extends this axiomatisation to databases in which complex elements can be derived from atomic ones by finitely many nestings of record, list and disjoint union constructors. In particular, we construct two nested tuples that can serve as a counterexample relation for the implication of weak functional dependencies. We further apply this construction to show an equivalence to truth assignments that serve as counterexamples for the implication of propositional clauses. Hence, we characterise the implication of weak functional dependencies in complex-value databases in completely logical terms. Consequently, state-of-the-art SAT solvers can be applied to reason about weak functional dependencies in relational and complex-value databases.
relational database, complex-value database, weak functional dependency, axiomatisation, propositional logic