
函数:X → Y;表示:当 X 取值 “确定” 时,Y 的取值也是 “确定” 的;
蕴含:P =>Q;表示:当 P 取值 “为真” 时,Q 的取值也是 “为真” 的;
(1)函数所讨论的是 “任意变量”;蕴含只讨论 “命题变量”;
(2)函数和蕴含都表达了两个变量之间的一种关系:前一个变量的取值(至少是某些取值) “决定” 了后一个变量的取值;但是:
(3)函数中的 “决定”,是对前一个变量(自变量)在一定论域(定义域)内的所有取值均适用的;
而在蕴含中,只有在前一个变量(条件)为真时,另一个变量(结论)才有确定的取值——真。仅此一条,就足以说明:蕴含不是函数。
(4)利用函数自变量和因变量的取值,可以构造出命题变量,然后就可以建立蕴含关系了:对任意函数:Y = F(X);其任意的自变量 x0,可以构造两个命题:
P:X = x0;
Q:Y = F(x0);
显然:P =>Q;
即对任意函数的任意一个自变量及其函数值,都可以构造一个蕴含关系。这也算是函数与蕴含之间的一种联系吧!
1.{1}A→B P2.{2}CD→A P
3.{3}B→D P
4.{4}CD→E P
5.{5}CE→A P/∴AC→BE
6.{6}AC P
7.{6}A∧-6
8.{16}B →-1.7
9.{136}D →-3.8
10{6}C ∧-6
11{136}CD ∧+9.10
12{1246}E→-4.11
13{1246}BE ∧+8.12
14{124}AC→BE→+6.13
证毕
蕴涵(“→”)是一种命题运算的二元算子,其前域是后域的充分条件。充分条件句就是蕴涵句。p是q的充分条件,意味着有p必定有q;但,无p未必无q。这样p就是q的充分条件。
数据库中的范式问题.理论和时间要结合.第一范式:当且仅当一个关系变量的所有的合法的值中,每一个元组的每个属性只含有
一个值时,该关系变量属于1 N F。
第二范式:(假定只有一个候选码,且该候选码是主码)当且仅当一个关系变量属于
1 N F,且该关系变量的每一个非码属性都完全函数依赖于主码时,该关系变量属于2 N F。
第三范式(假定关系变量只有一个候选码,且该候选码是主码):当且仅当一个关系变
量属于2 N F且该关系变量的所有非码属性都不传递依赖于主码时,该关系变量属于3 N F。
注意:“不传递依赖”蕴涵不互相依赖,从这个意义上说,该术语的解释和本节开始的
解释一样。
多值依赖: R是一个关系变量, A、B和C是R的属性的子集。那么我们说B多值依赖于A
—符号如下:A→→B(读做“A多值决定B”,或简单地称为“ A双箭头B”)—当且仅当
对于每一个可能的合法R值,B值的集合对于给定的一组( A值,C值)只依赖于A的值,而与
C的值无关。
很容易看出—参见[ 1 2 . 1 3 ]—对于给定的变量R{A,B,C},多值依赖A→→B存在,当且
仅当多值依赖A→→C也存在。这样M V D总是成对的一起出现。因此通常用一种语句来表示它
们:A→→B|C。例如:C O U R S E→→T E A C H E R | T E X T。
在前面我们已经提到,多值依赖是一般化的函数依赖,在这种意义上讲每一个F D都是
M V D。更精确地说,一个F D就是一个只有一个依赖值(右边的)与一个给定的决定值相符合
的M V D。因此,如果A→B,那么一定A→→B。
第四范式:只要存在R的属性的子集A和B,满足非平凡的多值依赖,并且R的所有属
性也都函数依赖于A,这样的关系变量R满足4 N F。
换句话说,在R中的唯一的非平凡的依赖(函数依赖或多值依赖)是K→→X形式(例如:
一个超码K对另一个属性X的函数依赖)。同样,如果R是B C N F,并且R中的所有非平凡的多值
依赖事实上都是“非码函数依赖( FDs out of key)”,则R是4 N F的。因此特别要注意的是,
4 N F包含了B C N F。
第五范式:一个关系变量R是第五范式—也称为投影-连接范式( P J / N F)—当且仅当
R的每一个非平凡的连接依赖都被R的候选码所蕴涵。
注意:下面解释一下对于一个J D“被候选码所蕴涵”的含义。
关系变量S P J并不是5 N F;它满足一个特定的连接依赖,即3 D约束。这显然没有被其唯一
的候选码(这个候选码是其所有的属性值的组合)所蕴涵。可以表示其区别如下:关系变量
S P J并不是5 N F,因为( a)它是可以被3分解的;(b)可3分解性并没有为其{ S #,P #,J # }是
一个候选码的事实所蕴涵。相反, 3分解后,由于三个投影S P、P J和J S根本不包括任何(非平
凡的)连接依赖,因此它们都是5 N F。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)