5第五章第2讲函数依赖公理体系

合集下载

主键,超键,外键,候选键,函数依赖,第一范式,第二范式,第三范式,BCNF,第四范式

主键,超键,外键,候选键,函数依赖,第一范式,第二范式,第三范式,BCNF,第四范式

主键,超键,外键,候选键,函数依赖,第⼀范式,第⼆范式,第三范式,BCNF,第四范式最近回顾了下数据库的相关知识,正好借着这个机会,把其中⼀些概念重新理⼀理,也加深⼀些印象。

⾸先我们来看看数据库中的基本概念:超键(super-key):在⼀个关系中能唯⼀地标志⼀个元组。

候选键(candidate):最⼩的超键,其任意真⾃⼰都不能成为⼀个超码。

例如,(⾝份证号,姓名)和(⾝份证号)都可以试超键,但(⾝份证号)是候选码。

主键(primary key):⽤户选作元组标识的⼀个候选键程序主键。

主键通常由⽤户从候选码中选择出来的。

外键(foreign key):假设存在两组关系,r和s,其中r(A, B, C), s(B, D),在关系r上的属性B称作参照s的外键,r也成为外码依赖的参照关系,s叫做外码被参照关系。

参照关系中外键的值必须在参照关系中存在或者null主属性:包括在候选键中的属性。

熟悉了这些概念之后我们来看看范式。

范式(Normal Form)⽬前常见的范式包括第⼀范式(1NF),第⼆范式(2NF),第三范式(3NF),Boyce-Codd(BCNF)和第四范式(4NF)。

第⼀范式:关系模式中的所有熟悉的域都是原⼦的。

如果某个域中元素被认为是不可分的,则成这个域为原⼦的。

如姓名,可以拆分为姓和名,因此,这⾥的姓名是⾮原⼦的。

1NF的缺点是存在数据的冗余以及当插⼊更新删除是容易出现异常。

第⼆范式:在满⾜第⼀范式的关系模式中,每⼀个⾮主属性完全函数依赖于任何⼀个候选键,则R属于第⼆范式。

满⾜第⼀范式的关系模式可以通过模式分解,⽣产满⾜第⼆范式的多个关系模式。

模式分解需要满⾜⼀下两个条件⽆损分解:在分解之后,n个分解关系通过⾃然连接(⾃然连接是在等值连接的基础上去掉相同的列,如果⾃然连接中找不到等值信息那么⾃然连接就等价于笛卡尔积)形成的⼆维表和没分解之前关系的⼆维表是等价的(元组没有增加也没有减少),则称这种分解形成的关系模式保持⽆损连接性;R1∩R2→(R1-R2)或R1∩R2→(R2-R1)保持函数依赖(functional dependency):函数依赖借助了数学上的函数概念α→β,即在属性集α上的值相同时,其在属性集β上的值也相同,我们称β函数依赖与α,α函数决定β。

[总结]关系数据库设计基础(函数依赖、无损连接性、保持函数依赖、范式、……)

[总结]关系数据库设计基础(函数依赖、无损连接性、保持函数依赖、范式、……)

[总结]关系数据库设计基础(函数依赖、⽆损连接性、保持函数依赖、范式、……)≏≎≟≗≖≍≭∼∽≁≃≂≅≊≈≉≇≳⪞⪆⋧⪊≵≲⪝⪅⋦⪉≴⊂ subset ⋐⊄⊊ ⊈⊃⊇ ⋑⊅⊋ ⊉≺⪯≼⋞≾⪷⋨⪵⪹⊀≻⪰≽⋟≿⪸⋩⪶⪺⊁ in ∋∉∌∝≬⊸函数依赖(Function Dependency)定义设关系模式R(U),属性集合U= {A1,A2,…,An},X,Y为属性集合U的⼦集,如果对于关系模式R(U)的任⼀可能的关系r,r中的任意两个元组u、v,若有 u[X]=v[X],就有u[Y]=v[Y],则称X函数决定Y,或称Y函数依赖于X。

