If D = {R1, R2} is a decomposition of R, and F is the set of functional…
2017
If D = {R1, R2} is a decomposition of R, and F is the set of functional dependencies on R, then which of the following ensures that the decomposition D is lossless (nonadditive)?
Answer: A. ((R1 ∩ R2) → (R1 − R2)) ∈ F+; D. ((R1 ∩ R2) → R1) ∈ F+ — ConceptFor a binary decomposition of R into R1 and R2, the join is lossless with respect to F exactly when the common attributes functionally determine all…
- A.
((R1 ∩ R2) → (R1 − R2)) ∈ F+
- B.
((R1 ∩ R2) → (R1 − R2)) ∉ F+
- C.
((R1 ∪ R2) → (R1 − R2)) ∈ F+
- D.
((R1 ∩ R2) → R1) ∈ F+
Attempted by 340 students.
Show answer & explanation
Correct answer: A, D
Concept
For a binary decomposition of R into R1 and R2, the join is lossless with respect to F exactly when the common attributes functionally determine all attributes of at least one fragment.
Equivalently, (R1 ∩ R2) → R1 or (R1 ∩ R2) → R2 must belong to F+.
Application
Let X = R1 ∩ R2 and Y = R1 − R2. Then R1 = X ∪ Y.
The condition X → Y states that the common attributes determine the attributes unique to R1.
Reflexivity gives X → X. Applying the union rule to X → X and X → Y gives X → X ∪ Y, that is, X → R1.
Conversely, X → R1 gives X → Y by decomposition because Y is a subset of R1. Thus X → Y and X → R1 are equivalent conditions here.
The non-membership statement supplies no such dependency, while (R1 ∪ R2) → (R1 − R2) is the trivial dependency R → Y and does not test what the common attributes determine.
Cross-check
Starting from either equivalent condition and applying Armstrong’s axioms derives the other. Therefore both ((R1 ∩ R2) → (R1 − R2)) ∈ F+ and ((R1 ∩ R2) → R1) ∈ F+ ensure a lossless decomposition.