Armstrong公理

从已知的一些函数依赖,可以推导出另外一些函数依赖,这就需要一系列推理规则,这些规则常被称作“Armstrong 公理”。

设U 是关系模式R 的属性集,F 是R 上成立的只涉及U 中属性的函数依赖集。函数依赖的推理规则有以下三条:

自反律:若属性集Y 包含于属性集X,属性集X 包含于U,则X→Y 在R 上成立。(此处X→Y是平凡函数依赖)

增广律:若X→Y 在R 上成立,且属性集Z 包含于属性集U,则XZ→YZ 在R 上成立。

传递律:若X→Y 和 Y→Z在R 上成立,则X →Z 在R 上成立。

其他的所有函数依赖的推理规则可以使用这三条规则推导出。

Armstrong公理

函数依赖:FD(function dependency),

设有关系模式R(U),X,Y是U的子集, r是R的任一具体关系,

如果对r的任意两个元组t1,t2,由t1[X]=t2[X]导致t1[Y]=t2[Y],

则称 X函数决定Y,或Y函数依赖于X,记为X→Y。X→Y为模式R的一个函数依赖。

函数依赖的逻辑蕴涵

设F是关系模式R的一个函数依赖集,X,Y是R的属性子集,

如果从F中的函数依赖能够推出X→Y,则称F逻辑蕴涵X→Y,记为F|=X→Y。

部分函数依赖

即局部依赖,对于一个函数依赖W→A,

如果存在X W(X包含于W)有X→A成立, 那么称W→A是局部依赖,否则称W→A为完全依赖。

完全函数依赖:见上。 

传递依赖:在关系模式中,如果Y→X,X→A,且X Y(X不决定Y), A X(A不属于X),那么称Y→A是传递依赖。

函数依赖集F的闭包F+: 被逻辑蕴涵的函数依赖的全体构成的集合,称为F的闭包(closure),记为F+

上一篇:JNI实战(二):Java 调用 C


下一篇:NODE_ENV=production关于不同系统的写法