Max-3SATに関する情報の計算


26

3CNF式ためせどんな割り当て満足句の最大数である。最大3SATは(P≠NPの対象)、すなわち入力3CNF式でないpolytimeアルゴリズムが存在しない近似することは困難であることが知られている、およびその出力であるの数ように、A内にあります乗法因子から、絶対正の定数です。M C C C M M C 1 + c M c > 0CM(C)CCMM(C)1+cMc>0

一定のモジュラスpに対してを計算することもNP困難だと思います。これら二つの事実の次のような共通の一般化がtrueの場合、私は疑問に思う:その入力3CNF式で何polytimeアルゴリズムはありませんCNの条項、および文字列\ log_2 NB、その出力であるアドバイスビット、およびM(C)が。ここで、Bは絶対定数です。簡単に言えば、M(C)のBビットの情報を計算するアルゴリズムはありません。M(C)modppCNlog2NBM(C)BBM(C)

質問によく知られている答えがある場合は謝罪します。なぜなら、私は背景としての複雑性理論家ではないからです。


1
通常、「アドバイス」は入力の長さにのみ依存します。あなたの意図は、ここでの「アドバイス」が入力そのものに依存することだと思います。この概念の標準的な用語は知りません。
伊藤剛

9
とても興味深い質問です。M(C)modpが実際に計算するのが難しいことを確認するために、クックの定理の証明が充足可能またはM(F)= m-1のようなm変数の式Fを生成することに注意できます。M(F)=m1
ルカトレビザン

16
質問は次のように言い換えることができます:m個の変数を持つ3CNF式Fが与えられ、それらの数の1つがM(F)であるようなm / 2 ^ B数のリストを出力する多項式時間アルゴリズムはありますか?mm/2BM(F)
ルカ・トレビーザン

2
はい、mは上記のコメントの節の数である必要があります。
ルカトレビザン

9
投稿で説明されているアルゴリズムがある場合は、2log2mB=m/2B可能なアドバイス文字列のそれぞれでアルゴリズムを実行でき、同じ数(または衝突)回答があり、そのうちの1つが正しい。上記の私のコメントのようにアルゴリズムがある場合、log2mBアドバイスビットで、一部のiについて、正しい答えがアルゴリズムの出力のi番目に大きいことを指定できます。i
ルカトレビザン

回答:


14

一定のビット数のアドバイスを与えられたm節のインスタンスでMax 3SATを解くことができれば、多項式階層が崩壊するという議論があります。

NP完全問題Lを修正します。クックの定理から、Lの入力xの3SAT式f(x)への変換f()がわかります。

1)場合、xLM(f(x))=m

2)場合、xLM(f(x))=m1

ここで、は節の数です。mf(x)

また、Kadinの定理があり、NP完全問題の入力が与えられた場合、NPオラクルへのクエリを作成し、決定する多項式時間アルゴリズムがあります。 NP問題正解 、次に多項式階層が崩壊します。kx1,,xkk1kxi?L

kビットのアドバイスが与えられた場合に、m節の入力でMax SATを解くアルゴリズムがあるとします。Hastadの結果を使用して、Kadinの定理の前提のようにアルゴリズムを構築します。

問題への入力からします。それらのそれぞれにクックの定理を適用します。いくつかの正規化の後(重みを句に割り当てるか、重みを使用しない場合は複製することで実行できます)、特定のに対して式ます。K=2k+1x1,,xKLKF1,,FKm

1)であればとさもなければM(F1)=m1x1LM(F1)=m2

2)であればとそうでなければM(F2)=m(m1)x2LM(F2)=m(m2)

...

k)はであれば及びそうでなければM(FK)=mK1(m1)xKLM(FK)=mK1(m2)

ここで、互いに素な変数セット上に構築された式の和集合を取り、それをと呼びます。我々は持っているので、、そして我々は答え、 "読み取る"ことができ問題は、 base-表現を見ます。ビットのアドバイスが与えられたときに計算できる場合、それは値が見つかり、そのうちの1つがになることを意味します。次に、NP oracle に、候補値それぞれについてかどうかを非適応的に尋ねることができますFM(F)=M(F1)++M(Fk)Kxi?LmM(F)M(F)k2kM(F)M(F)nin1,,n2k生成しました。したがって、NPオラクルに対しての非適応クエリを作成することにより、NP完全問題のインスタンスを解決できました。これは、多項式階層が崩壊することを意味します。2k+12k

クックの定理の代わりにハスタードの定理を使用すると、のサイズを代わりににプッシュできるため、をにプッシュでき、アドバイスビット数を。アドバイスビットが与えられたときに何が起こるかを理解することは 本当に難しいようです。FO(1)kmmkklogmloglogmlogmO(1)


