首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >函数依赖的自反性

函数依赖的自反性
EN

Stack Overflow用户
提问于 2018-03-11 01:57:11
回答 1查看 2.2K关注 0票数 1

我正在上一个数据库类,做一个函数依赖项的赋值。作为一个使用Armstrong公理来获取给定依赖关系和导出其他非平凡依赖关系的例子,TA编写了这篇文章,我无法用它来包装我的头脑。

考虑R(c,p,h,s,e,n)与F的函数依赖集{1. c->p, 2. hs->c, 3. hp->s, 4. ce->n, 5. he->s}

迭代1:

从F,我们可以构建F1

代码语言:javascript
复制
6. hs->p (transitivity: 1+2)
7. hc->s (pseudo-transitive. 1+3)
8. hp->c
  1. hp->hs (reflexivity 3)
  2. hp->c (transitivity: 8.1+2)
9. he->c
  1. he->hs (reflexivity: 4)
  2. he->c (transitivity: 9.1+2)

除了使用“自反性”(使用引号,因为这与我的教科书中反身性的定义相差甚远)之外,我理解了其中的大部分内容。有人能告诉我这是怎么回事吗?另外,我如何知道迭代何时结束?你不能找到无限多的重写函数依赖关系的方法吗?

EN

回答 1

Stack Overflow用户

发布于 2018-03-11 04:05:38

一个名字不会告诉你什么,除了某人决定叫的东西。

平凡的FD X -> X与X中的属性保持任何关系,即关系中的一组属性在功能上决定自己。这被合理地称为反射性。它在功能上决定了自己的每一个子集。这种情况下,“自反性”被选择为更一般规则的名称,更一般的规则被选择为一组充分但非冗余的规则之一。

阿姆斯特朗的公理被证明是正确和完整的。声音意味着它们只生成隐含的FDs。完成意味着,如果您一直应用一个公理,直到没有通过应用其中的任何一个得到任何新的FDs,那么您就可以得到从原始集合派生出来的所有FDs,即当原始集合保持不变时也必须保持该公理。任何教科书都告诉您,您可以通过这样做生成一组FDs的传递闭包。

对于FDs +MVD也有健全和完整的公理集。但没有FDs + JDs。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49215893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档