Consider relation with the set of functional dependency FDs ABCDE,

Duration: 4 min

Consider a relation R = (A, B, C, D, E) with the set of functional dependency FDs

{A -> ABCDE, B -> C }. Which of the following statement is true?

  1. A.

    R1 = (A, C, D, E) and R2 = (B, C) are both in BCNF and preserve lossless-join.

  2. B.

    R1 = (A, B, D, E) and R2 = (B, C) are both in BCNF and preserve lossless-join.

  3. C.

    both (a) and (b)

  4. D.

    None of the above.

Attempted by 116 students.

Show answer & explanation

Correct answer: B

Answer: Decompose into R1 = (A, B, D, E) and R2 = (B, C). This decomposition is in BCNF, is lossless, and preserves dependencies.

  • Key observation: A -> ABCDE means A is a candidate key for the original relation.

  • BCNF violation: B -> C violates BCNF on the original relation because B is not a key of the original relation.

  • Decompose on B -> C to get R1 = (A, B, D, E) and R2 = (B, C).

  • Check BCNF: In R1, A -> B,D,E (from A -> ABCDE) so A is a key for R1. In R2, B -> C so B is a key for R2. Thus both relations are in BCNF.

  • Check lossless-join: The intersection R1 ∩ R2 = {B}. Since B -> C is in the FDs, the intersection functionally determines R2 (B -> B,C), so the decomposition is lossless.

  • Check dependency preservation: Projected dependencies include A -> B,D,E (in R1) and B -> C (in R2). From these we can infer A -> C via A -> B and B -> C, so the original dependencies are preserved.

A video solution is available for this question — log in and enroll to watch it.

Explore the full course: Dsssb Tgt Computer Science Paper 2