アームストロングの公理系(分解規則)

アームストロングの公理系(Armstrong's axioms)における分解規則(Decomposition rule)に関する問題です。関係データベースの関数従属性の健全かつ完全な推論規則に基づきます。 $A \rightarrow B \cup C$ が成立するとき、$B \subseteq (B \cup C)$ であるため反射律より $(B \cup C) \rightarrow B$ が成立し、推移律より $A \rightarrow B$ が導かれます。同様に $C \subseteq (B \cup C)$ より $A \rightarrow C$ も成立します(分解規則)。 $A \rightarrow B$ かつ $A \rightarrow C$ から $B \rightarrow C$ は一般に導けません(推移律が成立するのは $A \rightarrow B$ かつ $B \rightarrow C \implies A \rightarrow C$ です)。 $B \subseteq A$ より $A \rightarrow B$ が言えますが、$A \rightarrow B$ かつ $A \rightarrow C$ から $B \rightarrow C$ を導くことはできません(キーの一部から全体の従属項は決定できません)。 反射律(Reflexivity)によれば、$B$ が $A$ の部分集合($B \subseteq A$)であるときに成立するのは「$B$ が $A$ に関数従属する($A \rightarrow B$)」であり、「$A$ が $B$ に関数従属する($B \rightarrow A$)」ではありません。

関数従属に関する記述のうち,適切なものはどれか。ここで,AA,BB,CCはある関係の属性の集合とする。

出典令和7年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問5
ア
BBがAAに関数従属し,CCがAAに関数従属すれば,CCはBBに関数従属する。
イ
BBがAAの部分集合であり,CCがAAに関数従属すれば,CCはBBに関数従属する。
ウ
BBがAAの部分集合であれば,AAはBBに関数従属する。
エ
BBとCCの和集合がAAに関数従属すれば,BBとCCはそれぞれがAAに関数従属する。