関数従属性の閉包計算

属性集合 $X = \{A, B\}$ に対する関数従属性の閉包 $X^+$ をアルゴリズムに従って順次計算します: 1. 初期状態:$X^{(0)} = \{A, B\}$ 2. 関数従属性の適用: - $A \to B$:すでに $B \in X^{(0)}$ です。 - $A \to C$:$A \in X^{(0)}$ より属性 $C$ が導出可能となり、属性集合に加えます → $X^{(1)} = \{A, B, C\}$ - $\{C, D\} \to E$:決定子 $\{C, D\}$ のうち $D \notin X^{(1)}$ であるため、この従属性を適用することはできず、$E$ は導出できません。 3. これ以上追加できる属性がないため操作は終了し、得られる属性集合の閉包は $\{A, B, C\}$ となります。 したがって、ア が正解です。 属性 $D$ はどの関数従属性の右辺にも存在せず、閉包に含まれることはありません。 属性 $D$ が得られないため、$\{C, D\} \to E$ により $E$ を導出することもできず、閉包に含まれることはありません。 $A \to C$ によって属性 $C$ が加わるため、$C$ が含まれていない $\{A, B, E\}$ は誤りです。

関係 R(A,B,C,D,E)R(A, B, C, D, E) において, 関数従属性 A→BA \to B, A→CA \to C, {C,D}→E\{C, D\} \to E が成立する。最初に属性集合 {A,B}\{A, B\} に対して, これらの関数従属性によって関数的に決定される属性をこの属性集合に加える。この操作を繰り返して得られる属性集合 (属性集合の閉包) はどれか。

出典2022r04a_db_am2_問3
ア
{A,B,C}\{A, B, C\}
イ
{A,B,C,D}\{A, B, C, D\}
ウ
{A,B,C,D,E}\{A, B, C, D, E\}
エ
{A,B,E}\{A, B, E\}