⽤符号X→Y表⽰。

其中X为决定因素,Y为被决定因素。

若对于R(U)的任意⼀个可能的关系r,r中不可能存在两个元组在X上的属性值性等,⽽在Y上的属性值不等。

 (1) 函数依赖是语义范畴的概念,只能根据语义来确定⼀个函数依赖关系。

 (2) 函数依赖X→Y的定义要求关系模式R的任何可能的关系r中的元组都满⾜函数依赖条件。

术语 (1)若X→Y,则X称作决定因素(Determinant) (2)若X→Y,Y→X,称作X<->Y。

 (3)若Y不函数依赖于X,称作X -/-> Y。

 (4)X→Y,若Y不包含X,即X ⊄ Y,则称X→Y为⾮平凡的函数依赖。

正常讨论的都是⾮平凡的函数依赖。

 (5)X→Y,若Y包含X,即X ⊂ Y,则称X→Y为平凡的函数依赖。

 (6)完全函数依赖(full functional dependency):在R(U)中,设X、Y是关系模式R(U)中不同的属性⼦集(即X ⊂ U,Y ⊂ U), 若存在 X→Y,且不存在 X的任何真⼦集X'(即 X' ⊊ X),使得 X'→Y,则称Y完全函数依赖 ( full functional dependency ) 于X。

记作 X-F->Y。

 (7)部分函数依赖:在关系模式R(U)中,X、Y是关系模式R(U)中不同的属性⼦集(即X ⊂ U,Y ⊂ U), 若X→Y成⽴,如果X中存在任何真⼦集X'(即 X' ⊊ X),⽽且有X'→Y也成⽴,则称Y对X是部分函数依赖,记作:X-P->Y。

关系数据理论课后答案

关系数据理论课后答案

关系数据理论课后答案第五章关系数据理论习题解答和解析1.理解并给出下列术语的定义:函数依赖、部分函数依赖、完全函数依赖、传递依赖、候选码、主码、外码、全码(All-key)、1NF、2NF、3NF、BCNF、多值依赖、4NF。

解析:解答本题不能仅仅把《概论》上的定义写下来。

关键是真正理解和运用这些概念。

答:函数依赖:设R(U)是一个关系模式,U是R的属性集合,X和Y是U的子集。

对于R(U)的任意一个可能的关系r,如果r中不存在两个元组,它们在X上的属性值相同,而在Y上的属性值不同,则称"X函数确定Y"或"Y函数依赖于X",记作X→Y。

解析:(1)函数依赖是最基本的一种数据依赖,也是最重要的一种数据依赖。

(2)函数依赖是属性之间的一种联系,体现在属性值是否相等。

由上面的定义可以知道,如果X→Y,则r中任意两个元组,若它们在X上的属性值相同,那么在Y上的属性值一定也相同。

(3)要从属性间实际存在的语义来确定他们之间的函数依赖,即函数依赖反映了(描述了)现实世界的一种语义。

(4)函数依赖不是指关系模式R在某个时刻的关系(值)满足的约束条件,而是指R任何时刻的一切关系均要满足的约束条件。

答:完全函数依赖、部分函数依赖:在R(U)中,如果X→Y,并且对于X的任何一个真子集X',都有X'Y,则称Y对X完全函数依赖,记作:若X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作:?→Z,则称Z对X传递函数依赖。

传递依赖:在R(U)中,如果X→Y,(Y候选码、主码:设K为R<u,f>中的属性或属性组合,若K→U(完全依赖)则K为R的候选码(Candidate key)。

若候选码多于一个,则选运其中的一个为主码(Pdmary key)。

解析:1)这里我们用函数依赖来严格定义码的概念。

