令和4年秋期試験問題 午前Ⅱ 問4

関係R(A,B,C,D,E)に対し,関数従属の集合 W={A→{B,C},{A,D}→E,{A,C,D}→E,B→C,C→B}がある。関数従属の集合X,Y,Zのうち,Wから冗長な関数従属をなくしたものはどれか。

X={A→B,B→C,C→B,{A,D}→E}
Y={A→C,B→C,C→B,{A,D}→E}
Z={A→B,C→B,{A,C,D}→E}

  • Xだけ
  • XとY
  • YとZ
  • Zだけ
正解 問題へ
分野 :テクノロジ系
中分類:データベース
小分類:データベース設計
解説
関係モデルではA、B、Cを属性の集合とすると、関係従属性について次の推論則が成り立ちます。
反射律
BがAの部分集合であれば、A→B が成立する
04_1.png
増加律
A→B であれば、同じCを加えた{A,C}→{B,C} が成立する
04_2.png
推移律
A→B かつ B→C であれば、A→C が成立する
04_3.png
合併律
A→B かつ A→C であれば、A→{B,C} が成立する
04_4.png
分解律
A→{B,C} であれば、A→B および A→C が成立する
04_5.png
まず、以下の2つの関数従属に注目します。
  • {A,D}→E
  • {A,C,D}→E
AとDの組さえわかれば一意をEに決定できるので、これにCを加えた {A,C,D}→E は明らかに余分だとわかります(増加律)。したがって、{A,D}→E を残して {A,C,D}→E を削除することができます。

また分解律により、A→{B,C} が成立するならば、A→B および A→C が成立するので、「A→{B,C}、B→C、C→B」は「A→B、A→C、B→C、C→B」に分解することが可能です。この関数従属の集合では、Bを決定する方法が A→B、A→C→B および C→B の3通りありますが、Cを経由するときには、CのみでBを決定可能なので A→C 部分の関数従属は余分であると言えます。この場合、A→C を削除すると「A→B,B→C,C→B」が残ります。同様に、Cを決定する方法には A→C、A→B→C および B→C の3通りがありますが、Bを経由するときには、BのみでCを決定可能なので A→B 部分の関数従属は余分であると言えます。この場合、A→B を削除すると集合Yの「A→C,B→C,C→B」が残ります。

この2つの集合に {A,D}→E を加えた集合Xと集合Yが、冗長な関数従属をなくしたものとなります。集合Zは {A,C,D}→E が含まれており、冗長性が残ったままになっているので誤りです。

したがって「イ」が正解です。

Pagetop