Canonical cover
A canonical cover for F (a set of functional dependencies on a relation scheme) is a set of dependencies such that F logically implies all dependencies in , and logically implies all dependencies in F.
The set has two important properties:
- No functional dependency in contains an extraneous attribute.
- Each left side of a functional dependency in is unique. That is, there are no two dependencies and in such that .
A canonical cover is not unique for a given set of functional dependencies, therefore one set F can have multiple covers .
Algorithm for computing a canonical cover[]
- Repeat:
- Use the union rule to replace any dependencies in of the form and with ..
- Find a functional dependency in with an extraneous attribute and delete it from
- ... until does not change
References[]
- ^ Silberschatz, Abraham (2011). Database system concepts (PDF) (Sixth ed.). New York: McGraw-Hill. ISBN 978-0073523323.
Categories:
- Database theory
- Mathematical concepts
- Database algorithms