You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求FD集{P→QR, Q→PR, R→PQ}的最小覆盖及选项解析

函数依赖最小覆盖判断

给定函数依赖(FD)集:{ P→QR, Q→PR, R→PQ },判断以下选项中哪些是该FD集的最小覆盖,推导如下:

最小覆盖核心判定标准

最小覆盖需同时满足三个条件:

  • 所有函数依赖的右部必须是单属性;
  • 集合中不存在冗余依赖(移除任意一个依赖后,剩余依赖集无法推导出该依赖);
  • 每个依赖的左部无冗余属性(移除左部某属性后,无法通过剩余依赖推导出原右部属性);
  • 最终依赖集需与原FD集等价(两者的闭包完全一致)。

选项分析

选项A:P→Q, Q→R, R→P

  1. 右部单属性:所有依赖右部均为单个属性,符合要求;
  2. 无冗余依赖:移除任意一个依赖后,剩余依赖无法推导出该依赖。例如移除P→Q,仅靠Q→R, R→P无法得到P→Q(函数依赖为单向推导,R→P是R决定P,而非P决定R),因此无冗余;
  3. 左部无冗余:所有依赖左部均为单属性,无多余属性;
  4. 等价性验证:
    • 原FD集的所有依赖均可由A推导:P→QR可由P→Q+Q→R得到,Q→PR可由Q→R+R→P得到,R→PQ可由R→P+P→Q得到;
    • A的所有依赖均可由原FD集推导:P→Q来自P→QR,Q→R来自Q→PR,R→P来自R→PQ。

因此A是原FD集的最小覆盖。

选项B:P→R, Q→R, R→PQ

R→PQ的右部为组合属性,不满足最小覆盖“右部单属性”的要求,直接排除。

选项C:Q→P, P→R, R→Q

与选项A逻辑完全一致,仅依赖顺序不同:

  1. 右部单属性:符合要求;
  2. 无冗余依赖:移除任意一个依赖后,剩余依赖无法推导出该依赖;
  3. 左部无冗余:符合要求;
  4. 等价性验证:原FD集与C的依赖可互相推导,闭包完全一致。

因此C是原FD集的最小覆盖。

选项D:P→QR, Q→P, R→P

P→QR的右部为组合属性,不满足最小覆盖“右部单属性”的要求,直接排除。


结论

选项A和C是给定FD集的最小覆盖。

内容的提问来源于stack exchange,提问作者NAFEES AMIN MONDAL AIT20BECS00

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.02 01:42:32