函数依赖的公理系统
- 格式:ppt
- 大小:132.50 KB
- 文档页数:29
函数依赖公理系统
函数依赖公理系统是一种逻辑框架,用于描述数据库中各种数据之间的依赖关系。
这个系统包括多个公理和规则,它们定义了函数依赖的基本性质和相关的推理规则。
其中最基本的公理是函数依赖传递公理,它表明如果X → Y,且Y → Z,则X → Z。
这个公理说明了函数依赖的传递性质,也是其他推理规则的基础。
另外,函数依赖公理系统还包括了等式推理规则、合并规则、拆分规则等等,这些规则可以用来简化和优化函数依赖的描述。
通过这些公理和规则,我们可以更加精确地描述数据库中不同数据之间的依赖关系,并推导出一些重要的结论和性质,比如关系模式的最小化、函数依赖的规范化等等。
总之,函数依赖公理系统是数据库理论中的一个基础概念,它不仅对于理论研究有重要的意义,也为实际的数据库设计和优化提供了一定的指导和支持。
- 1 -。
函数依赖闭包函数依赖闭包⼀、函数依赖的逻辑蕴涵定义:设有关系模式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+。
数据库学习摘记——关系模式的函数依赖关系与关系模式的联系:关系模式是相对稳定的,静态的,是把所有元组删去后的⼀张空表格,是对元组数据组织⽅式的结构描述,⽽关系却是动态变化的,不稳定的,是将若⼲元组填⼊关系模式后得到的⼀个取值实例。
每⼀个关系对应⼀个关系模式,每⼀个关系模式可以定义多个关系。
关系模式R(U)对应的具体关系通常⽤⼩写字母r来表⽰。
函数依赖:设R(U)是属性集U={A1, A2, …, An}上的关系模式,X和Y是U的⼦集。
若对R(U)的任⼀具体关系r中的任意两个元组t1和t2,只要t1[X]=t2[X] 就有t1[Y]=t2[Y]。
则称"X函数确定Y" 或"Y函数依赖于X",记作X→Y,X为这个函数依赖的决定因素。
函数依赖要求R(U)的⼀切具体关系r都要满⾜的约束条件。
若X→Y且Y→X,则记作X⇿Y平凡函数依赖:X→Y,Y⊆X // 对于任⼀关系模式,平凡函数依赖必然是成⽴的⾮平凡函数依赖:X→Y,Y⊄X完全函数依赖:如果X→Y,且对于X的任何⼀个真⼦集X',都有X不函数确定Y ,则称Y对X完全函数依赖或者X完全决定Y,记作:部分函数依赖:如果X→Y,但Y不是完全函数依赖于X,则称Y 对X部分函数依赖,记作:传递函数依赖:如果X→Y,Y→Z,且 Y→X,Y⊄X,Z⊄Y,则称Z对X传递函数依赖,记作:候选键:对关系模式R(U),设K⊆U,且K完全函数确定U,则K为能够唯⼀确定关系中任何⼀个元组(实体)的最少属性集合,称K为R(U)的候选键或候选关键字。
【R(U,F),U={ A,B,C,D,E,G },F={AB→C,CD→E,E→A,A→G},求候选键】因G只在右边出现,所以G⼀定不属于候选码⽽B,D只在左边出现,所以B,D⼀定属于候选码BD的闭包还是BD,则对BD进⾏组合,除了G以外,BD可以跟A,C,E进⾏组合先看ABDABD本⾝⾃包ABD,⽽AB→C,CD→E,A→G,所以ABD的闭包为ABDCEG=U再看BDCCD→E,E→A,A→G,BDC本⾝⾃包,所以BDC的闭包为BDCEAG=U最后看BDEE→A,A→G,AB→C,BDE本⾝⾃包,所以BDE的闭包为BDEAGC=U因为(ABD)、(BCD)、(BDE)的闭包都是ABCDEG所以本问题的候选码有3个分别是ABC、BCD和BDE主键:通常在R(U)的多个候选键中任意选定⼀个候选键作为主键,也称为主码或主关键字。
数据库函数依赖和范式总结1 函数依赖1.1 定义:一个集合R(U,F),U为属性全集,F为函数依赖集合。
F中存在着{Xi->Yi...};对于每个X都存在着一个Y与之唯一对应。
意思就是相当于X为主键,Y由主键决定。
比如一个学生他的学号相当于X,而他的姓名与年龄这些其他信息相当于Y。
但是X有时候并不是一个值,比如一个学生他的成绩需要有两个属性才能知道他的成绩,学号+课程号->成绩1.2 平凡函数依赖与非平凡函数依赖平时我们主要讨论的是非平凡函数依赖。
平凡函数依赖概念:Y集合属性属于X集合属性的子集非平凡函数则相反1.3 逻辑蕴涵(为后面求闭包做好基础)X,Y为属性集合U的子集,且X->Y不存在于F中。
即我们需要通过F中的函数依赖推出X->Y称为函数依赖。
而所有函数依赖的集合则称为闭包1.4 函数依赖的推理规则(就是求函数依赖的逻辑蕴涵)1.4.1 几个公理1.4.1.1 公理一(自反律):Y属于X的子集,则X->Y 数学公式描述 Y?X?U1.4.1.2 公理二(增广律):X->Y成立,Z?U也成立,则 XZ?YZ1.4.1.3 公理三(传递律):X->Y成立,Y->Z成立,则 X->Z1.4.2 公理的推广1.4.2.1 推广一(合并律):X->Y,X->Z,则X->YZ1.4.2.2 推广二(伪传递律):X->Y,YW->Z,则XW->Z(证明只需要在XY两边*W)1.4.2.3 推广三(分解律):X->Y成立,Z?Y,则 X->Z1.4.2.4 推广四(复合律):X->Y,W->Z,则XW->YZ1.5 完全函数依赖与部分函数依赖(范式中基础知识)X->Y的集合中,若X的任一真子集x都能 x->Y则为部分函数依赖,若不能则的完全函数依赖,如果X没有真子集则也称为完全函数依赖。