在上课时,导师已经发表了以下声明:
There is only one(or none) lossless BCNF decomposition for a relation,
and two BCNF decompositions are lossless for a given R iff they are logically equal
我试图通过矛盾来证明,并假设存在两个BCNF分解,找到了矛盾,但找不到任何矛盾。
是否有一个直观的解释,为什么这是真的?>
答案 0 :(得分:3)
严格来讲,导师的陈述是错误的。
想象一下任何分解,其中模式分解后的一个是唯一的FD {K}-> {D1,D2}(K,D1,D2)。那是BCNF。
但是可以用唯一的FD {K}-> {D1}分解为(K,D1)和使用唯一的FD {K}-> {D2}分解为(K,D2)。也是BCNF(甚至是6NF)。
这意味着您有两种不同的可能分解,都是BCNF。
(自然地,在这样的课程中,人们认为没有必要进行进一步的分解,而它们却被忽略了,因为“无论如何也不会有人考虑它们”或类似的东西,但这并不是很科学)