7.13
Show that the decomposition in Exercise 7.1 is not a dependency-preserving decomposition.
There are several functional dependencies that are not preserved. We discuss one example here. The dependency \(B \rightarrow D\) is not preserved. \(F_1\), the restriction of \(F\) to \((A, B, C)\) is \(A \rightarrow ABC, A \rightarrow AB,\) \(A \rightarrow AC, A \rightarrow BC, A \rightarrow B, A \rightarrow C, A \rightarrow A, B \rightarrow B, C \rightarrow C, AB \rightarrow AC, AB \rightarrow ABC, AB \rightarrow BC, AB \rightarrow AB, AB \rightarrow A, AB \rightarrow B, AB \rightarrow C, AC (\text{same as } AB), BC (\text{same as } AB), ABC (\text{same as } AB)\). \(F_2\), the restriction of \(F\) to \((A,D,E)\) is $A ADE, A AD, A AE, A DE, A A, A D, A E, D D, E ( A), AD, AE, DE, ADE ( A). $
\((F_1 \cup F_2)^+\) is easily seen not to contain \(B \rightarrow D\) since the only FD in \(F_1 \cup F_2\) with \(B\) as the left side is \(B \rightarrow B\), a trivial FD. Thus \(B \rightarrow D\) is not preserved.
A simpler argument is as follows: \(F_1\) contains no dependencies with \(D\) on the right side of the arrow. \(F_2\) contains no dependencies with \(B\) on the left side of the arrow. Therefore for \(B \rightarrow D\) to be preserved there must be a functional dependency \(B \rightarrow \alpha\) in \(F_1^+\) and \(\alpha \rightarrow D\) in \(F_2^+\) (so \(B \rightarrow D\) would follow by transitivity). Since the intersection of the two schemas is \(A\), \(\alpha = A\). Observe that \(B \rightarrow A\) is not in \(F_1^+\) since \(B^+ = BD\).