Remove ads
来自维基百科,自由的百科全书
缺省邏輯是邏輯學家Ray Reiter提出的用來形式化有缺省假定的推理的非單調邏輯。
標準邏輯只能表達某個事物為真或某個事物為假,但類似於「缺省的,某個事物是真的」的事實則可以使用缺省邏輯進行表達。推理經常會涉及到在多數時候是真但不總是真的事實,而缺省邏輯則可以解決這樣的推理問題。
經典的例子是:「鳥通常會飛」。這個規則可以在標準邏輯中表達為:要麼「所有鳥都會飛」——這與企鵝不會飛的事實相矛盾;要麼「除了企鵝、鴕鳥...的所有鳥都會飛」——這又要求規則逐一指定出所有的例外。缺省邏輯致力於將這樣的推理規則形式化,而不需要明確提及所有的例外。
缺省理論是對。是邏輯公式的集合,叫做背景理論,形式化的是確實已知的事實。是缺省規則的集合,每個都有形式:
依據這種缺省,如果我們相信(先決條件)是真的,並且每個(論據)都相容於我們當前的信仰,我們導出信仰(結論)是真的。
在中邏輯公式和在缺省中的所有公被初始的假定為一階邏輯公式,但是它們潛在的可以是任意形式邏輯的公式。公式都是命題邏輯的情況是研究最多的。
缺省規則「鳥通常會飛」被下列缺省所形式化:
這個規則意味着,如果是鳥,並且可以假定它會飛,則我們得出結論它會飛。包含某些關於鳥的事實的背景理論在下面列出:
依據這個缺省規則,禿鷲會飛,因為前件Bird(禿鷲)是真的,並且論據Flies(禿鷲)與當前已知不矛盾。相反的,Bird(企鵝)不允許得出結論Flies(企鵝):即使缺省的前件Bird(企鵝)是真的,論據Flies(企鵝)與已知相矛盾。從這個背景理論和這個缺省,不能得出結論Bird(鷹),因為缺省規則只允許從Bird(X)推出Flies (X),但不能反過來。從推論規則的結論推出前提是結論的一種解釋形式,這是溯因推理的目標。
常見的缺省假定是不知道為真的東西都被相信是假的。這叫做封閉世界假定,並在缺省邏輯中對每個事實使用像下列這樣的缺省來形式化。
例如,計算機語言Prolog在推導否定的時候,使用了某種程度的缺省假定:如果否定的原子不能被證明為真,則它被假定為假。但是要注意,Prolog使用了所謂的否定為失敗:當解釋器必須求值原子的時候,它嘗試證明是真,並如果這失敗了則結論為是真。轉而在缺省邏輯中,缺省有作為論據,它只能在與當前知識一致的時候應用。
缺省是無條件的或無先決條件的,如果它沒有先決條件(或者等價的說先決條件是重言式)。一個缺省是正規的,如果它有等價於它的結論的一個單一論據。一個缺省是超正規的,如果它是無條件的和正規的。一個缺省是半正規的,如果它的所有論據都蘊涵它的結論。一個缺省理論叫做無條件的、正規的、超正規的、或半正規的,如果它包含的所有缺省分別都是無條件的、正規的、超正規的或半正規的。
一個缺省規則可以應用於一個理論,如果它的前件被這個理論所蘊涵,並且它的論據都一致於這個理論。缺省規則的應用導致它的結論增加到這個理論。其他缺省規則接着可以應用於結果的理論。當沒有缺省規則可以應用於理論的時候,這個理論就叫做缺省理論的擴展。缺省規則可以按不同的次序應用,這可以導致不同的擴展。尼克遜菱形例子是有兩個擴展的缺省理論:
因為尼克遜既是共和黨的人又是貴格會的人,兩個缺省都可以應用。但是,應用第一個缺省導致尼克遜是不愛好和平的人的結論。以同樣的方式,應用第二個缺省我們得出尼克遜是愛好和平的人,因此使第一個缺省不可應用。這種特定的缺省理論因此有兩個擴展,其中一個是真,而另一個是假。
缺省邏輯的最初的語義基於的是函數的不動點。下面是一個等價的算法定義。如果缺省包含有自由變量的公式,它被認為表示通過向所有這些變量給出一個值而得到所有缺省的集合。缺省對命題理論是可應用的,如果並且所有理論是一致的。這個缺省對的應用得到理論。通過應用下列算法可以生成一個擴展:
T=W /* 当前理论*/ A=0 /* 迄今应用的缺省的集合*/ /* 应用一序列的缺省*/ while有个不在A中的缺省d对于T是可应用的 增加d的结论到T 增加d到A /* 最终的一致性检查*/ if for所有缺省d in A T一致于d的所有论据 then 输出T
這個算法是非確定性的,因為對於給定的理論有很多缺省可以應用。在尼克遜菱形的例子中,第一個缺省的應用導致第二個缺省不能應用的一個理論,反之亦然。作為結果,可以生成兩個擴展:在其中一個里尼克遜是愛好和平的人和另一個里尼克遜不愛好和平的人。
最終的所有已經應用的缺省的論據的一致性檢查使某些理論不能有任何擴展。特別是,這發生在對於可應用的缺省的所有序列這個檢查都失敗的時候。下列缺省理論就沒有擴展:
因為一致於缺省被應用到的背景理論,所以得出結論是假的。但是這個結果破壞了應用第一個缺省所有做的假定。因此,這個理論沒有擴展。
正規的缺省理論保證至少有一個擴展。進一步的,正規缺省理論的擴展是相互矛盾的。
缺省理論可以有零個、一個或更多的擴展。從一個缺省理論到一個公式的蘊涵可以用兩種方式定義:
例如,尼克遜菱形例子有兩個擴展,在其一中尼克遜是愛好和平的人在另一個中他不是愛好和平的人。因此,Pacifist(尼克遜)和 ¬ Pacifist(尼克遜)都不被懷疑的蘊涵,而二者都被輕信的蘊涵。如這個例子展示的,缺省理論的輕信結論可以相互矛盾。
缺省邏輯下列可供選擇的語義都是基於同最初一樣的語法。
正當的和約束的語義為所有的缺省理論指派至少一個擴展。
缺省邏輯的下列變體同最初的語法和語義二者有所區別。
缺省理論可以被轉換成其他邏輯的理論或反之。轉換要考慮下列條件:
轉換典型的要求忠實或至少是結論保持,而模塊化和同字母表的條件有時被忽略。
在命題缺省邏輯和下列邏輯之間的轉換已經研究過了:
轉換存在與否依賴於施加那種條件。從命題缺省邏輯到經典命題邏輯的轉換不能總是生成多項式大小的命題理論,除非多項式層次瓦解。到自動認識邏輯的轉換存在與否依賴於是否要求模塊性或使用相同的字母表。
關於缺省邏輯的下列問題的計算複雜性是已知的:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.