1989 · 18 citations · 9 references
ComputingComputer ScienceAlgorithmsDatabasesSet TheoryDatabase DesignRelational AlgebraRelational Data ModelRelational DatabasesSchema DesignAttributesClosed SetsFunctional Dependency TheoryNormal Form RepresentationNormal FormsNormalizationPrime AttributeRelational Schemas
Several decision problems for relational schemas with functional dependencies are computationally hard. Such problems include determining whether an attribute is prime and testing if a schema is in normal form. Algorithms for these problems are needed in database design tools. The problems can be solved by trivial exponential algorithms. Although the size of the instance is usually given by the number of attributes and hence is fairly small, such exponential algorithms are not usable for all design tasks. We give algorithms for these problems whose running time is polynomial in the number of maximal sets not determining an attribute or, equivalently, the number of generators of the family of closed attribute sets. There is theoretical and practical evidence that this quantity is small for the schemas occurring in practice and exponential only for pathological schemas. The algorithms are simple to implement and fast in practice. They are in use in the relational database design tool Design-By-Example.
9
On the Structure of Armstrong Relations for Functional Dependencies
Catriel Beeri, M. Dowd, Ronald Fagin et al. · Journal of the ACM · 1984 · 198 citations · Full text
Cláudio L. Lucchesi, Sylvia L. Osborn · Journal of Computer and System Sciences · 1978 · 154 citations
Computing covers for embedded functional dependencies
Georg Gottlob · 1987 · 33 citations · Full text