Unformatted text preview: → Z". For example, we may have "(S#, P#) → Qty" and thus "(S#, P#) → S#, Qty" (by augmentation rule). However, from "(S#, P#) → S#, Qty", we can NOT derive "P# → Qty". • W hich functional dependency to remove? Suppose we have a relation R(ABC) with functional dependencies F = {A → B, B → C, A → C}. We can see that "A → C" can be derived from "A → B" and "B → C". Here we should remove "A → C" when we construct minimal cover for F, since "A → C" can be derived from the remaining functional dependencies. If we removed "A → B" or "B → C" instead of removing "A → C", we would not be able to rederive the removed one from the remaining fd’s. So the idea is to remove the fd’s which are derivable from the others, and keep those fd’s used in the process of derivation....
View
Full Document
 Spring '08
 Staff
 Databases, Relational model, Empty set, Database normalization, Vacuous truth

Click to edit the document details