Canonical cover

From Wikipedia, the free encyclopedia

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:

  1. No functional dependency in contains an extraneous attribute.
  2. 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 .

  1. Repeat:
    1. Use the union rule to replace any dependencies in of the form and with .
    2. Find a functional dependency in with an extraneous attribute and delete it from
  2. ... until does not change[1]

Canonical cover example

Extraneous attributes

References

Related Articles

Wikiwand AI