追加して編集:Krentel(The Complexity of Optimization Problems。J . Comput。Syst。Sci。36(3):490-509(1988))は、最大クリーク問題の最適値の計算が完了したことを証明しました。、NPオラクルへのクエリで多項式時間で計算可能な関数のクラス。完全性は「one query reductions」の下にあり、多項式時間で計算可能なおよびを記述できる場合、関数fは関数gに還元できます。おそらく同じことが当てはまります。 Max Cliqueの場合、Max Cliqueにリストを生成する多項式時間アルゴリズムがある場合FPNP[O(logn)]O(logn)f(x)=r1(g(r2(x))r1r2mo(1)可能な値は、にあります。これは、バイナリ検索を使用して、リストサイズのログである多数のクエリで最適を見つけることができるためです。FPNP[o(logn)]

今、我々が持っている場合我々は間違いだろうは、決定問題の特殊なケースであり、Wagnerの結果(一定数のクエリに適用されるKadinの結果の改善)により既知であり、多項式階層を崩壊させます。しかし、 は実際にはP = NPを意味することがわかっていると思います。しかし、いずれにしても、KrentelとKadin-Wagnerの結果は、Andy Druckerの結果の別の証拠を提供するのに十分なはずです。今、私はそれが実際に同じ証明であるかどうか、つまり、Fortnow-Van Melkebeekの結果が「NPクエリをより少ないNPクエリでシミュレートする」引数を介して明示的または暗黙的に機能するかどうか疑問に思います。FPNP[O(logn)]=FPNP[o(logn)]PNP[O(logn)]=PNP[o(logn)]FPNP[O(logn)]=FPNP[o(logn)]

最適化の問題と制限されたクエリクラスで何が起こっているかを説明する優れた調査論文:

http://www.csee.umbc.edu/~chang/papers/bqabh/npfsat.pdf


8

この問題のNP困難性を証明することが難しい理由の1つを述べたいと思います。

この質問に対するコメントで、ルカトレビザンは問題を再表現する良い方法を与えました。次の問題はすべての定数kについて多項式時間で解けるのでしょうか?m節のあるCNF式Cが与えられた場合、最大でm / k個の整数を出力して、そのうちの1つがMC)と等しくなるようにします。ここで、kk = 2 BによってBに関連しています。

しかし、もっと要求しましょう。つまり、次の問題を考えます。CNF式Cが与えられた場合、2つの整数を出力して、そのうちの1つがMC)と等しくなるようにします。この問題をΠで表します。問題originalは少なくとも元の問題と同じくらい難しいため、元の問題がNP困難である場合、ΠもNP困難でなければなりません。

Πは関係の問題であることに注意してください。いくつかの問題Lを関係問題reduceに還元するために使用できる最も単純な種類の還元の1つは、多項式時間チューリング還元の特殊なケースである多項式時間レビン還元です。一度。

PΠ[1] = P と主張します。これは明らかに、P = NPでない限りNP⊈PΠ [1]、つまりP = NPでない限り多項式時間レビン還元性の下でunderはNP困難ではないことを意味します。

証明。ましょL ∈P Π[1]は、換言すれば、からレビン減少が存在するL Πにします。これは、多項式時間の計算可能な関数fのペア(fg)が存在することを意味します。{0,1} * →{0,1} *は、問題Lの各インスタンスxをCNF式fx)および多項式時間の計算可能な述語g:{0,1} * ×ℕ×ℕ→{0,1} (gxij)= LxiまたはjMfx))に等しい場合。(ここで、LX)= 1の場合、xがはいインスタンスであるL及びLX場合)= 0 xはないインスタンスではありません。)

これからLの多項式時間アルゴリズムを次のように構築します。ましょう、xは入力します。

  1. ましょC = FX)、およびlet mは内節の数であるC
  2. 検索1 I ∈{0、...、M }、その結果値GXiはjが)によらず一定であり、J ∈{0、...、M }。
  3. この定数gxi、0)を出力します。

ステップ2では、i = Mfx))が条件を満たすため、そのようなiは常に存在します。さらに、gxiMfx)))が正しい答えでなければならないため、このアルゴリズムは間違った答えを出力できません。したがって、このアルゴリズムはLを正しく解決します。 QED

