NP-Completeには有限の問題がありますか?


13

講師が発言した

有限問題はNP完全にはできません

彼は数独について、8x8の数独には有限の解決策があるという線に沿って何かを言っていましたが、彼が言ったことを正確に思い出すことはできません。私は引用したがまだ理解していないというメモを書き留めました。

私が間違っていなければ、数独はNP完全です。クリーク問題もNP完全であり、4クリーク問題があった場合、これはNP完全な有限問題ではありませんか?


「有限問題」とは何ですか?GoogleとWikipediaは役に立たない。
アントントルーノフ

3
@AntonTrunov入力の長さが制限されている問題。
ユヴァルフィルマス

@YuvalFilmus、これはすべての有効なチューリングマシン*入力ペアに当てはまりませんか?IIRCシンボルの1つは空白シンボルとして指定され、入力には最初に境界領域があり、その外側では空白シンボル以外のシンボルは表示されません。「NP完全」という用語は、通常、その仮定を緩和せずにモデル化できないストリームの操作のコンテキストでは使用されません。
マイクサミュエル

@MikeSamuel制限された長さを言うとき、最大で100のサイズの入力を意味します。(または100以外の任意の数。)
ユバルフィルム

@YuvalFilmus、わかりました。「NP完全」という用語は、入力に非空白記号がない場合、または左端の非空白記号と右端の非空白記号の間に記号の数である整数が存在する場合にのみ使用されます。100はそのような例です。
マイクサミュエル

回答:


15

有限問題がNP完全である場合、P = NPとなります。これは、すべての有限問題に多項式時間アルゴリズム(一定時間アルゴリズムでさえも)があるためです。

数独がNP完全であると言うとき、ボードでプレイされる数独の一般化バージョンはNP完全であることを意味します。n2×n2

最後に、4クリーク問題は有限問題ではありませんが(入力グラフのサイズに制限はありません)、多項式時間アルゴリズムを持つ簡単な問題です。


それは、多項式時間アルゴリズムを持っているので、4クリーク問題Pですか?
TheRapture87

1
P.の定義だAceboy1993右、@
のYuval Filmus

しかし、なぜKクリークはNP完全であると見なされますか?Kは4のような数値を表すだけではありませんか?
-TheRapture87

@ Aceboy1993いいえ、は入力の一部です。定数についてKの問題はP.であるkk
のYuval Filmus

また、CliqueがNP完全であることを証明できます。
ユヴァルフィルマス

5

あなたの先生の声明が間違っているか、おそらくあなたは彼を正しく聞いていません。正しい声明は

任意の有限言語| L | 1がない限り、NP完全であることはできないP = N PL|L|1P=NP

これは、かどうかが(2016年のように)まだわからないためです。また| L | > 1ために重要である(空の言語)はNP完全かどうかになることはありませんP = N PまたはP PNP|L|>1P=NPPNP

入力が有限サイズの9x9または8x8ボードであるため、数独またはチェスはNP完全ではありません(Yuvalが指摘しているように)チェスでは、ポジションを繰り返す場合、それは引き分けと見なされます。


0

リコール:問題Xは、次の2つの条件を満たす場合にNP完全です。

a)NPにあります。つまり、Xの推定解は多項式時間で検証できます。

b)それはNPについて完全です-すなわちNPのすべての問題Yは、YのインスタンスをXのインスタンスに変換する多項式時間削減を持っています(Xを解く多項式時間プログラムは、多項式時間でYも解くでしょう)。

9x9の数独が(a)を満たすことに同意できます。(b)物事が落ちる場所です。より一般的には-(NPまたはその他の)問題には、通常、N の任意の大きな値に対してサイズNのインスタンスがあります。確かにこれはNPの既知の問題に当てはまります。そのような問題から可能な限り最大の問題サイズを持つものへの削減は、前者が常に後者よりも(無限に)多くのインスタンスを持っているため、有効なインスタンス間削減ではない可能性があります。NP完全性を考慮する前に、数独をNxN行列に一般化する必要があるのはこのためです。


1
これは正しくありません。無限に多くのインスタンスを持つ問題から、有限に多くのインスタンスを持つ問題への有効な削減を完全に行うことができます。たとえば、SATから長さ1の文字列が「a」に等しいかどうかを判断する問題への縮約を次に示します。SATインスタンスが満たされる場合は、文字列「a」にマッピングします。それ以外の場合は、文字列「b」にマップします。現在、その削減は(おそらく)多項式時間で計算できませんが、完全に有効な削減です。
デビッドリチャービー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.