計算複雑性理論において、クック・レビンの定理(クックの定理とも呼ばれる)は、ブール充足可能性問題はNP 完全であると述べている。つまり、この問題はNPに属し、 NP に属するあらゆる問題は、決定論的チューリングマシンによって多項式時間でブール充足可能性問題に 簡約できる。
この定理はスティーブン・クックとレオニード・レビンにちなんで名付けられました。証明はリチャード・カープによるもので、クックによる以前の証明(異なる還元可能性の概念を使用)に基づいています。[1]
この定理の重要な帰結は、ブール充足可能性を解決するための決定論的多項式時間アルゴリズムが存在する場合、すべてのNP問題は決定論的多項式時間アルゴリズムによって解決できるということです。したがって、ブール充足可能性のためのそのようなアルゴリズムが存在するかどうかという問題は、 P 対 NP 問題と同等であり、これは理論計算機科学において依然として最も重要な未解決問題であると広く考えられています。
貢献
NP完全性の概念は、1960年代後半から1970年代前半にかけて、北米とソ連の研究者によって並行して発展した。1971年、スティーブン・クックは、新設されたACM計算理論シンポジウムの会議論文集に「定理証明手順の複雑さ」[2]を発表した。リチャード・カープのその後の論文「組合せ問題間の縮約可能性」[1]は、 21のNP完全問題のリストを示し、クックの論文への関心を新たにした。カープはまた、NP完全性の現在の定義(すなわち、多項式時間の多対一縮約による)で使用される完全性の概念を導入した。クックとカープは、この研究により それぞれチューリング賞を受賞した。
NP完全性への理論的関心は、 1975年に特定のオラクルマシンモデルでNP問題を解くには指数時間が必要であることを示したセオドア・P・ベイカー、ジョン・ギル、ロバート・ソロベイの研究によっても高まりました。つまり、すべての指数以下の決定論的時間複雑性クラスTに対して、相対化複雑性クラスNP AがT AのサブセットではないようなオラクルAが存在するということです。特に、このオラクルでは、P A ≠ NP Aです。[3]
ソ連では、ベイカー、ギル、ソロベイの結果と同等の結果が1969年にM.デクティアルによって発表されました。[4]その後、レオニード・レビンの論文「普遍的探索問題」[5]は1973年に発表されましたが、講演では数年前から言及され、出版のために提出されていました。
レビンのアプローチは、単に存在を決定するのではなく、解決策を見つけることを必要とする探索問題を考慮した点で、クックやカープのアプローチとは少し異なっていました。彼は、そのような NP 完全な探索問題、または普遍的な問題を 6 つ示しました。さらに、彼はこれらの問題のそれぞれについて、最適な時間で問題を解決するアルゴリズムを発見しました (特に、これらのアルゴリズムは、 P = NPの場合にのみ多項式時間で実行されます)。
定義
決定問題がNPに属するのは、非決定性チューリングマシンによって多項式時間で決定できる場合です。
ブール充足可能性問題の例としては、ブール演算子を使用してブール変数を組み合わせたブール式が挙げられます。このような式は、式全体が真となるような真理値の変数への割り当てがある場合に充足可能です。
アイデア
NP の任意の決定問題が与えられた場合、多項式時間でその問題を解決する非決定性マシンを構築します。次に、そのマシンへの各入力に対して、その特定の入力がマシンに渡されたときにマシンが正しく実行されるか、マシンが停止して「はい」と答えるかを計算するブール式を構築します。すると、マシンが正しく実行して「はい」と答える方法がある場合にのみ、式を満たすことができるため、構築された式の充足可能性は、マシンが「はい」と答えるかどうかを尋ねることと同等になります。
証拠
この証明は、Garey & Johnson 1979、38~44 ページ、セクション 2.6 で示された証明に基づいています。
ブール充足可能性問題 (SAT) が NP 完全であることを証明するには、2 つの部分があります。1 つは、SAT が NP 問題であることを示すことです。もう 1 つは、すべての NP 問題が多項式時間の多対一縮約によって SAT 問題のインスタンスに縮約できることを示すことです。
SAT は NP に属します。なぜなら、与えられた式を満たすと主張されるブール値のブール変数への割り当ては、決定性チューリングマシンによって多項式時間で検証できるからです。(決定性チューリングマシンによって多項式時間で検証可能なステートメントと、非決定性チューリングマシンによって多項式時間で解決可能なステートメントは同等であり、その証明は、Sipser の『Introduction to the Theory of Computation』のセクション 7.3 や、NP に関する Wikipedia の記事など、多くの教科書に記載されています。)


