pg. 16 HIMANSHU KUMAR
o Example 2 - Consider relation R(A, B, C, D, E)
A -> BC,
CD -> E,
B -> D,
E -> A
All possible candidate keys in the above relation are {A, E, CD, BC} All
attributes are on the right sides of all functional dependencies are
prime.
4. Boyce-Codd Normal Form (BCNF) -
A relation R is in BCNF if R is in Third Normal Form and for every FD, LHS is super
key. A relation is in BCNF iff in every non-trivial functional dependency X --> Y, X is
a super key.
Example 1 - Find the highest normal form of a relation R(A,B,C,D,E) with FD set as
{BC->D, AC->BE, B->E}
Step 1. As we can see, (AC)+ ={A,C,B,E,D} but none of its subset can determine all
attribute of relation, So AC will be candidate key. A or C can’t be derived from any
other attribute of the relation, so there will be only 1 candidate key {AC}.
Step 2. Prime attributes are those attribute which are part of candidate key {A, C} in
this example and others will be non-prime {B, D, E} in this example.
Step 3. The relation R is in 1st normal form as a relational DBMS does not allow
multi-valued or composite attribute.
The relation is in 2nd normal form because BC->D is in 2nd normal form (BC is not
a proper subset of candidate key AC) and AC-> BE is in 2nd normal form (AC is
candidate key) and B-> E is in 2nd normal form (B is not a proper subset of
candidate key AC).
The relation is not in 3rd normal form because in BC->D (neither BC is a super key
nor D is a prime attribute) and in B-> E (neither B is a super key nor E is a prime
attribute) but to satisfy 3rd normal for, either LHS of an FD should be super key or
RHS should be a prime attribute.
So the highest normal form of relation will be the 2nd Normal form.