我們知道DPLL
算法是回溯+單位傳播+純文字規則。DPLL和可滿足性示例?
我舉個例子。用DPLL解決以下可滿足性問題有一個例子。如果將變量「0」賦值給變量之前,將Unit Clause (UC)
或Pure Literal (PL)
中的哪一個用於解決這個特定示例?
{~A \/ B \/ C}, {A \/ ~B \/ C}, {A \/ B \/ ~C}, {A \/ B \/ C}
在這個例子中使用其中兩個(PL and UC
)寫道。爲什麼選擇其中兩個?任何想法?
我們知道DPLL
算法是回溯+單位傳播+純文字規則。DPLL和可滿足性示例?
我舉個例子。用DPLL解決以下可滿足性問題有一個例子。如果將變量「0」賦值給變量之前,將Unit Clause (UC)
或Pure Literal (PL)
中的哪一個用於解決這個特定示例?
{~A \/ B \/ C}, {A \/ ~B \/ C}, {A \/ B \/ ~C}, {A \/ B \/ C}
在這個例子中使用其中兩個(PL and UC
)寫道。爲什麼選擇其中兩個?任何想法?
下面是如何DPLL可用於幫助解決例如式:
A
。
A=0
並傳播。這將導致{1 \/ B \/ C}, {0 \/ ~B \/ C}, {0 \/ B \/ ~C}, {0 \/ B \/ C}
{~B \/ C}, {B \/ ~C}, {B \/ C}
B
。
B=0
和傳播:{1 \/ C}, {0 \/ ~C}, {0 \/ C}
{~C}, {C}
{}
所以我們原路返回。B=1
並傳播。 {0 \/ C}, {1 \/ ~C}, {1 \/ C}
{C}
哪個單位條款(UC)或純文字(PL)被用來解決這個具體的例子?
單位子句傳播用於解決這個例子。由於公式的對稱性,選擇不同順序的分割文字將導致相同的結果。
我確定PL和UC可以解決這個例子:)但是你很專業 –
PL&UC是不夠的,因爲在事先不改變公式的情況下應用它們是不可能的。只有在存在某種特殊的子句/文字時,它們才起作用。 –
Okey,改變你說UC解決之後。這意味着PL不能適用? –
你知道涉及回溯。如果剩下的只是UP和PL,並且沒有什麼可以回溯,因爲它不會做出任何可能錯誤的選擇。 – harold
@harold您可以使用PL或UC。你可以使用其中之一。 – user4249446
@ user4249446當然你可以,但你不能*只能*使用它們,一般來說。 – harold