属性の閉包とは?ぞくせいのへいほう
属性の閉包とは、与えられた関数従属集合のもとで、属性集合Xから関数的に決定できる属性をすべて集めた集合。Xの閉包と呼びX+と書く。X+が全属性を覆えばXは超キーであり、Xからどの属性を取り除いても覆えなくなるとき候補キーになる。
最終更新:2026-10-06
エンベデッドSPを最短で暗記・合格する →背景
正規化の判定も候補キーの列挙も、突き詰めれば「この属性の組から表全体が決まるか」という一つの問いに帰着する。関数従属を目で追って推論すると、推移的にたどれる従属を見落として候補キーを取りこぼす。閉包はこの推論を、左辺が既に入っている従属の右辺を足していくだけの反復手続きへ落としたもので、機械的に答えが出る。設定値や測定履歴の表をどこまで分割するかという判断でも、同じ道具がそのまま使える。
具体例
属性が{A,B,C}でA→B、B→Cのとき、{A}+はまずAを置き、A→BでBを足し、B→CでCを足して{A,B,C}になる。全属性を覆うのでAは超キーで、真部分集合が空しかない以上、候補キーでもある。同じ手順で{B}+は{B,C}にとどまり、Bはキーになれないと分かる。
試験での引っ掛け
どの関数従属の右辺にも現れない属性は他から決定できないので、必ずすべての候補キーに含まれる。逆に左辺に一度も現れない属性は単独ではキーになれない。この二つを先に使うと探索範囲を大きく絞れる。なお超キーと候補キーは別物で、極小性を確かめずに「全属性を決定できたから候補キー」と答えると外す。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。