主題
Search

歸結原理


歸結原理是由 Robinson (1965) 提出的,是一種定理證明方法,它透過構造反駁證明,即反證法來進行證明。這種方法已在許多自動定理證明器中得到應用。歸結原理適用於 一階邏輯Skolem 正規化 的公式。這些公式基本上是 子句 的集合,其中每個子句是 文字析取合一 是歸結證明中的一項關鍵技術。

如果子句 S 中兩個或多個正文字(或兩個或多個負文字)是可合一的,且 eta 是它們的最一般合一子,那麼 Seta 被稱為 S 的因子。例如,P(x) v ¬Q(f(x),b) v P(g(y)) 被分解為 P(g(y)) v ¬Q(f(g(y)),b)。在這種因子分解中,重複項被移除。

S_1S_2 是兩個沒有公共變數的子句,設 S_1 包含一個正文字 L_1S_2 包含一個負文字 L_2,且設 etaL_1L_2 的最一般合一子。那麼

 (S_1eta-L_1eta) union (S_2eta-L_2eta)

被稱為 S_1S_2 的二元歸結式。例如,如果 S_1=P(x) v Q(x)S_2=¬P(a) v R(y),那麼 Q(a) v R(y) 是它們的二元歸結式。

兩個子句 S_1S_2 的歸結式是以下四種二元歸結式之一。

1. S_1S_2 的二元歸結式。

2. S_1S_2 的因子的二元歸結式。

3. S_1 的因子和 S_2 的二元歸結式。

4. S_1 的因子和 S_2 的因子的二元歸結式。

從兩個子句生成歸結式,稱為歸結,是歸結原理的唯一推理規則。歸結原理是完備的,因此,一個子句集合(合取)是 不可滿足的 當且僅當 可以透過歸結從它推匯出 空子句

歸結原理完備性的證明基於 Herbrand 定理。由於不可滿足性與有效性是對偶的,因此歸結原理應用於定理的否定。

已經開發出多種策略來提高歸結原理的效率。這些策略有助於選擇子句對以應用歸結規則。例如,線性歸結是以下演繹策略。設 S 為子句的初始集合。如果 C_0 in S,則從 S 線性演繹出 C_n,其中 頂子句C_0,是指一種演繹,其中每個 C_(i+1)C_iB_i (0<=i<=n-1) 的歸結式,並且每個 B_i 要麼在 S 中,要麼是一個歸結式 C_j(其中 j<i)。

線性歸結是完備的,因此,如果 C 是不可滿足的子句集 S 中的一個子句,並且 S-C 是可滿足的,那麼可以透過以 C 作為 頂子句 的線性歸結獲得 空子句

如果附加限制 B_i 必須在 S 中,那麼這種受限策略是不完備的。但是,對於包含 恰好一個 目標的 Horn 子句 集合,並且目標被選為 頂子句,它是完備的。此類集合中的所有其他子句都是確定的 Horn 子句。程式語言 Prolog 的實現就是在這種策略的框架內進行搜尋。


另請參閱

霍恩子句, 歸結

此條目由 Alex Sakharov 貢獻 (作者連結)

使用 探索

參考文獻

Chang, C.-L. 和 Lee, R. C.-T. 符號邏輯與機械定理證明。 New York: Academic Press, 1997.Clocksin W. F. 和 Mellish, C. S. Prolog 程式設計。 New York: Springer-Verlag, 1984.Robinson J. A. "基於歸結原理的面向機器的邏輯。" J. Assoc. Comput. Mach. 12, 23-41, 1965.

在 中被引用

歸結原理

請這樣引用

Sakharov, Alex. "歸結原理。" 來自 —— 資源,由 Eric W. Weisstein 建立。 https://mathworld.tw/ResolutionPrinciple.html

學科分類