up previous
Up: Functional Dependencies Previous: Closure of Attribute Sets

Canonical Cover

  1. To minimize the number of functional dependencies that need to be tested in case of an update we may restrict F to a canonical cover tex2html_wrap_inline1324 .
  2. A canonical cover for F is a set of dependencies such that F logically implies all dependencies in tex2html_wrap_inline1324 , and vice versa.
  3. tex2html_wrap_inline1324 must also have the following properties:
  4. To compute a canonical cover tex2html_wrap_inline1324 for F,

     repeat
    

    Use the union rule to replace dependencies of the form

    tex2html_wrap_inline1372 and tex2html_wrap_inline1386 with tex2html_wrap_inline1388 .

    Find a functional dependency tex2html_wrap_inline1058 with an

    extraneous attribute in tex2html_wrap_inline958 or in tex2html_wrap_inline1356 .

    If an extraneous attribute is found, delete it from tex2html_wrap_inline1058

    until F does not change.

  5. An example: for the relational scheme R=(A,B,C), and the set F of functional dependencies

     A  tex2html_wrap_inline1090  BC 
    

    B tex2html_wrap_inline1090 C

    A tex2html_wrap_inline1090 B

    AB tex2html_wrap_inline1090 C

    we will compute tex2html_wrap_inline1324 .



next up previous
Next: About this document Up: Functional Dependencies Previous: Closure of Attribute Sets

Osmar Zaiane
Tue Jun 9 15:12:55 PDT 1998