2016.6.17 数据库设计之数据依赖的公理系统
**数据依赖的公理系统是模式分解算法的理论基础,Armstrong公理系统。
**逻辑蕴含:对于满足一组函数依赖F的关系模式R<U,F>,其任何一个关系r,若函数依赖X->Y都成立,则称F逻辑蕴含X->Y。
(1)关系模式R<U,F>有以下推理规则:
①自反律:若Y属于X属于U,则X->Y为F所蕴含;
②增广律:若X->Y为F所蕴含,且Z属于U,则XZ->YZ为F所蕴含;
③传递律:若X->Y即Y->Z为F所蕴含,则X->Z为F所蕴含;
(2)根据推理规则可以得到下面三条很有用的推理规则:
①合并规则:由X->Y,X->Z,有X->YZ;
②伪传递规则:由X->Y,WY->Z,有XW->Z;
③分解规则:由X->Y,及Z属于Y,有X->Z;
(3)F的闭包:
**在关系模式R<U,F>中为F所蕴含的所逻辑蕴含的函数依赖全体叫做F的闭包,记为F+。
**设F为属性集U上的一组函数依赖,X.Y属于U,X+(F)={A|X->A能有F根据Armstrong公理导出},X+(F)称为属性集X关于函数依赖集F的闭包。
**设F为属性集U上的一组函数依赖,X,Y属于U,X->Y能由F根据Armstrong公理导出的充分必要条件是Y属于X+(F)。
**如果G+=F+,就说函数依赖集F覆盖G或F与G等价。
**F+=G+的充分必要条件是F+属于G+或者G属于F+;
**如果函数依赖集F满足下列条件,则称F为一个极小函数依赖集,也称为最小依赖集或最小覆盖:
①F中任一函数依赖的右部仅含有一个属性;
②F中不存在这样的函数依赖X->A,使得F与F-{X->A}等价;
③F中不存在这样的函数依赖X->A,X有真子集Z使得F-{X->A}并{Z->A}与F等价
**每一个函数依赖集F均等价于一个极小函数依赖集F(m)。此F(m)称为F的最小依赖集。
**两个关系模式R1<U,F>,R2<U,G>,如果F与G等价,那么R1的关系一定是R2的关系;反过来,R2的关系也一定是R1的关系;所以在R<U,F>中用与F等价的依赖集G来取代F是允许的。