證明精確4SAT問題是NPC問題

2021-08-03 01:44:06 字數 658 閱讀 3813

在精確的4sat(eaact 4sat)問題中,輸入為一組子句,每個子句都是4個文字的析取,且每個變數最多在每個子句中出現一次。目標是求它的滿足賦值—-如果該賦值存在。證明精確的4sat是np-完全問題。

證明某個問題是npc問題,一般思路是找乙個已知的npc問題來歸約帶該問題。其中3sat問題是已知的npc問題,所以接下來只要證明3sat問題可以歸約到精確的4sat問題即可。

3sat問題:a = (a1 ∨ a2 ∨ a3) ∧ (a4 ∨ a5 ∨ a6) ∧ ….∧(a ∨ a ∨ a)

精確4sat問題: a = (a1 ∨ a2 ∨ a3 ∨ a4) ∧ (a5 ∨ a6 ∨ a7 ∨ a8) ∧…. ∧(a ∨ a ∨ a ∨ a)

容易證明(a1 ∨ a2 ∨ a3) 等價於 (a1 ∨ a2 ∨ a3 ∨ y) ∧ (a1 ∨ a2 ∨ a3 ∨ !y)

這樣可以通過如下形式把3sat問題形式變成精確4sat問題形式

即a = (a1 ∨ a2 ∨ a3 ∨ y1) ∧ (a1 ∨ a2 ∨ a3 ∨ !y1) ∧(a4 ∨ a5 ∨ a6 ∨ y2) ∧ (a4 ∨ a5 ∨ a6 ∨ !y2) ∧ ….∧(a ∨ a ∨ a ∨ y)∧(a ∨ a ∨ a ∨ !y)

由此證明3sat問題可以歸約到精確的4sat問題,從而證明精確4sat問題是npc問題

證明精確的4SAT是NP 完全問題

題目描述 在精確的4sat exact 4sat 問題中,輸入為一組子句,每個子句都是恰好 4個文字的析取,且每個變數最多在每個子句中出現一次。目標是求它的滿足賦值 如果該賦值存在。證明精確的 4sat 是np 完全問題。顯然,4sat問題是 np問題,所有可能的賦值總數的指數級的。現從 3sat ...

精確4SAT問題np完全性證明

1.題目描述 在精確的4sat問題中,輸入為一組子句,每個子句都是恰好4個文字的析取,且每個變數最多在每個子句中出現一次.目標是求它的滿足賦值 如果該賦值存在.證明精確的4sat問題是no 完全問題.2證明過程 通過將 3sat 歸約到 exact 4sat 來證 明後者的 np 完全性。對於任意乙...

證精確的4SAT是NP 完全問題

此題源於 演算法概論 清華大學出版社 課後習題8.8 精確4sat exact 4sat 問題是這樣的 輸入為一組字句,每個字句都是恰好4個文字的析取,且每個變數最多在每個字句出現一次。目標是求它的滿足賦值 如果該賦值存在。總結下來,exact 4sat問題是sat的乙個變種,即有約束條件的sat。...