Consider the relation schema R(S, T, U, V) with the following functional…
2014
Consider the relation schema R(S, T, U, V) with the following functional dependencies:
S → T
T → U
U → V
V → S
Which normal-form classification is correct for relation R?
- A.
Not in 2NF
- B.
In 2NF but not in 3NF
- C.
In 3NF but not in 2NF
- D.
In both 2NF and 3NF
Attempted by 296 students.
Show answer & explanation
Correct answer: D
Concept. A relation is in 2NF if it is in 1NF and no non-prime attribute is partially dependent on a candidate key (a partial dependency needs a composite key). It is in 3NF if, for every non-trivial dependency X → A, either X is a superkey or A is a prime attribute (an attribute that belongs to some candidate key). The 3NF rule against transitive dependencies bars only a non-prime attribute depending transitively on a key; a chain among prime attributes is allowed.
Application — find the candidate keys by attribute closure. The dependencies S → T, T → U, U → V, V → S form a single cycle, so each attribute reaches every other:
S⁺ = {S, T, U, V} via S → T → U → V.
T⁺ = {T, U, V, S} via T → U → V → S.
U⁺ = {U, V, S, T} via U → V → S → T.
V⁺ = {V, S, T, U} via V → S → T → U.
Every single attribute determines all of R, so {S}, {T}, {U}, {V} are each a candidate key. Consequently every attribute is prime, and there is no non-prime attribute.
Check 2NF and 3NF.
2NF: every candidate key is a single attribute, so no composite key exists and a partial dependency is impossible. R is in 2NF.
3NF: in each dependency the left-hand side (S, T, U, or V) is itself a candidate key, i.e. a superkey, satisfying the first 3NF condition. R is in 3NF.
Cross-check — the “transitive dependency” worry. The chain S → U (through T) looks transitive, but 3NF is violated only when a non-prime attribute is transitively dependent on a key. Here U is itself a candidate key, so it is prime; the same holds for every attribute. With no non-prime attribute, no 3NF transitivity violation can exist. In fact, since every determinant is a superkey, R is even in BCNF (and therefore certainly in 2NF and 3NF).
Hence R is in both 2NF and 3NF.