Problem identifying why a relation is not in 3NF

I am currently attempting to learn som rudimentary database stuff and I am stuck on this question; Given a relation R(A, B, C) with Fd´s: {A->C,B->C} why is R not in 3nf?

So the candidate key here is obviously AB, but I am not sure why this shouldnt be in 3NF since there is seemingly no transitive dependancies or partial dependencies since C depends upon both A and B (albeit seperately).

Am I completely off base here?

1 answer

  • answered 2018-11-07 20:14 Renzo

    There are different equivalent definitions of 3NF. One of them is that for each non-trivial functional dependency, either the determinant (left hand side attributes) is a superkey, or any attribute of the determinate (right hand side attributes) is prime (i.e. is part of any candidate key).

    And since both A→C and B→C violates this definition, (A and B are not superkeys, and C is a not prime), the relation is not in 3NF.

    The relation is neither in 2NF, since the dependency AB→C is a partial dependency: in fact we can remove either A or B and the dependency still holds.