for R(V,W,X,Y,Z) Given set of functional dependencies is {VW->XY, V->X, W->Y,Y->Z}
Isn’t VW->XY redundant given V->X and W->Y? context: I’m expected to decompose this relation into 3NF/BCNF.
Firstly, I assumed the relation to be in 1NF since nothing to the contrary has been indicated explicitly or implicitly (by a data table or some hint- none was given).
then
- **The Doubt
What to do with this VW->XY?
**
Given the partial dependencies V->X and W->Y (violate 2NF) and transitive dependency Y->Z (violates 3NF), I plan to decompose these tables but am bowled out by the first and foremost puzzle.
I compute the attribute closure of VW using the original set of dependencies and arrive at full attribute set{V,W,X,Y,Z}
Then testing without X first and then Y on RHS i.e. using VW->X (violates 2NF due to V->X partial dependency) and then using VW->Y (violates 2NF due to W->Y partial dependency) and in both cases attribute closure of VW is {V,W,X,Y,Z}
- To arrive at 3NF
I broke up the relation into
R1(V,W), R2(V,X), R3(W,Y) and R4(Y,Z) the transitive dependency Y->Z was decomposed into R4 keeping Y in R3 as foreign key.
these relations should be able to unite to give the original relation, shouldn’t they?
and if that is the case, they are naturally in BCNF since each sub relation has only a single candidate key!
But I am still in same doubt highlighted above regarding VW->XY