函数依赖集的等价性
Equivalence of Functional dependency set
Fd1 = {AB --> C, D --> E, E --> C}
Fd2 = { AB --> C, D --> E, AB --> E, E --> C}
这两个 FD 是否等效,我认为它们是。但在答案中它显示为不等价。
您不能从第一组中的依赖项生成 AB → E。
为了从数学上证明它们的(不)等价性,您应该为两个集合构建闭包并比较闭包。
有一些简单的归纳规则可以构建闭包。引用 Wikipedia on Functional Dependency,公理是:
- 自反性:如果Y是X的子集,则X→Y
- 增广:如果X→Y,则XZ→YZ
- 传递性:如果X→Y且Y→Z,则X→Z
遵循他们的一些规则:
- 并集:如果X→Y且X→Z,则X→YZ
- 分解:如果X→YZ,则X→Y和X→Z
- 伪传递性:如果X→Y且WY→Z,则WX→Z
- 组成:如果X→Y且Z→W,则XZ→YW
使用这些规则和公理,可以为 FDS 构建闭包。
省略琐碎的依赖(右侧包含在左侧的那些),首先设置{ AB → C (1), D → E ( 2), E → C (3) } 给出:
AB → C (1)
ABD → CE, ABD → C, ABD → E (composition 1+2, decomposition)
ABDE → CE, ABDE → C (composition 1+2+3, decomposition)
ABE → C (composition 1+3)
D → E, D → C, D → CE (2, transitivity 2+3, union)
DE → CE, DE → C (composition 2+3, decomposition)
E → C (3)
而第二组{ AB→C(1),D→E(2),E→C(3), AB → E (4) } 给出:
AB → C, AB → E, AB → CE (1, 4, union 1+4)
ABD → CE, ABD → C, ABD → E (composition 1+2, decomposition)
ABDE → CE, ABDE → C (composition 1+2+3, decomposition)
ABE → C (composition 1+3)
D → E, D → C, D → CE (2, transitivity 2+3, union)
DE → CE, DE → C (composition 2+3, decomposition)
E → C (3)
第二个闭包有AB → E, AB → CE
,第一个闭包不存在,因此原始集合不同。
Fd1 = {AB --> C, D --> E, E --> C}
Fd2 = { AB --> C, D --> E, AB --> E, E --> C}
这两个 FD 是否等效,我认为它们是。但在答案中它显示为不等价。
您不能从第一组中的依赖项生成 AB → E。
为了从数学上证明它们的(不)等价性,您应该为两个集合构建闭包并比较闭包。
有一些简单的归纳规则可以构建闭包。引用 Wikipedia on Functional Dependency,公理是:
- 自反性:如果Y是X的子集,则X→Y
- 增广:如果X→Y,则XZ→YZ
- 传递性:如果X→Y且Y→Z,则X→Z
遵循他们的一些规则:
- 并集:如果X→Y且X→Z,则X→YZ
- 分解:如果X→YZ,则X→Y和X→Z
- 伪传递性:如果X→Y且WY→Z,则WX→Z
- 组成:如果X→Y且Z→W,则XZ→YW
使用这些规则和公理,可以为 FDS 构建闭包。
省略琐碎的依赖(右侧包含在左侧的那些),首先设置{ AB → C (1), D → E ( 2), E → C (3) } 给出:
AB → C (1)
ABD → CE, ABD → C, ABD → E (composition 1+2, decomposition)
ABDE → CE, ABDE → C (composition 1+2+3, decomposition)
ABE → C (composition 1+3)
D → E, D → C, D → CE (2, transitivity 2+3, union)
DE → CE, DE → C (composition 2+3, decomposition)
E → C (3)
而第二组{ AB→C(1),D→E(2),E→C(3), AB → E (4) } 给出:
AB → C, AB → E, AB → CE (1, 4, union 1+4)
ABD → CE, ABD → C, ABD → E (composition 1+2, decomposition)
ABDE → CE, ABDE → C (composition 1+2+3, decomposition)
ABE → C (composition 1+3)
D → E, D → C, D → CE (2, transitivity 2+3, union)
DE → CE, DE → C (composition 2+3, decomposition)
E → C (3)
第二个闭包有AB → E, AB → CE
,第一个闭包不存在,因此原始集合不同。