A. 1个非主属性和2个主属性

B. 2个非主属性和1个主属性

C. O个非主属性和3个主属性

D. 3个非主属性和0个主属性

自己参考一下解法吧,太麻烦了:

举例:已知关系模式R,U={A,B,C,D,E,G},F={AB→C,D→EG,C→A,BE→C,BC→D,CG→BD,ACD→B,CE→AG},求F的最小函数依赖集。

解1:利用算法求解,使得其满足三个条件

① 利用分解规则,将所有的函数依赖变成右边都是单个属性的函数依赖,得F为:F={AB→C,D→E,D→G,C→A,BE→C,BC→D,CG→B,CG→D,ACD→B,CE→A,CE→G}

② 去掉F中多余的函数依赖

A.设AB→C为冗余的函数依赖,则去掉AB→C,得:F1={D→E,D→G,C→A,BE→C,BC→D,CG→B,CG→D,ACD→B,CE→A,CE→G}

计算(AB)F1+:设X(0)=AB

计算X(1):扫描F1中各个函数依赖,找到左部为AB或AB子集的函数依赖,因为找不到这样的函数依赖。故有X(1)=X(0)=AB,算法终止。

(AB)F1+= AB不包含C,故AB→C不是冗余的函数依赖,不能从F1中去掉。

B.设CG→B为冗余的函数依赖,则去掉CG→B,得:F2={AB→C,D→E,D→G,C→A,BE→C,BC→D,CG→D,ACD→B,CE→A,CE→G}

计算(CG)F2+:设X(0)=CG

计算X(1):扫描F2中的各个函数依赖,找到左部为CG或CG子集的函数依赖,得到一个C→A函数依赖。故有X(1)=X(0)∪A=CGA=ACG。

计算X(2):扫描F2中的各个函数依赖,找到左部为ACG或ACG子集的函数依赖,得到一个CG→D函数依赖。故有X(2)=X(1)∪D=ACDG。

计算X(3):扫描F2中的各个函数依赖,找到左部为ACDG或ACDG子集的函数依赖,得到两个ACD→B和D→E函数依赖。故有X(3)=X(2)∪BE=ABCDEG,因为X(3)=U,算法终止。

(CG)F2+=ABCDEG包含B,故CG→B是冗余的函数依赖,从F2中去掉。

C.设CG→D为冗余的函数依赖,则去掉CG→D,得:F3={AB→C,D→E,D→G,C→A,BE→C,BC→D,ACD→B,CE→A,CE→G}

计算(CG)F3+:设X(0)=CG

计算X(1):扫描F3中的各个函数依赖,找到左部为CG或CG子集的函数依赖,得到一个C→A函数依赖。故有X(1)=X(0)∪A=CGA=ACG。

计算X(2):扫描F3中的各个函数依赖,找到左部为ACG或ACG子集的函数依赖,因为找不到这样的函数依赖。故有X(2)=X(1),算法终止。(CG)F3+=ACG。

(CG)F3+=ACG不包含D,故CG→D不是冗余的函数依赖,不能从F3中去掉。

D.设CE→A为冗余的函数依赖,则去掉CE→A,得:F4={AB→C,D→E,D→G,C→A,BE→C,BC→D,CG→D,ACD→B,CE→G}

计算(CG)F4+:设X(0)=CE

计算X(1):扫描F4中的各个函数依赖,找到左部为CE或CE子集的函数依赖,得到一个C→A函数依赖。故有X(1)=X(0)∪A=CEA=ACE。

计算X(2):扫描F4中的各个函数依赖,找到左部为ACE或ACE子集的函数依赖,得到一个CE→G函数依赖。故有X(2)=X(1)∪G=ACEG。

计算X(3):扫描F4中的各个函数依赖,找到左部为ACEG或ACEG子集的函数依赖,得到一个CG→D函数依赖。故有X(3)=X(2)∪D=ACDEG。

计算X(4):扫描F4中的各个函数依赖,找到左部为ACDEG或ACDEG子集的函数依赖,得到一个ACD→B函数依赖。故有X(4)=X(3)∪B=ABCDEG。因为X(4)=U,算法终止。

(CE)F4+=ABCDEG包含A,故CE→A是冗余的函数依赖,从F4中去掉。

③ 去掉F4中各函数依赖左边多余的属性(只检查左部不是单个属性的函数依赖)由于C→A,函数依赖ACD→B中的属性A是多余的,去掉A得CD→B。

故最小函数依赖集为:F={AB→C,D→E,D→G,C→A,BE→C,BC→D,CG→D,CD→B,CE→G}

解析看不懂?求助智能家教解答查看解答

