设R(U),X,Z,Y\subseteqU,X,Y,Z属性集不必不相交,对于R(U)的任一关系r,有以下规则:(此处的Z仅代表一个属性集,若Z代表余集会在题中注明,不要与多值依赖的余集Z混淆)


   我们将在满足高范式约束要求、符合实体常见关系(一对一,一对多,多对多)且排除嵌入性多值依赖(即要求X->->Y在U上成立)及孤立属性上讨论。

    证明的要点在于如何切割属性集使得能够在符合要求的集合内细化分类结合题干找出存在的元组情况。(分类尤为重要)


(1)若X->Y,则X->->Y;(Z=U-X-Y)

    从语义上理解:对于X->Y而言,意味着在X属性组中一个确定的值对应着Y属性组中唯一的值,而X->->Y意味着在X属性组中一个确定的值对应着Y属性组中一组值。当然,在集合的角度上,唯一的值也可构成单元素集合,因此可解。

   从定义上理解:

    对于X->Y中有s[X]=t[X],则s[Y]=t[Y],s[Z]=t[Z](根据定义知:不存在s[X]=t[X]时,s[Y]≠t[Y],s、t∈R),亦有若w、v∈R,s[X]=t[X]=v[X]=w[X],s[Y]=t[Y]=v[Y]=w[Y],s[Z]=t[Z]=v[Z]=w[Z],令s和t的Y值交换后,显然产生的新元组仍然是s,t。即存在v=s且w=t,则根据多值依赖定义可得X->->Y。

    或是X->->Y是平凡的多值依赖。

    或是含X->Y的关系模式直接符合多值依赖定义。


(2)多值依赖互补律(对称性):若X->->Y,则X->-> U-X-Y;

    (提要)设G=(V,E)为二分图,V=X∪Y,且X中的任一顶点与Y中每一个顶点均有且仅有唯一的一条边相连,则称G为完全二分图或完全偶图。

    由图显然看出余集是和Y具有对称性的,因此可解。 


(3)多值依赖增广律:若X->->Y且V\subseteqW,则WX->->VY;

    依据多值依赖的定义显而易见。


(4)多值依赖传递律:若X->->Y,Y->->Z,则X->->Z-Y;(注:X->->Y,Y->->Z,则X->->Z不一定成立);

   当Y∩Z=\o 时,X->->Z成立,否则不成立。

 1、举例子说明

2、利用反证法证明


(5)若X->->Y,Z\subseteqY且对于某个与Y不相交的W有W->Z,W∩Y=\o,则有X->Z。


(6)若X->->Y,X->->Z,则X->->YZ;


(7)若X->->Y,X->->Z,则X->->Y∩Z;

    


 

(8)若X->->Y,X->->Z,则X->->Y-Z,X->->Z-Y;

    

 

参考资料

【1】王珊 萨师煊编著 《数据库系统概论(第四版)》[M]北京:高等教育出版社,2006.5

【2】战德臣 、张丽杰 、史建焘 讲授 《数据库系统(中):建模与设计》 哈尔滨工业大学

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