具有功能依赖性的依赖性保留分解不会出现在子模式中

Dependency Preserving Decomposition with a functional dependency doesn't appear in the sub-schema

我正在阅读包含以下问题的教科书:

Given the following relation R {A,B,C,D,E,H} and the functional 
dependencies AB->CD, BC->D, C->H, D->HB, CH->AE
does the following decomposition is dependency preserving?
R1(A,C,E,H) R2(B,D,H), R3(A,B,C), R4(B,C,D)

教科书的回答是其实是函数依赖保留,我以为不是因为依赖AB->D
让它变得更加混乱,因为它看起来像
if there is a key inside one of the sub relations, the decomposition must be dependency preserving
一个我无法反驳的反例是
For the two rows a1 b1 c1 d1 h1 e2 and a2 b1 c2 d2 h2 e2
R 的所有 F.D 都成立,但现在 R3 有
a1 b1 c1 and a2 b1 c2
并且 R4 有 b1 c1 d1 and b1 c2 d2,
在 B 上加入 R3 和 R4 得到 a1 b1 c2 d2 这打破了 AB->D F.D

在示例中,依赖项已按照注释中 AntC 的指示进行了保留。

原始关系的候选键存在于分解关系中的条件并不能保证依赖关系得以保留。

考虑例如具有依赖性 {A → E, BCE → A, D → C} 的关系 R(A B C D E) 和分解 R1(A B D)R2(A E)R3(C D)。关系 R1 包含原始关系的候选键之一 ({ABD}),但在分解中不保留依赖关系 {BCE → A}

原始键之一出现在一个分解关系中的事实可能表明分解是无损的,但一般来说,无损分解与无损分解之间没有关系依赖项保存(例如参见 [​​=17=])。然而,有一个结果以某种方式连接了这两个属性,如对所引用问题的回答所示。