Armstrong公理系统与模式分解🌵

 

Armstrong公理系统

🎈Armstrong公理系统(函数依赖的公理系统):设关系模式R(U,F),其中U为属性集,F是U上的一 组函数依赖,那么有如下推理规则:

  1. 自反律:若Y⊆X⊆U,则X→Y为F所蕴涵。

  2. 增广律:若X→Y为F所蕴涵,且Z⊆U,则XZ→YZ为F所蕴涵。

  3. 传递律:若X→Y,Y→Z为F所蕴涵,则X→Z为F所蕴涵。

🎈根据上述三条推理规则又可推出下述三条推理规则:

  1. 合并规则:若X→Y,X→Z,则X→YZ为F所蕴涵。

  2. 伪传递律:若X→Y,WY→Z,则XW→Z为F所蕴涵。

  3. 分解规则:若X→Y,Z⊆Y,则X→Z为F所蕴涵。

 

函数依赖的闭包F +

  • 定义:关系模式R(U,F)中为F所逻辑蕴含的函数依赖的全体称为F的闭 包,记为:F + 。

 

属性的闭包XF +

  • 定义:设F为属性集U上的一组函数依赖,X⊆U,XF +={A|X→A能由F根据Armstrong公 理导出},则称XF +为属性集X关于函数依赖集F的闭包。属性集X的闭包XF +是指所有能由X决定的属性集合

 

🎁候选码的求解方法

给定一个关系模式R(U,F),U={A1,A2,…,An},F是R的函数依赖集,那么,可以将属性分为如下四类:

  • L:仅出现在函数依赖集F左部的属性

  • R:仅出现在函数依赖集F右部的属性

  • LR:在函数依赖集F左右部都出现的属性

  • NLR:在函数依赖集F左右部都未出现的属性

求解方法
  1. 根据题意,将所有的属性分类:

    • L:只在左边出现,一定是

    • R:只在右边出现,一定不是

    • LR:左右都出现,有可能是,也有可能不是

    • NLR:左右都没出现,一定是

  2. 将所有的L类和NLR类属性组合起来,设为P,求其闭包PF + ,如果是全集U, 那么它就是候选码✨。

  3. 如果PF +不是全集U,则依次将LR类属性跟P组合起来求闭包,只要其闭包是 全集U,就是候选码。

 

最小函数依赖集

🎈如果函数依赖集F满足下列条件,则称F为一个最小函数依赖集,或称极小函数依赖集或最小覆盖。

  • 所有函数依赖的右侧只有一个属性。

  • 没有冗余的函数依赖。

  • 所有函数依赖的左侧没有冗余的属性。

 

无损连接

无损连接是指将一个关系模式分解成若干个关系模式后,通过自然连接和投影等运算仍能还原到 原来的关系模式,则称这种分解为无损连接分解。

  • 🎈定理:关系模式R(U,F)的一个分解ρ ={ R1(U1,F1),R2(U2,F2)},具有无损连接的充分必要的条件是: U1⋂U2→U1-U2∈F+或U1⋂U2→U2-U1∈F+ 。

  • 注意:这个定理只适用于分解为两个子模式的情况,分解为多个子模式的时候不适用。

 

保持函数依赖

  • 定义:设关系模式R(U,F)的一个分解 ρ ={R1(U1,F1), R2(U2,F2),…,Rk(Uk,Fk)},如 果F+=(⋃Fi)+ ,则称分解ρ保持函数依赖。 即:(F1⋃F2⋃F3⋃…⋃Fk) + = F +

posted @ 2022-05-11 15:43  仙人掌掌掌掌  阅读(150)  评论(0)    收藏  举报