要證明關係 ?(?,?,?,?)R(A,B,C,D) 是否滿足 Boyce-Codd 正規化形式(BCNF),我們需要首先了解什麼是 BCNF:
一個關係 ?R 若要滿足 BCNF,需要滿足以下條件:
我們已知:
在這裡,我們需要檢查這些功能相依是否符合 BCNF 的條件。
我們需要檢查每個功能相依,確定它們是否滿足 BCNF 的條件:
檢查 {?,?,?}→?{A,B,D}→C
檢查 {?,?}→?{C,D}→B
由於功能相依 {?,?}→?{C,D}→B 不滿足 BCNF 的條件(即 {?,?}{C,D} 不是超鍵),關係 ?R 不滿足 Boyce-Codd 正規化形式(BCNF)。
為了使關係 ?R 滿足 BCNF,我們需要將其分解,使每個功能相依都滿足 BCNF 的條件。通常,我們可以將其分解成如下形式:
?1(?,?,?,?)R1(A,B,D,C)
?2(?,?,?)R2(C,D,B)
分解後的每個新關係都滿足 BCNF 的條件。
因此,根據上述分析,原始關係 ?R 不滿足 Boyce-Codd 正規化形式(BCNF)。