1

私は、3NF を証明する方法について頭を悩ませようと懸命に努力しています。私は実際に答えを持っていますが、誰かが私にそれを理解させるのに十分なほど知っているなら、私は非常に感謝しています. わかりました、ここに行きます:

  1. R が定義 2 に従って 3NF にある場合、R は定義 1 に従って 3NF になければなりません。R が定義 1 に従って 3NF にある場合、次の 2 つの条件が満たされなければならないことを思い出してください。

i) R の場合、非キー属性と他の非キー属性を介したキーとの間に推移的な関数依存関係はありません。

ii) R の場合、非キー属性とキーの間に部分的な関数依存関係はありません。

R が (i) を満たさないとします。次に、推移的な FD: X → A、A → B が必要です。ここで、X はキー、A と B は非キー属性です。しかし、定義 2 によれば、R にはそのような種類の FD はありません。(つまり、A は基本属性またはスーパー キーでなければなりません。) 矛盾。したがって、R は (i) を満たす必要があります。

R が (ii) を満たさないとします。次に、キー X (S ⊂ X) のサブセット S が必要であり、S → A の非キー属性 A が存在する必要があります。ただし、定義 2 によると、S はスーパーキーでなければなりません。矛盾。したがって、R は (ii) を満たす必要があります。したがって、定義 1 によると、R は 3NF にあります。

  1. R が定義 1 に従って 3NF にある場合、R は定義 2 に従って 3NF にある必要があります。

 定義 2 により、R が 3NF にないと仮定します。次に、X がスーパー キーではなく、A が素属性でないような FD: X → A を持たなければなりません。R のキー X' を考えます。X' →X→A でなければなりません。これは、非キー属性 A と X を介したキー X' の間の推移的な FD です。X が非キー属性である場合、R は定義 1 に従って 3NF に含まれません。矛盾。X' に X が表示される場合、部分 FD があります。したがって、R は 2NF ではなく、定義 1 に矛盾します。

4

0 に答える 0