在第二章中我们只是描述性地定义码(可以复习若关系中的某一属性组的值能惟一地标识一个元组,则称该属性组为候选码(Candidate key)。

函数依赖闭包

函数依赖闭包

函数依赖闭包⼀、函数依赖的逻辑蕴涵定义:设有关系模式R(U)及其函数依赖集F,如果对于R的任⼀个满⾜F的关系r函数依赖X→Y都成⽴,则称F逻辑蕴涵X→Y,或称X→Y可以由F推出。

例:关系模式 R=(A,B,C),函数依赖集F={A→B,B→C}, F逻辑蕴涵A→C。

证:设u,v为r中任意两个元组:若A→C不成⽴,则有u[A]=v[A],⽽u[C]≠v[C]⽽且A→B, B→C,知u[A]=v[A], u[B]=v[B], u[C]=v[C],即若u[A]=v[A]则u[C]=v[C],和假设⽭盾。

故F逻辑蕴涵A→C。

满⾜F依赖集的所有元组都函数依赖X→Y(X→Y不属于F集),则称F逻辑蕴涵X→Y(X→Y由F依赖集中所有依赖关系推断⽽出)⼆、Armstrong公理1、定理:若U为关系模式R的属性全集,F为U上的⼀组函数依赖,设X、Y、Z、W均为R的⼦集,对R(U,F)有:F1(⾃反性):若X≥Y(表X包含Y),则X→Y为F所蕴涵;(F1':X→X)F2(增⼴性): 若X→Y为F所蕴涵,则XZ→YZ为F所蕴涵;(F2':XZ→Y)F3(传递性): 若X→Y,Y→Z为F所蕴涵,则X→Z为F所蕴涵;F4(伪增性):若X→Y,W≥Z(表W包含Z)为F所蕴涵,则XW→YZ为F所蕴涵;F5(伪传性): 若X→Y,YW→Z为F所蕴涵, 则XW→Z为F所蕴涵;F6(合成性): 若X→Y,X→Z为F所蕴涵,则X→YZ为F所蕴涵;F7(分解性): 若X→Y,Z≤Y (表Z包含于Y)为F所蕴涵,则X→Z为F所蕴涵。

函数依赖推理规则F1∽F7都是正确的。

2、Armstrong公理:推理规则F1、F2、F3合称Armstrong公理;F4 ∽ F7可由F1、F2、F3推得,是Armstrong公理的推论部分。

三、函数依赖的闭包定义:若F为关系模式R(U)的函数依赖集,我们把F以及所有被F逻辑蕴涵的函数依赖的集合称为F的闭包,记为F+。

第3-4讲函数依赖和公理

第3-4讲函数依赖和公理
练习1中函数依赖 AB→D是完全依赖还是部分依赖? 思考: 如果X只有一个属性, X→Y是否一定是完全函数依赖?
定义(传递FD):设关系模式R,X、Y、Z是R的属性子集, 若FD X→Y,Y → X,Y→Z,则有FD X→Z,称FD X→Z为 传递函数依赖。
函数依赖、完全依赖、传递依赖等基本概念是第四章关系 数据库范式的基础。
18
算法3.2.3
判定F是否蕴涵X→Y的成员测试算法
输入:函数依赖集F和FD X→Y。
输出:若F蕴涵X→Y输出为true,否则为false MEMBER(F, X→Y) begin if Y CLOSURE(X,F) then return(true) eles return(false) end.
={AB→E,E→G, BE→I, GI→H}
13
定义(函数依赖集F的闭包 F +)
设F是关系r(R)上的函数依赖集,F所蕴含的所有FD的集
合称为F的闭包,记作F +。 F
+
= { X→Y
|
所有F |= X→Y }
例:设F={AB→C,C→B}。 求F+
14
设F={AB→C,C→B}。 F+ 为: F+ = {A→A, AB→A, AC→A, ABC→A, B→B, AB→B, BC→B,ABC→B,C→C,AC→C,BC→C,ABC→C,AB→AB, ABC→AB,AC→AC,ABC→AC,BC→BC, ABC→BC, ABC→ABC, AB→C, AB→AC, AB→BC, AB→ABC,C→B,

(3)并比较两种方法更好用语言来实现。
21
(1)设F ={AB→C,B→D,CD→E,CE→GH,G→A},

数据库原理第五章关系数据库的规范化设计

数据库原理第五章关系数据库的规范化设计
在以上三个关系模式中,实现了信息的某种程度的 分离: T中存储教师基本信息,与所选课程及系主任无关; D中存储系的有关信息,与教师无关; TC中存储教师讲授课程的信息,而与教师及系的信 息无关。
12
模式分解是关系规范化的 主要方法(二)
与TDC相比,分解为三个关系模式后,数据的冗余度明显 降低。 当新插入一个系时,只要在关系D中添加一条记录。 当某个教师尚未讲课,只要在关系T中添加一条教师记录, 而与TC授课关系无关,这就避免了插入异常。 当某个系的教师不再讲课时,只需在TC中删除该教师的 全部授课记录,而关系D中有关该系的信息仍然保留,从 而不会引起删除异常。 同时,由于数据冗余度的降低,数据没有重复存储,也不 会引起更新异常。
24
2.2 完全函数依赖和部分函数依赖
例如:学生成绩表中
姓名 王一 王二 王三 王一
学号 1 2 3 4
年龄 16 15 16 16
籍贯 河北 山东 北京 天津
姓名不能推出年龄,学号也不能推出年龄,但是 姓名 + 学号能推出年龄,故完全依赖;
学号能直接推出籍贯,故是部分依赖
25
2.3 传递函数依赖
当关系中的元组增加、删除或更新后都不能被破 坏这种函数依赖。因此,必须根据语义来确定属 性之间的函数依赖,而不能单凭某一时刻关系中 的实际数据值来判断。
20
函数依赖的定义和性质(六)
函数依赖可以保证关系分解的无损连接性
设R(X,Y,Z),X,Y,Z为不相交的属性集合,如果X Y或X Z,则有R(X,Y,Z)=R[X,Y]*R[X,Z],其中,R[X,Y]表示关 系R在属性(X,Y)上的投影,即 R等于其投影在X上的自然连 接,这样便保证了关系R分解后不会丢失原有的信息,称为 关系分解的无损连接性

函数依赖的公理系统资料

函数依赖的公理系统资料

定义4.15 最小覆盖. 满足下列条件的函数依赖集F称为最小覆盖(最 小依赖集, 极小依赖集),记作Fmin:

(1) 单属性:F中任一函数依赖 XA,A必是单属 性。 (2) 无冗余性:F中不存在这样的函数依赖X A, 使得 F与 F {X A}等价。 (3) 既约性:F中不存在这样的函数依赖 X A, X是多属性,在X中有真子集 Z,使得 F 与 F {X A} {Z A}等价。
2
函数依赖集的闭包F+


定义 4.12 在关系模式 R<U,F> 中,被 F 所 逻辑蕴涵的函数依赖的全体所构成的集合称 作F的闭包,记作 F+ = {XY | F├ XY} + 显然,F F 。 F+的计算很麻烦,F不大,其F+也可能很大。 例如: 设 R<U, F>, U={X, Y, Z}, F = {XY, YZ} F+ = { XX, XY,X Z, YY, YZ, Z Z, XYX,XYY,XYXY, XZ→X, ……}
函数依赖的公理系统

建立函数依赖推理系统的目的:
(1) 求关系模式的候选码 (2) 判断关系模式的范式级别 (3) 给定一组函数依赖,需要导出另外一些函数依赖, 或判断另外的函数依赖是否成立。例如: FD={A B,B C},判断 A C是否成立?

本节内容:
1. 逻辑蕴涵; 2. Armstrong函数依赖公理系统; 3. 函数依赖集的闭包; 4. 属性集闭包; 5. 函数依赖集的等价和覆盖; 6. 最小函数依赖集。
XY
t[XZ] = s[XZ]
t[Y] = s[Y] t[Z] = s[Z]
t[YZ] = s[YZ]

函数依赖的公理系统

函数依赖的公理系统

函数依赖集的等价和覆盖
求最小函数依赖集的方法:

应用分解规则,使F中每一个依赖的右部单一化。 去掉各函数依赖左部多余的属性。
方法:检查F中左边是非单属性的依赖,如: XY→A, 要判定Y是否多余,只要求X闭包,若X闭包A,则Y 是多余的,以X →Y 代替XY→A。

去掉多余的依赖。
方法:从第一个依赖开始,若要从F中去掉X →Y ,则在 剩下的依赖中求X闭包,若X闭包包含Y,则去掉X →Y
属性集闭包计算举例
练习 已知R<U,F>, U= (A, B, C, G, H, I),F={AB, AC, CGH,
CGI, BH},计算(AG)+。 – 算法第一次循环的执行步骤: 步骤 FD closure
1.
2. 3. 4. 6. 6.
初值
AB AC CGH CGI BH
增广律得证。
定理 Armstrong推理规则是正确的
(3) 传递律:若X→Y及Y→Z为F所蕴含,则 X→Z为 F所蕴含。
证:设X→Y及Y→Z为F所蕴含。
对R<U,F> 的任一关系 r中的任意两个元组 t,s。 若t[X]=s[X],由于X→Y,有 t[Y]=s[Y];
再由Y→Z,有t[Z]=s[Z],所以X→Z为F所蕴含.
引理: X→A1 A2…Ak成立的充分必要条件 是X→Ai成立(i=l,2,…,k)。
总结:函数依赖(FD)的推理规则
函数依赖有一个正确的和完备的推理规则集——Armstrong 推理规则:
设有关系模式R(U),X,Y,Z,W均是U的子集,F是R上只涉及到U 中属性的函数依赖集, 推理规则如下:
候选码的判断
设有关系R({A1,A2,…,An},F),F为R的函数依赖集,X为
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
③ 在Y中取一属性A,并求(XA)F+ :若(XA)F+包 含了R的全部属性,则XA为的一个候选键; ④ 重复③,直到Y中的属性依次取完为止; ⑤ 从Y中除去所有已成为主属性的属性A;
2013-4-2 南晓数信学院 30
四、候选键的求解方法 3、候选键的一般求解法 ⑥ 在剩余的属性中依次取两个属性、三个属 性,…,将其记为集合B,并求(XB)F+ :若 (XB)F+包含了R的全部属性,且自身不包含已 求出的候选键,则XB为R的一个候选键; ⑦ 重复⑥,直到Y中的属性按⑥的组合依次取完 为止; ⑧ 输出候选键,算法结束。
B→C},求函数依赖集F的闭包F+。(P103)
A→ , AB→ , AC→ , ABC→ , B→ , C→
A→ A, AB→ A, AC→ A, ABC→ A, B→ B, C→ C A→ B, AB→ B, AC→ B, ABC→ B, B→ C,
+= A→ C, AB→ C, AC→ C, ABC→ C, B→ BC, F A→ AB, AB→ AB, AC→ AB, ABC→ AB, BC→ ,
南晓数信学院 26

F 3=
2013-4-2
3、举例(续四)
例5.5:求函数依赖集F的最小函数依赖集
法2:(步骤一:分解规则 )步骤二:去掉F中冗余的函数依赖 ① F 1=
ABC,CA,BCD,ACDB, DE,DG,BEC,CGB CGD,CEA,CEG
ABC,CA,BCD, DE,DG,BEC, CGB,CEG
2013-4-2
南晓数信学院
7
4、定理5.2 如果Ai(i=1,…,n)是关系模式R的属性,则 XA1A2…An成立的充分必要条件是XAi(i= 1,…,n)均成立。
作用:将一个FD分解成若干个右边是单属性 的FD。用于确定关系的主键。
2013-4-2
南晓数信学院
8
二、X关于F的闭包及其计算 例:已知关系模式R(A,B,C),其函数依赖集为F={A→B,
A→ AC, AB→ AC, AC→ AC, ABC→ AC, BC→ B, A→ BC, AB→ BC, AC→ BC, ABC→ BC, BC→ C, A→ ABC,AB→ ABC,AC→ ABC,ABC→ ABC,BC→ BC,
2013-4-2 南晓数信学院 9
1、X关于F的闭包 设 有 关 系 模 式 R(U,F) 和 属 性 集 U={A1,A2,…,An}的子集X。则称所有用阿姆斯特 朗公理从F推导出的函数依赖X→Ai的属性Ai组成 的集合称为X关于F的闭包,记为XF+ ,通常简记 为X+。即 XF+={Ai|用公理从F推出的X→Ai}
南晓数信学院 25

F22=
2013-4-2
3、举例(续三)
例5.5:求函数依赖集F的最小函数依赖集
步骤三:去掉左端多余的属性

F22=
ABC,CA,BCD, ACDB,DE,DG, BEC,CGD,CEG ABC,CA,BCD, CDB,DE,DG, BEC,CGD,CEG
(1)X(0)=X。
(2)从F中找出满足条件VX(i) 的所有函数依赖 V→W,并把所有的V→W中的属性W组成的集合记 为Z;也即从F中找出那些其决定因素是X(i)的子 集的函数依赖,并把由所有这样的依赖的被决 定因素组成的集合记为Z。 (3)若ZX(i),则转(5)。(当X(i)只决定自己时)
由u、v的任意性,并根据函数依赖的定义, 可得 XY。
2013-4-2 南晓数信学院 5
3、 阿姆斯特朗公理的推论
合并规则:若XY且XZ,则XYZ (增广律)
分解规则:若XY,且ZY,则XZ (自反律)
伪传递规则:若XY且WYZ,则WXZ
证: XY 增广律 WX→WY WY→Z
2013-4-2
南晓数信学院
4
2、定理5.1
Armstrong公理是正确的。
方法:从函数依赖的定义出发
A1 自反律:若YX,则XY (增广律,传递律证明类 似,P104)
证:设u、v为r的任意两个元组。
若u[X]=v[X],则u和v在X的任何子集上必然 相等。
由条件YX ,所以有:u[Y]=v[Y],
南晓数信学院 24

F21=
2013-4-2
3、举例(续二)
例5.5:求函数依赖集F的最小函数依赖集
(步骤二:去掉F中冗余的函数依赖 )
② F21=
ABC,CA,BCD,ACDB, DE,DG , BEC , CGD , CEA,CEG ABC,CA,BCD, ACDB,DE,DG, BEC,CGD,CEG
对比
2013-4-2
F+和X+
集合元素
南晓数信学院 10
2、定理5.3
设有关系模式R(U,F),U={A1,A2,…,An}是R 的属性集,F是R的属性集U上的函数依赖集,X、 Y是U的子集,则
XY能用Armstrong公理从F导出YX+。 该定理把判定XY是否能由F根据Armstrong 公理导出的问题
Z=EG
BD=X(0)
(1)X(0)=BD。({B}、{D}、{B,D}) X+ 、 {D} 、 ( 1 ) =BDEG ( {B} =ABCDEG {E} 、 {G} 、 {B 、 (2)X D}…2n-1个子集) +,故BD→A成立 A∈BD (3)X(2)=BCDEG
(4)X(3)=ABCDEG
南晓数信学院 27
步骤三:去掉左端多余的属性

F21=
2013-4-2
四、候选键的求解方法 1、属性分类 对于给定的关系R(U)和函数依赖集F,可 将其属性分为4类:
① L类:仅出现在F的函数依赖左部的属性;
② R类:仅出现在F的函数依赖右部的属性;
③ N类:在F的FD左右两边均未出现的属性;
④ LR类:在F的FD左右两边均出现的属性。
(5)若X是R的N类属性和L类属性组成的属性集,且X+ 包含了R的全部属性,则X是R的唯一候选键。
2013-4-2
南晓数信学院
29
四、候选键的求解方法 3、候选键的一般求解方法 ① 将所有属性分为L、R、N和LR四类,并令X代 表L和N类,Y代表LR类;
② 求XF+:若XF+包含了R的全部属性,则X是R的 唯一候选键,转⑧;
2013-4-2 南晓数信学院 22
3、举例
例5.5:求函数依赖集F的最小函数依赖集
ABC,CA,BCD, F= ACDB,DEG,BEC, CGBD,CEAG 法1:(步骤一:分解规则 ) ① F1=
ABC,CA,BCD,ACDB, DE,DG,BEC,CGB , CGD,CEA,CEG
第2讲 函数依赖的公理体系
授课人: 李朔 Email:chn.nj.ls@
2013-4-2 南晓数信学院 1
主要内容
阿姆斯特朗公理及推论
X关于F的闭包及其计算




最小函数依赖集
候选键的求解方法
2013-4-2
南晓数信学院
2
一、阿姆斯特朗公理及推论 问题引入:
F=X→Y F+ 侯选键 X→Y在R 中是否成立
2013-4-2
南晓数信学院
21
求解方法(续二)
(3)去掉左端多余的属性
对于F中左端是非单属性的函数依赖 (XYA),假设要判断Y是否是多余的属性
① G = (F-{XYA})∪{XA};
② 求X关于F的闭包XF+;
③ 如果A不属于XF+ ,则XA不在F+ 中,说明Y 不是多余的属性,接着判别X是否是多余的属性; 如果A属于XF+,则说明Y是多余的属性,F=G。
2013-4-2 南晓数信学院 15
1、函数依赖集的等价与覆盖 定义5.5 设F和G是两个函数依赖集,如果F+=G+,则 称F和G等价。如果F和G等价,则称F覆盖G,同 时也称G覆盖F。
2013-4-2
南晓数信学院
16
定理
定理5.4 F+=G+的充要条件是FG+和GF+。
所 有
F
F += G +
求出X+,判定Y是否为X+的子集的问题。
2013-4-2 南晓数信学院 11
3、X关于F的闭包X+的计算 算法5.1 求属性集X关于函数依赖集F的闭包X+ 输入: 关系模式R的全部属性集U,U上的函数依赖集 F,U的子集X。 输出:
X关于F的闭包X+。
计算方法:
2013-4-2
南晓数信学院
12
3、X关于F的闭包X+的计算(续)
③ 对F中的任何FD:XA和X的任何真子集Z,
(F-{XA})∪{ZA}不等价于F。
每个FD左端无多余的属性
2013-4-2 南晓数信学院 19
求解方法 (1)用分解规则将F中的所有函数依赖分解成右 端为单个属性的函数依赖; Armstrong公理的推论 分解规则:若XY,且ZY,则XZ
传递律
WX→Z
2013-4-2
南晓数信学院
6
例5.2简化版 P105 对关系模式R(A,B,C),依赖集F={C->A,AB->C}, 候选键为AB和CB,证明BC->ABC.
证明:已知有C->A,由增广律可得BC->AB,
又已知AB->C,由增广律可得AB->ABC
综上由传递律可得 BC->ABC
X→Y

G+
F+ (G+)+
FG+,
FG+ GF+
定理意义:P107 不计算F+与G+,对于F(或G)中 每个X->Y,只通过求Xg+中是否 包含Y来判断FG+, XF+来判断GF
相关文档
最新文档