私は間違っていないです場合は、同じ考えを証明するために使用することができるP Π[ KN)] ⊆DTIME[ N O(KN)) ]。これは意味しているNP⊈P Π[ K ]任意定数のK NP⊈PP = NPでない限り、そのΠ[polylog] NP⊆DTIME[2ない限りpolylog ]。しかし、この考えだけでは、polynomialが多項式時間チューリング還元可能性の下でNP困難である可能性を排除していないようです。


1
ダナの答えへのリンクを提供できますか?
モハマッドアルトルコ

@turkistany:この回答の最初の改訂版を投稿した後、彼女は回答を削除していました。この回答から参照を削除しました。
伊藤剛

8

私たちが示すことができると信じています:

請求。値があるため、次のことが当てはまります。節の3 SATインスタンス与えられると、ような最大値のリストを出力する決定論的なポリタイムアルゴリズムがあるとします。その後、多項式階層が崩壊します。0<c<1mϕSmcM(ϕ)S

この証明は、FortnowとSanthanamの論文からのインスタンス圧縮の実行不可能性に関する結果を使用してい ますhttp://www.cs.uchicago.edu/~fortnow/papers/compress.pdf

具体的には、Thm 3.1の証拠を見ると、次のものを抽出できると思います(すぐに再確認します)。

「定理」[FS]。 整数があり、次のことが当てはまります。決定論的なポリタイムで、ブール式(それぞれ長さ、および互いに素な変数セット)のORを式のOR (再び変数と素長さ)、ORの充足可能性/不充足可能性を保持します。それからと多項式階層が崩壊します。0<d<dndnndnNPcoNP/poly

私たちの主張の証拠は、上記の定理[FS]で言及されたOR圧縮タスクから、リスト計算の問題への減少です。仮定 OR、我々は圧縮する式のリストです。M(ϕ)ψ1,,ψnd

最初のステップ:入力文字列多項式サイズの回路を定義します。ここで文字列に割り当てコード、及びの間の数をコードと。Γ(v,y1,,ynd)yiψiv{0,1}dlogn+10nd

我々は持っているいずれかの場合に限っ受け入れる、または。Γv=0ψv(yv)=1

ここで、制限回路が満たされるように、が最大値示すようにします。(この数量は常に少なくとも0です)。M(Γ)vΓ(v,,,)

の可能な値のリストを効率的に生成できるとします。その主張は、リスト、すべてのを捨てることができるということです。結果のリストには、元の式が満たされた場合に充足可能な式が含まれます。これが検査によって明らかになることを願っています。SM(Γ)ψ1,,ψndψiiS

結論:の可能な値のリストを、poly階層が崩壊しない限り、確実に生成することはできません。SndM(Γ)

2番目のステップ: 3-SATインスタンスのリスト計算の問題からリスト計算の問題に減らします。M(Γ)M(ϕ)ϕ

これを行うには、最初に Cookの縮、サイズ 3-SATインスタンスを取得します。 は、いくつかの補助変数とともにと同じ変数セットがあります。私たちの目的にとって最も重要なのは、が満足できる場合に、が満足できることです。Γϕ1m=poly(nd)ϕ1Γϕ1(v,)Γ(v,)

「強い制約」と呼びます。これらの各制約に重みを付けます(重複する制約を追加することにより)。ϕ12m

次に、「弱い制約」のセットを追加します。これにより、インデックス(ステップ1で定義)の設定が可能な限り高くなります。各ビットに1つの制約、つまります。の番目の最上位ビットに重み制約を設定します。以来、長さであり、これらの重みは、(我々がちょうどせるパッドに必要一体に形成することができ 2の累乗です)。ϕ2vvtv[vt=1]tvm/2t1vdlogn+1m

最後に、削減の出力とします。ϕ=ϕ1ϕ2

を分析するには、を変数セットとし、を以前と同様にします。まず、への割り当てが与えられると、量(満たす -constraintsの合計重量から の値を推測できることに注意してください。 これは、制約の重みの階層設計に基づいています(Lucaの答えの手法と同様)。同様に、達成可能な最大値の設定によって達成されるを満たす全ての強い制約、および(この対象)ϕ(v,z)ϕv(v,z)vN(v,z)=ϕv,z
M(ϕ)(v,z)v可能な限り大きい。このは、が満たされる最大のインデックス、つまりです。( all-0を設定することにより、すべての強い制約を満たすことが常に可能です。その場合、が満たされるためです。)vΓ(v,)M(Γ)v=Γ(v,)

したがって、の可能な値のリストが与えられた場合、リストを導出できます可能な値。したがって、持つことはできませんポリゴン階層が崩壊しない限り、。であるため、これによりClaimが得られます。SM(ϕ)|S|M(Γ)|S|ndnd=mΩ(1)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.