* 数据依赖的公理系统(续) 定义6.12 在关系模式RU,F中为F所逻辑蕴涵的函数依赖的全体叫作F的闭包,记为F +。 定义6.13 设F为属性集U上的一组函数依赖,X、Y ?U, XF+={ A|X→A能由F根据Armstrong公理导出},XF+称为属性集X关于函数依赖集F的闭包。 * 数据依赖的公理系统(续) 引理6.2 设F为属性集U上的一组函数依赖,X、Y ? U,X→Y能由F根据Armstrong公理导出的充分必要条件是Y ?XF+。 引理6.2的用途 判定X→Y是否能由F根据Armstrong公理导出的问题,就 转化为求出XF+,判定Y是否为XF+的子集的问题。 * 数据依赖的公理系统(续) 求闭包的算法 算法6.1 求属性集X(X ? U)关于U上的函数依赖集F的闭包XF+ 输入:X,F 输出:XF+ 步骤: 迭代 * 数据依赖的公理系统(续) 令X(0)=X,i=0 求B,这里B ={ A |(? V)( ? W)(V→W?F ∧V ? X(i)∧A? W)}。 X(i+1)=B∪X(i) 。 判断X(i+1)= X(i) 。 若X(i+1)与X(i)相等或X(i)=U ,则X(i)就是XF+, 算法终止。 若否,则i=i+1,返回第②步。 对
原创力文档

文档评论(0)