ここで、NP の特定の問題が非決定性チューリング マシン によって解決できると仮定します。ここで、は状態の集合、はテープ記号のアルファベット、は初期状態、は受け入れ状態の集合、は遷移関係です。さらに、最大 の計算ステップ後に問題のインスタンスを受け入れるか拒否すると仮定します。ここで、はインスタンスのサイズ、は多項式関数です。
各入力 に対して、マシンがを受け入れる場合にのみ満たされるブール式を指定します。
ブール式では、次の表に示す変数を使用します。ここで、はマシンの状態、はテープ位置、はテープ シンボル、は計算ステップの番号です。
すべてのおよび について、ブール式を次の表の部分式の論理積として定義します。
入力に対して を受け入れる計算がある場合、およびそれらの意図された解釈を割り当てることによって を満たすことができます。一方、 を満たすことができる場合、変数への割り当てによって示される手順に従う、入力 に対してを受け入れる計算があります。
ブール変数があり、それぞれは空間 にエンコード可能です。節の数は[7]なので、 のサイズはです。したがって、この変換は、要求どおり、多項式時間の多項式削減になります。
実際に入力文字列 に依存するのは、表の最初の行 ( ) のみです。残りの行は、入力の長さとマシン のみに依存し、 ステップまでの の一般的な計算を形式化します。
変換では、多項式 が多用されます。その結果、上記の証明は構成的ではありません。 が既知であっても、与えられた問題が NP に属することを証明して、 の時間計算量の上限も既知でなければ、変換を効果的に計算することはできません。
複雑
上記の方法は、複雑性において非決定性チューリングマシンをエンコードしますが、文献では複雑性におけるより洗練されたアプローチについて説明しています。[8] [9] [10] [11] [12]準線型の結果は、クックの最初の発表から7年後に初めて登場しました。
SAT を用いた NP 完全問題の存在証明は、論理学における他の計算問題や、他の計算量クラスの完全性にも拡張できる。量化ブール式問題 (QBF) は、変数にネストされた全称量指定子と存在量指定子を含むように拡張されたブール式である。QBF 問題は、多項式空間複雑度に制限されたチューリングマシンによる計算をエンコードするために使用でき、 PSPACE 完全である問題 (真の量化ブール式の認識) が存在することを証明する。同様に、依存性量化ブール式は、対数空間複雑度に制限されたチューリングマシンによる計算をエンコードし、 NL 完全である問題が存在することを証明する。[13] [14]
結果
証明は、NP のすべての問題が多項式時間 (実際、対数空間で十分) でブール充足可能性問題のインスタンスに簡約できることを示しています。つまり、ブール充足可能性問題が決定論的チューリング マシンによって多項式時間で解決できる場合、NP のすべての問題が多項式時間で解決でき、したがって複雑性クラスNP は複雑性クラス P と等しくなります。
NP完全性の重要性は、1972年にリチャード・カープが発表した画期的な論文「組合せ問題における還元可能性」によって明らかになりました。この論文でカープは、それぞれが扱いにくいことで悪名高い21の多様な組合せ問題とグラフ理論問題がNP完全であることを示しました。[1]
カープは、すでにNP完全であることが証明されている別の問題をその問題に還元することで、それぞれの問題がNP完全であることを示した。例えば、彼は3SAT問題(節ごとにちょうど3つの変数または変数の否定を持つ連言標準形(CNF)の式のブール充足可能性問題)がNP完全であることを、SATの任意のインスタンスを3SATの同等のインスタンスに(多項式時間で)還元する方法を示すことで示した。[15]
ゲーリーとジョンソンは、著書「コンピュータと扱いにくさ:NP完全性理論へのガイド」[16]で300以上のNP完全問題を提示しており、その複雑性クラスに属する新しい問題が今も発見され続けています。
SAT の多くの実際的な例はヒューリスティックな方法で解決できますが、SAT (および他のすべての NP 完全問題) に対する決定論的な多項式時間アルゴリズムが存在するかどうかという問題は、複雑性理論家、数理論理学者、およびその他の専門家による数十年にわたる熱心な努力にもかかわらず、依然として未解決の問題として有名です。詳細については、記事「P 対 NP 問題」を参照してください。
参考文献
- ^ abc Karp, Richard M. (1972)。「組み合わせ問題における縮約可能性」。Raymond E. Miller、James W. Thatcher (編)。『コンピュータ計算の複雑性』。ニューヨーク: Plenum。pp. 85–103。ISBN 0-306-30707-3。
- ^ クック、スティーブン(1971)。「定理証明手順の複雑さ」。第 3 回 ACM コンピューティング理論シンポジウムの議事録。pp. 151–158。doi : 10.1145 /800157.805047。ISBN 9781450374644. S2CID 7573663。
- ^ TP Baker; J. Gill; R. Solovay (1975). 「P = NP問題の相対化」SIAM Journal on Computing . 4 (4): 431–442. doi :10.1137/0204037.
- ^ Dekhtiar, M. (1969). 「グラフに関連する関数を計算する際に網羅的な検索を排除することが不可能であることについて」。ソ連科学アカデミー紀要(ロシア語)。14 : 1146–1148。
- ^ レビン、レオニード(1973)。 「Универсальные задачи перебора」[ユニバーサル検索問題]。情報伝達の問題(ロシア語)。9 (3): 115–116。英語に翻訳:トラクテンブロート、BA (1984年)。「ロシアのペレボル(総当たり検索)アルゴリズムへのアプローチの調査」。Annals of the History of Computing。6(4):384–400。doi : 10.1109 /MAHC.1984.10036。S2CID 950581。翻訳については付録399-400ページを参照。
- ^ このコラムではビッグオー表記法を使用しています。
- ^ 各節のリテラルの数は に依存しません。ただし、最後の表行はリテラルを含む節になります。
- ^ Claus-Peter Schnorr (1978 年 1 月). 「NQL では満足可能性は準線型完全である」(PDF) . Journal of the ACM . 25 (1): 136–145. doi :10.1145/322047.322060. S2CID 1929802.
- ^ Nicholas Pippenger およびMichael J. Fischer ( 1979 年 4 月)。「複雑性尺度間の関係」(PDF)。Journal of the ACM。26 ( 2): 361–381。doi :10.1145/322123.322138。S2CID 2432526。
- ^ John Michael Robson (1979年2月)。NP完全性の充足可能性の新しい証明。第2回オーストラリアコンピュータサイエンス会議の議事録。pp.62-70。
- ^ John Michael Robson (1991年5月). 「RAM計算から充足可能性へのO ( T log T ) {\displaystyle O(T\log T)}削減」.理論計算機科学. 82 (1): 141–149. doi : 10.1016/0304-3975(91)90177-4 .
- ^ Stephen A. Cook (1988年1月). 「短い命題式は非決定論的計算を表す」(PDF) . Information Processing Letters . 26 (5): 269–270. doi :10.1016/0020-0190(88)90152-4.
- ^ Gary L. Peterson、John H. Reif (1979)。「複数人交代」。Ronald V. Book、Paul Young (編)。Proc . 20th Annual Symposium on Foundations of Computer Science (SFCS)。IEEE。pp. 348–363。
- ^ Gary Peterson、John Reif、Salman Azhar (2001年4月)。「不完全情報によるマルチプレイヤー非協力ゲームの下限値」。Computers & Mathematics with Applications。41 (7–8): 957–992。doi : 10.1016/S0898-1221(00)00333-3。
- ^ まず、クック・レビンの定理の証明を修正して、結果として得られる式が連言標準形になるようにし、次に新しい変数を導入して 3 つ以上のアトムを持つ節を分割します。たとえば、節 は、節 の連言に置き換えることができます。ここで、 は、式の他の場所では使用されない新しい変数です。3 つ未満のアトムを持つ節はパディングできます。たとえば、は に置き換えることができます。
- ^ ガリー、マイケル・R. ;ジョンソン、デビッド・S. (1979)。コンピュータとイントラクタビリティ:NP完全性理論ガイド。数学科学シリーズ(第1版)。ニューヨーク:WHフリーマンアンドカンパニー。ISBN 9780716710455. MR 0519066. OCLC 247570676.
