データベーススペシャリスト令和4年秋期 午前U 問4

午前U 問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}

分類

テクノロジ系 » データベース » データベース設計

正解

解説

関係モデルではA、B、Cを属性の集合とすると、関係従属性について次の推論則が成り立ちます。
反射律
BがAの部分集合であれば、A→B が成立する
04_1.gif/image-size:267×60
増加律
A→B であれば、同じCを加えた{A,C}→{B,C} が成立する
04_2.gif/image-size:339×60
推移律
A→B かつ B→C であれば、A→C が成立する
04_3.gif/image-size:339×60
合併律
A→B かつ A→C であれば、A→{B,C} が成立する
04_4.gif/image-size:339×60
分解律
A→{B,C} であれば、A→B および A→C が成立する
04_5.gif/image-size:339×60
まず、以下の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 が含まれており、冗長性が残ったままになっているので誤りです。

したがって「イ」が正解です。
© 2016-2022 データベーススペシャリストドットコム All Rights Reserved.

Pagetop