穩定模型語義
編輯穩定模型的概念,或者說答案集,被用來定義以否定為失敗的邏輯程序的聲明性語義。這是邏輯編程中否定意義的幾種標準方法之一,另外還有程序完成和有根基的語義。穩定模型語義是答案集編程的基礎。對邏輯編程中否定的聲明性語義的研究,是由于SLDNF解析的行為--Prolog在規則體中存在否定時使用的SLD解析的泛化--與經典命題邏輯中熟悉的真值表并不完全匹配。比如說,考慮一下這個程序考慮到這個程序,查詢p會成功,因為這個程序把p作為一個事實;查詢q會失敗,因為它沒有出現在任何規則的頭部。查詢r也會失敗,因為xxx一條頭部有r的規則在其主體中包含了子目標q;正如我們所看到的,該子目標失敗了。總之,SLDNF對給定程序的解析行為可以用下面的真值分配來表示。另一方面,如果我們把逗號與連詞相聯系,那么給定程序的規則可以被看作是命題公式。反過來寫。例如,從這個角度看,給定程序的最后一條規則是命題公式的替代符號p∧?q→s。如果我們計算上圖所示的真值賦值的程序規則的真值,那么我們會看到每個規則得到的值是T。但是這個程序也有其他的模型,比如說因此,給定程序的一個模型是特殊的,因為它正確地代表了SLDNF解析的行為。該模型的數學屬性是什么,使得它很特別?這個問題的答案是由穩定模型的定義提供的。
與非單調邏輯的關系
編輯邏輯程序中的否定的含義與非單調推理的兩種理論--自體邏輯和缺省邏輯密切相關。發現這些關系是發明穩定模型語義學的關鍵一步。自相矛盾邏輯的語法使用了一個模態算子,使我們能夠區分什么是真的和什么是相信的。穩定模型語義的基本形式可以被看作是對這一思想的重新表述,它避免了對自體邏輯的明確引用。在缺省邏輯中,缺省與推理規則相似,只是它除了包括前提和結論之外,還包括一個叫做理由的公式列表。
在假設其理由與當前所相信的一致的情況下,一個缺省可以被用來推導其結論。穩定模型語義使用了同樣的想法,但它沒有明確地提到默認邏輯。
穩定模型
編輯首先,一個真值賦值與得到值T的原子集合相標識。例如,真值賦值.這種慣例使我們能夠使用集合包容關系來相互比較真值賦值。所有真值賦值中最小的是?中最小的真值賦值是使每個原子都是假的;xxx的真值分配使每個原子都是真的。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/171006/