
3. After the subsets are exhausted, look for any overlaps
among tables and apply Superkey Rules 1 and 2 (and
the axioms) again.
In this example, note that G7 (L -> D) has a subset of
the attributes of G6 (D -> KLMNP). Therefore, we merge
to a single table, R6, with FDs D -> KLMNP, L -> D,
because it satisfies 3NF: D is a superkey by Superkey Rule
1 and L is a superkey by Superkey Rule 2.
Step 5: Definition of the Minimum Set of Normalized Tables
The minimum set of normalized tables has now been
determined. We define these tables below in terms of the
table name, the attributes in the table, the FDs in the table,
and the candidate keys for that table:
R1: ABC (AB -> C with key AB)
R2: AEF (A -> EF with key A)
R3:EG(E-> G with key E)
R4: DGI (G -> DI with key G)
R5: DFJ (F -> DJ with key F)
R6: DKLMNP (D -> KLMNP, L -> D, with keys D, L)
R7: PQRT (PQR -> T with key PQR)
R8: PRS (PR -> S with key PR)
Note that this result is not only 3NF, but also BCNF,
which is very frequently the case. This fact suggests a prac-
tical algorithm for a (near) minimum set of BCNF tables:
Use Bernstein’s algorithm to attain a minimum set of 3NF
tables, then inspect each table for further decomposition
(or partial replication, as shown in the “Boyce-Codd Nor-
mal Form” section above) to BCNF.
Summary
In this chapter we defined the constraints imposed on
tables, most commonly the functional dependencies, or FDs.
Based on these constraints, practical normal forms for data-
basetablesaredefined:1NF,2NF,3NF,andBCNF.Allare
based on the types of FDs present. In this chapter, a practical
algorithm for finding the minimum set of 3NF tables is given.
The following statements summarize the functional
equivalence between the ER model and normalized tables:
1. Within an entity. The level of normalization is totally
dependent on the interrelationships among the key
128 Chapter 6 NORMALIZATION