180k views
2 votes
Consider a relational schema r(abcde) and the set of functional dependencies a → cd, b → ce, e → b. (a) give a lossless-join decomposition of r into 3nf preserving functional dependencies. a. R1 (ABC) with functional dependency A→C b. R1 (ABE) with functional dependency A→B c. R1 (AE) with functional dependency A→E d. R1 (ABC) with functional dependency A→BC

1 Answer

4 votes

Final answer:

The question seeks a 3NF decomposition of a schema that preserves functional dependencies. The correct decomposition is into three relations: R1(A, C, D), R2(B, E), and R3(A, B), which preserve the functional dependencies without introducing transitive dependencies.

Step-by-step explanation:

The student is asking about a lossless-join decomposition of a relational schema into Third Normal Form (3NF) while preserving the functional dependencies. A schema is in 3NF if, for every functional dependency X → Y, either Y is a subset of X, or X is a superkey, or Y is part of a candidate key (i.e., Y is prime).

In this case, the given relational schema r(abcde) has the set of functional dependencies: a → cd, b → ce, e → b. To decompose this into 3NF preserving functional dependencies, we need to ensure no transitive dependencies exist and that all non-prime attributes are fully functionally dependent on any candidate key.

One possible 3NF decomposition which preserves functional dependencies could be:

  • R1(A, C, D) with functional dependency A → CD
  • R2(B, E) with functional dependencies B → E and E → B
  • R3(A, B) with no additional functional dependencies since A and B are each determinant of other attributes in R1 and R2.

This 3NF decomposition ensures that each non-prime attribute is fully functionally dependent on a candidate key of its relation and there are no transitive dependencies within relations.

Note that the functional dependency A → BC does not hold in any of the decomposed relations, implying the choice d is incorrect. Choice b also incorrectly assumes A → B is a functional dependency. Option a and c do not include all attributes.

User Daronwolff
by
7.5k points