数据库_Armstrong公理系统

Armstrong公理系统

数据库_Armstrong公理系统
数据库_Armstrong公理系统
数据库_Armstrong公理系统
数据库_Armstrong公理系统

通俗的讲:

  1. 自反律:Y是X的子集,则X->Y
  2. 增广律:X->Y,则XZ->YZ
  3. 传递律:X->Y,Y->Z,则X->Z

直接看这几个公理挺让人一头雾水的,和之前一样,假设一个情景能更容易的理解这三条定律到底是在干嘛。
下面是一张完整的学生信息表

院系 专业 班级 姓名 性别
软件学院 软件工程 软工1901 张三
软件学院 信息安全 软信1902 赵四
软件学院 数字媒体技术 树莓1903 李六

以下为班级对应专业的表

专业 班级
软件工程 软工1901
信息安全 软信1902
数字媒体技术 树莓1903

还有一张表,他的存在似乎用处不大,不过还是列一下

院系 专业
软件学院 软件工程
软件学院 信息安全
软件学院 数字媒体技术

1.自反律
最简单的例子,(软件学院,软件工程)这个属性组可以推出 软件工程 这个属性,这个性质完全就是废话,本身可以推出子集是一定满足的。

2.增广律
由专业和班级的对应表,软工1901 -> 软件工程
再加上张三这个名字,(软工1901,张三) -> (软件工程,张三),这个关系也是成立的
通过这种方式将函数依赖“增广”了,所以叫做增广律

3.传递律
传递律看上去更容易理解,比如:在确定这个学院里没有重名的人的情况下
有:软工1901->软件工程, 软件工程->软件学院
所以:软工1901->软件学院

以下给出正式证明:
1.自反律:
数据库_Armstrong公理系统
2.增广律
数据库_Armstrong公理系统
3.传递律
数据库_Armstrong公理系统

Armstrong公理的正确性完备性

  • 正确性是指从F中推导出的函数依赖必为F所蕴含
  • 完备性是指F所蕴含的所有函数依赖都可以从Armstrong公理中推导出

由以上三个公理可以推导出以下三条推理规则:
数据库_Armstrong公理系统
数据库_Armstrong公理系统
数据库_Armstrong公理系统

总结:
1.自反律(废话)
2.增广律
3.传递律
4.合并律 = 增广 + 传递
5.伪传递律 = 增广 + 传递(另一种用法)
6.分解律 = 自反 + 传递(也约等于废话)
参考文章1
参考文章2

上一篇:springboot踩坑日记—nacos: Error watching Nacos Service change


下一篇:软件工程第一次思考题——地信1901倪玚