Armstrong公理系統
通俗的講:
- 自反律:Y是X的子集,則X->Y
- 增廣律:X->Y,則XZ->YZ
- 傳遞律:X->Y,Y->Z,則X->Z
直接看這幾個公理挺讓人一頭霧水的,和之前一樣,假設一個情景能更容易的理解這三條定律到底是在干嘛。
下面是一張完整的學生信息表
院系 | 專業 | 班級 | 姓名 | 性別 |
---|---|---|---|---|
軟件學院 | 軟件工程 | 軟工1901 | 張三 | 男 |
軟件學院 | 信息安全 | 軟信1902 | 趙四 | 女 |
軟件學院 | 數字媒體技術 | 樹莓1903 | 李六 | 男 |
以下為班級對應專業的表
專業 | 班級 |
---|---|
軟件工程 | 軟工1901 |
信息安全 | 軟信1902 |
數字媒體技術 | 樹莓1903 |
還有一張表,他的存在似乎用處不大,不過還是列一下
院系 | 專業 |
---|---|
軟件學院 | 軟件工程 |
軟件學院 | 信息安全 |
軟件學院 | 數字媒體技術 |
1.自反律
最簡單的例子,(軟件學院,軟件工程)這個屬性組可以推出 軟件工程 這個屬性,這個性質完全就是廢話,本身可以推出子集是一定滿足的。
2.增廣律
由專業和班級的對應表,軟工1901 -> 軟件工程
再加上張三這個名字,(軟工1901,張三) -> (軟件工程,張三),這個關系也是成立的
通過這種方式將函數依賴“增廣”了,所以叫做增廣律
3.傳遞律
傳遞律看上去更容易理解,比如:在確定這個學院里沒有重名的人的情況下
有:軟工1901->軟件工程, 軟件工程->軟件學院
所以:軟工1901->軟件學院
以下給出正式證明:
1.自反律:
2.增廣律
3.傳遞律
Armstrong公理的正確性和完備性:
- 正確性是指從F中推導出的函數依賴必為F所蘊含
- 完備性是指F所蘊含的所有函數依賴都可以從Armstrong公理中推導出
由以上三個公理可以推導出以下三條推理規則:
總結:
1.自反律(廢話)
2.增廣律
3.傳遞律
4.合並律 = 增廣 + 傳遞
5.偽傳遞律 = 增廣 + 傳遞(另一種用法)
6.分解律 = 自反 + 傳遞(也約等於廢話)
參考文章1
參考文章2