2.2k views

Relation $R$ is decomposed using a set of functional dependencies, $F$, and relation $S$ is decomposed using another set of functional dependencies, $G$. One decomposition is definitely $\text{BCNF}$, the other is definitely $3NF$, but it is not known which is which. To make a guaranteed identification, which one of the following tests should be used on the decompositions? (Assume that the closures of $F$ and $G$ are available).

1. Dependency-preservation
2. Lossless-join
3. $\text{BCNF}$ definition
4. $3NF$ definition
edited | 2.2k views
+2

As BCNF means it's already in 3NF but not the vice-versa

1. $\text{False}$.  $\text{BCNF}$ may or may not satisfy Dependency preservation, $3NF$ always does. But we can't make any guaranteed decision, regarding $\text{BCNF}$ if it satisfies Dependency preservation
2. $\text{False}$. Both are lossless.
3. $\text{True}$. Using this we can always decide between $\text{BCNF}$ & $3NF$.
4. $\text{False}$. Every $\text{BCNF}$ relation is also $3NF$ trivially.

Answer -> $C$ ( & Only $C$).

edited by
A. dependency preservation.
in 3NF Dependency always preserved but in BCNF it  may or may not be preserved.
For a particular set of FDs it may not differentiate BCNF and 3NF.

B.Lossless  join always possible in both BCNF as well as 3NF.

D. 3NF definition also unable to differentiate BCNF & 3NF bcoz every BCNF is trivially 3NF.

C. every 3NF which is not BCNF fails BCNF Definition so it may used to differentiate which is BCNF & which is 3NF ..
edited
0
In Question, it is given that other is definitely 3NF.Then it may or may not be BCNF.

In case if other decomposition is 3NF but not BCNF, BCNF Definition ables to identify which decomposition is 3NF and which one is BCNF.

But in case if other Decomposition is both 3NF and BCNF then BCNF definition unable to identify which decomposition is BCNF and which one is 3NF.

So how C is the Answer ? If it is the second case then C option also fails.
Option (C) . Since it is given that out of F and G, one is 3NF and other is BCNF then clearly we can apply BCNF defintion to differentiate between F and G.

Option (D) is useless as 3NF defintion will be satisfied by both the Functional Dependencies sets.

Option (A) and Option (B) are not the criteria to decide about BCNF and 3NF. They are criteria for Relation decomposition.

Eventhough Decompostion has been used here and some give Option (A) Dependency Preservation as answer but I will go with BCNF defintion as the distinguishing factor.

BCNF may or may not preserve dependency preservation. 3NF satisfy dependency preservation. Both BCNF and 3NF are Lossless join decomposition. So we BCNF definition is required.

3NF Dependency always preserved but in BCNF it  may or may not be preserved.

answered ago by Junior (593 points)

1
2