在C语言aceg什么意思,#8203;给定关系模式R,U={A,B,C},F={AB-C,C-B}.关系R(1) ,且分别有(2)给定关系模式R,U={A,B,C},F={AB-C,C-B}...相关推荐

  1. R语言ggridges包可视化山脊图(Ridgeline Plots)并且在山脊图中添加均值竖线(Add Mean Line to RIdgeline Plot with ggridges in R)

    R语言ggridges包可视化山脊图(Ridgeline Plots)并且在山脊图中添加均值竖线(Add Mean Line to RIdgeline Plot with ggridges in R) ...

  2. R语言sys方法:sys.timezone函数返回当前系统时区的名称、system.File函数查找系统文件或者安装包的文件路径(例如查看R Base可安装路径、dplyr包的安装路径)

    R语言sys方法:sys.timezone函数返回当前系统时区的名称.system.File函数查找系统文件或者安装包的文件路径(例如查看R Base可安装路径.dplyr包的安装路径) 目录

  3. R语言mgcv包中的gam函数拟合广义加性模型(Generalized Additive Model)GAM(对非线性变量进行样条处理、计算RMSE、R方、调整R方、可视化模型预测值与真实值的曲线)

    R语言mgcv包中的gam函数拟合广义加性模型(Generalized Additive Model)GAM(对非线性变量进行样条处理.计算RMSE.R方.调整R方.可视化模型预测值与真实值的曲线) ...

  4. 在C语言aceg什么意思,C语言第五六次作业

    <C语言第五六次作业>由会员分享,可在线阅读,更多相关<C语言第五六次作业(40页珍藏版)>请在人人文库网上搜索. 1.C语言作业解析,第四弹,.原来真正变态的是这两作业哇 原 ...

  5. 用c语言画一个字母金字塔,(  ) 什么字母似“金字塔”?  A.D     B.A    C.E    D.F ——青夏教育精英家教网——...

    第十五届全国初中应用物理知识竞赛复赛试题 一.(14分)王伟同学研究了均匀拉紧的琴弦发音频率与弦长的关系,并记录了实测的数据(如下表所示).请你根据记录表格中的有关数据,分析并估算出他有意留出的空格中 ...

  6. R语言中使用pkgbuild::find_rtools查看是否有Rtools、使用Sys.which函数查看make是否存在、如果没有则安装、使用writeLines函数绑定R和Rtools

    R语言中使用pkgbuild::find_rtools(debug = TRUE)查看是否有Rtools.使用Sys.which函数查看make是否存在.如果没有则安装Rtools.使用writeLi ...

  7. R语言,向量x=c(“我“,“你“,“我“,“我“,“你“,“他“,“们“,“他“,“人“)中,统计向量x中的字出现的次数。 写出R代码。

    文章目录 前言 一.创建向量x 二.统计词频 方法1 方法2 前言 这篇文章主要讲述R语言的运用,统计向量中各个字出现的次数,下面有一个例子,用两种方法解决. 提示:以下是本篇文章正文内容,下面案例可 ...

  8. R(A+B)<=R(A)+R(B): R(AB)<=min(R(A)+R(B)): A为m×n矩阵,r(A)=n,则AX=0只有零解。设矩阵A为m×n的秩R(A)=m;Ax=b 有解;

    目录 R(A+B)<=R(A)+R(B): R(AB)<=min(R(A)+R(B)): A为m×n矩阵,r(A)=n

  9. C语言学习之假如我国国民生产总值的年增长率为7%,计算10年后我国国民生产总值与现在相比增长多少百分比。计算公式为p=(1+r)ⁿ r为年增长率,n为年数,p为与现在相比的倍数。

    假如我国国民生产总值的年增长率为7%,计算10年后我国国民生产总值与现在相比增长多少百分比.计算公式为p=(1+r)ⁿ r为年增长率,n为年数,p为与现在相比的倍数. #include <std ...

最新文章

  1. 深入探讨PHP中的内存管理问题
  2. 解决无扬声器(无喇叭)的HDMI接口显示屏声音问题
  3. 汇编语言带C循环,如何将此C for循环转换为汇编语言?
  4. YTU 1495 蛇行矩阵 YTU 1607 字符棱形YTU 1959 图案打印YTU 2016 打印金字塔
  5. 赠李哲(帮别人名字作诗)
  6. JAVA UDP网络编程学习笔记
  7. C++学习笔记系列四
  8. 【全网最全的博客美化系列教程】08.自定义地址栏Logo
  9. Daily Scrum M2 11-19
  10. DSP芯片概述--7.24
  11. 机器学习-GBDT和XGboost
  12. 三维激光LiDAR点云数据处理,我帮您!
  13. cad残留卸载清理工具,强力清理CAD注册表残留
  14. 分享一个手游脚本源码
  15. 视频综合平台系统架构分析-1
  16. 程序员写博客如何赚钱「5大盈利方向」
  17. leadbbs 上ID为Robin·H的东西,有空瞧瞧....
  18. PDF编辑器哪个好,如何把PDF文件拆分成多个文件
  19. c#实现爬虫获取小说(.NET)
  20. SDM人脸对齐算法研究

热门文章

  1. PYNQ 采集计划(二)Socket服务端与客户端的搭建,pynq到pc的数据流传输
  2. 软件设计师-数据结构知识
  3. 双重检查锁为什么要使用volatile字段?
  4. 减肥瘦不下来的三个关键
  5. C#+Arduino使用红外遥控器
  6. NOIP2018差点退役+心态爆炸杂思
  7. ISP图像处理—紫边Purple Fringing
  8. 集成机器学习服务上架华为应用市场指南
  9. Hibernate简单配置
  10. linux 4.6发布时间,Linux Kernel 4.6的第4个维护版本发布