9.22.2007

模糊理髮師

林基興在今年三月的《科學發展》期刊上登了一篇文章,大談「模糊論(fuzzy theory)」。
模糊論是一種設計程式的格式,事實證明它,有別於傳統0/1的二進位計算法,可以幫助某些需要進行精確計算的機器運作得更有效率。

除了介紹模糊論在科技上的貢獻,林基興也說明了模糊論興起(二值論沒落)的過程︰

...在 2,500 年後,羅素以他的理髮師的話點出傳統二值論的困境。理髮師宣稱「我只為所有不自己刮臉的人刮臉」,那麼,誰刮他的臉?若是他自己,則與他的宣稱不符;若他不自己刮臉,則依其宣稱,他又需為自己刮臉。糟了,他自己刮臉同時又不自己刮臉。 ...

林基興說錯了。



理髮師悖論並不會對二值邏輯造成威脅,因為我們沒有必要假設理髮師說的話是真的。

如果我們假設理髮師說的話為真,的確可以經由古典邏輯導出理髮師自己刮臉同時又不自己刮臉這樣的結論︰
1. 理髮師只為所有不自己刮臉的人刮臉(前提)
2. 理髮師為自己刮臉(假設)
3. 理髮師不為自己刮臉(根據1和2)
4. 如果理髮師為自己刮臉,則理髮師不為自己刮臉(根據2和3)
5. 理髮師不為自己刮臉(假設)
6. 理髮師為自己刮臉(根據1和5)
7. 如果理髮師不為自己刮臉,則理髮師為自己刮臉(根據5和6)
8. 並不是理髮師不為自己刮臉而且理髮師不為自己刮臉(根據4)*1
9. 理髮師為自己刮臉或者理髮師為自己刮臉(根據8)
10. 理髮師為自己刮臉(根據9)
11. 理髮師不為自己刮臉(根據4和9)
12. 理髮師為自己刮臉而且理髮師不為自己刮臉(根據10和11)

而如果理髮師說的話為假,也就是說,理髮師並不是只為所有不自己刮臉的人刮臉,那麼我們並不會遇到麻煩。我們可以很簡單地舉例來證明這件事,這個例子必須滿足1.使得「理髮師並不是只為所有不自己刮臉的人刮臉」為真,以及2.不像「理髮師為自己刮臉而且理髮師不為自己刮臉」這樣地違背直覺,比方說這樣︰
在某個世界裡有一個理髮師,這個理髮師只為國王一個人刮臉。

毫無疑問,「理髮師只為國王刮臉」符合「理髮師並不是只為所有不自己刮臉的人刮臉」的描述。事實上,我們會發現不管我們假設什麼樣的世界,只要這個世界裡有理髮師,而且這個世界是合理的(即,關於這個世界的任何描述都無法導出矛盾),這個世界就會滿足「理髮師並不是只為所有不自己刮臉的人刮臉」的描述(不相信的人可以自己試試看,找到反例歡迎po在下面)。

這表示說,對於所有的理髮師來說,「這個理髮師並不是只為所有不自己刮臉的人刮臉」都是恆真句。相對地,對於所有理髮師來說,「這個理髮師只為所有不自己刮臉的人刮臉」都是恆假句。因為不管「這個理髮師只為所有不自己刮臉的人刮臉」談論的理髮師是誰,我們都可以從中導出矛盾。




所以,當一個理髮師宣稱「我只為所有不自己刮臉的人刮臉」,結果不會是「糟了,他自己刮臉同時又不自己刮臉」,而只是理髮師說了一句假話而已。

這件事羅素當然知道,所以羅素不會用理髮師悖論來「點出傳統二值論的困境」,而除了林基興,我也沒看其他人幹過這種事。











*1︰沒學過古典邏輯的朋友可能會覺得這一步有點奇怪。事實上這樣的推論是根據impl這個規則︰(P⊃Q)≡¬(¬P‧Q)

0 comments: