3-SATの準多項式サイズの回路は簡単ですか?


10

変数とc句を含む3-SATを検討するとします。この説明に適合するSATの問題を解決するために、O v 2 + log c)の時間/スペースを必要とする方法を調査しています。これは、任意の量に調整できるエラーの範囲内です。ただし、落とし穴があります。vcO(v2+logc)

この方法では、事前に計算された値のセットが必要です。その後、上記の説明に適合する任意の3-SAT問題を解決できます。事前計算された値は、サイズセットであり、各値はO 1 )のスペースを取ります。実際の問題は、これらの値のそれぞれが計算にO 2 v時間かかる可能性があることです。これらの計算を高速化する方法を見つけることができる可能性があります。O(v2+logc)O(1)O(2v)

私は境界自体がこの質問で提示された上限を下回っていると思います(小さな)。だから私は疑問に思っています、O v 2 + log c事前計算を許可する場合、私が説明する上限に到達する簡単な方法はありますか?cO(v2+logc)

私はこの研究を続け、うまくいけば私の結果を公開したいと思いますが、最初に、それと同じかそれ以上の簡単な方法があるかどうかを知りたいです。


更新

このアルゴリズムの研究に加えて、関連する問題を研究しています。私は尋ねたStackExchangeのITセキュリティサイトでこの質問を、あなたが興味を持っている場合は、パスワードクラッキングおよびSATに関連します。少なくとも1つの回答がこれを反映しています。


O(N ^ 2 + logc)の時間/スペースが必要だと言います...それで、PSPACEにはありませんか?しかし、QSPACE(準空間)では?
Tayfun Pay 2012

@Tayfun Pay:ます。これは、素数pを法とする結果を与える決定論的アルゴリズムです (この結果は、残りのアルゴリズムが満足のいく割り当てを決定するのに十分であることに注意してください)。どんなプライムでも実行できます。複数の素数を実行すると、満足のいく割り当てを見つける可能性が高くなります。p 1 / pの満足できる割り当てが存在する場合、それを見つける可能性があります。O(v(2+logc))p(p1)/p
Matt Groff

O(N ^(2 + log(c)))スペースが必要ですか?
Tayfun Pay 2012

@Tayfun Pay:はい。スペースに関する考慮事項を減らす方法はまだ見つけていません。
Matt Groff

1
タイトルをより適切なものに変更することを提案します。現在のタイトルは魅力的に見えませんが、質問自体は魅力的に見えます。
岡本芳雄2012年

回答:


16

あなたが勉強していることがうまくいったなら、それは間違いなく簡単ではないでしょう。

それは、3SATがサイズ(不均一な)回路を持っていることを意味します。次に、N P(および多項式時間階層)のすべての言語は、準多項式(つまり、n O log c n )サイズの回路になります。nO(logn)NPnO(logcn)

それがかかった場合でも、サイズのデータ構造を生成するための時間を前処理のみ2 O ログ2 nで、その後正しく任意3SATのサイズの照会に答えることができ、N2 Oはログ2 n個の高い確率、3SATとの時間を無作為回路へのランダム化アルゴリズムの既知の変換を使用して、準多項式サイズの回路を持ちます。これは、前処理のために既知のアルゴリズムの時間制限を改善しませんが、不均一な結果として非常に興味深いでしょう。22n2O(log2n)n2O(log2n)

「任意の量に調整できるエラー内」とはどういう意味ですか?アルゴリズムはランダム化されていますか?


:ご回答有難うございます。アルゴリズムはランダム化されていません。アルゴリズム自体の実際の実行時間は、私が説明したほど単純ではありません。ただし、基本的には、繰り返し実行してエラーを排除することができます。したがって、回実行すると、エラーの確率は1 /2 x未満に減少します。アルゴリズムについてあまり明らかにしないのではないかと心配しているので、詳細を明かすのをためらいます。x1/(2x)
Matt Groff

3
アルゴリズムをランダム化しないで、繰り返し実行してエラーを減らすにはどうすればよいですか?質問を理解するためには、少なくとももう少し詳細を説明する必要があると思います。
Ryan Williams

2
彼のアルゴリズムは(もし機能するなら)素数ごとに、満足する割り当ての数がpの倍数でない場合pp場合、アルゴリズムは満足する割り当てを見つけるようなものです。彼は(間違って)それを「p 1 / pの満足のいく割り当てが存在する場合、それを見つけることの変更」と呼んでいます。(p1)/pます。ランタイムのへの依存度が大きくない場合、これによりSATの(決定論的)準多項式サイズの回路が生成されます。p

前処理ステップにはが必要です。「ランダム化アルゴリズムから回路への既知の変換」への参照はありますか?したがって、エラーを減らしたい場合は、前処理をn回実行する必要があります。これは準回路に変換できるとは思えません。これは簡単なアルゴリズムよりもどのような利点がありますか?pn
Zirui Wang 2012

@ZiruiWang:ルックアップ。データ構造が正しく確率でクエリーに応答したと3 / 4。サイズ2 O log 2 n のデータ構造の100 n個のコピーを取り、それぞれにランダムビットの異なる文字列をシードします。すべてのコピーの大多数の答えを取ってください。これは、より少ないエラーでアルゴリズムをランダム化準多項式時間であり、1 / 2 N。これは、適切なシードをハードコーディングすることにより、準多項式サイズの回路に変換できます。BPPP/poly3/4100n2O(log2n)1/2n
ライアンウィリアムズ

3

あなたの結果-有効な場合-が重要な進歩になるかどうかはわかりませんが、これはテストできる問題の1つです。

問題。関数の修正。所与のy { 0 1 } nは、見つけるのx { 0 1 } Nように、F X = Yf:{0,1}n{0,1}ny{0,1}nx{0,1}nf(x)=y

を効率的に(たとえば、小さな回路で)計算できる場合、結果はこの問題に対する何らかの解決策を意味します。f

暗号の世界では、この問題の最もよく知られているアルゴリズムは、2 n時間と2 2 n / 3のスペースを必要とする事前計算(のみに依存)を行い、サイズ2 2 n / 3のアドバイスを出力します。次に、xを指定すると、事前計算のサイズ2 2 n / 3のアドバイス文字列を使用して、2 2 n / 3時間でyを見つけることができます。スペースと時間のトレードオフを調整して、サイズSのアドバイス文字列を使用できます。f2n22n/322n/3xy22n/322n/3Sそして時間かかり限り、S T。私の知る限り、この複雑さは、fの内部構造を考慮しないアルゴリズムの場合、可能な限り最高であると考えられています。特に、fが暗号的に安全なハッシュ関数である場合に最適です。(この手法は、ヘルマン時空間トレードオフとして知られています。)ST=2nff

したがって、暗号化された安全なについて、ヘルマンの時間と空間のトレードオフよりも手法が優れている場合、それは確かにニュースになります。f

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