SATオラクルは多項式時間アルゴリズムの高速化にどの程度役立ちますか?


23

オラクルへのアクセスは、N P - Pのすべてに対して大幅な超多項式高速化を提供します(セットが空でないと仮定)。しかし、Pがこのoracleアクセスからどれだけの利益を得るかは、あまり明確ではありません。もちろん、Pの高速化は超多項式にすることはできませんが、それでも多項式にすることができます。たとえば、S A Tオラクルを使用すると、それを使用しない場合よりも最短で最短経路を見つけることができますか?劣モジュラ関数の最小化や線形計画法など、より洗練されたタスクはどうですか?彼ら(またはPの他の自然な問題)はS A TSATNPPPPSATPSAT オラクル?

より一般的には、場合我々は、任意の問題を選ぶことができる、およびそれのためのOracleを使用し、その後に問題のどのPは、スピードアップを見ることができますか?NPPP


2
オラクルの速さは?それがかかる場合時間を、より多くの問題は、それが取る場合よりも高速化することができるO S 5ここで、時間Sは SATの式のサイズです。O(s)O(s5)s
ピーターショー

2
@PeterShorオラクルは、SATフォーミュラをクエリとして受け取ると、YESまたはNOの答えを返し、フォーミュラが満足できるかどうかを単一のステップ(一定時間)で返します。これは、式のサイズとは無関係です。もちろん、クエリを実行するには、式を作成する必要があります。この構築時間はフォーミュラのサイズに依存しません。また、どのフォーミュラを照会する必要があるかによっても問題が異なります。ただし、式が作成されると、どの式でも、回答を受信することは単一ステップとしてカウントされます。
アンドラスファラゴ

3
代わりに、あなたが許可されSATオラクルの場合は神託を、何の問題のための最小限の回路を見つけるために使用することができます。これは、すべての問題にほぼ最適な償却原価を与えるだろう(それが唯一の償却だ理由は、あなたが一度だけこれを使用した場合、その後の大きさということであるΣ 2 S A Tのあなたが書き留め式は、本質的に、あなたのオリジナルのポリ時間のランタイムですアルゴリズム-しかし、そのステップの後に、あなたは、サイズのすべてのインスタンスに最適な回路持っnで)。Σ2SATΣ2SATn
ジョシュアグロチョウ

@JoshuaGrochowあなたのコメントはとても興味深いです!それをより詳細に答えとして見るのは素晴らしいことです。
アンドラスファラゴ

回答:


15

実際、時間での非決定性チューリングマシンの受け入れはO t log t -SAT に短縮可能な時間(構築は忘却型シミュレーションを介して、Arora-Barakを参照)であるため、通常、非決定性マシンは決定論的、SATオラクルで少なくともある程度の高速化が見られます。tO(tlogt)

より具体的には、AKSアルゴリズムの最適なバリアントが時間O n 6のビット数の素数性をテストするように見えるため、素数性テストが思い浮かびます。n。しかし、私たちが「古い学校」に行くと、プラットは時間 O n 3O(n6polylogn)。このマシンの受け入れは、 O n 3O(n3polylogn) SATインスタンスまでの時間。O(n3polylogn)

3SUM問題は別の例かもしれません。解を推測して準2次時間でチェックでき、そのようなマシンの受け入れを準2次時間でSATに減らすことができるからです。


7

より一般的には、NP-Pの問題を選択し、そのためにOracleを使用できる場合、Pのどの問題が高速化を実現できますか?

この質問は、ある問題を別の問題に還元するのに必要な表現と時間でより直接的に得られます。

私が念頭に置いている主な答えは、整数/線形プログラミングのオラクルです。その問題の決定版はNP完全です。線形計画法は特別なケースであるため、些細な「削減」があります。しかし、線形プログラミングだけのオラクル(ILPは言うまでもありません)は、線形プログラミングですぐに解決できる多くの問題を高速化します。問題をLPとして書き直すことにより、線形時間でそれを減らすことができます。たとえば、最短パスとその他のフローの問題、マッチング。

しかし、私は、ILPは、任意の手段によって唯一のものであるとは思わない、それは人々がについてあまり考えていないことをおそらくよります例えばまたはようにTSPへの最短パスを削減します。


3

代わりの場合は、関連するノート(コメントのより、リクエストによって答えとして掲載)で、神託の1が可能にΣ 2 S A Tの神託を、のいずれかの問題のため、最小限の回路を見つけるために使用することができSATΣ2SAT(これはKarp-Liptonの証明と同じ考えに従っています)。これにより、あらゆる問題にほぼ最適な償却コストが与えられます。それだけで償却しています理由は、あなたが一度だけこれを使用した場合、その後の大きさということである Σ 2 S A Tは、あなたが書き留め式は、本質的に、あなたのオリジナルのポリ時間アルゴリズムの実行時間であるが、その工程の後にあなたがして、最適な回路を持っていますサイズのすべてのインスタンスのn個PΣ2SATn


NPNPNPPNPNPNPPHPPNPオラクル...)NPNP
アンドラスファラゴ

1
@AndrasFarago:興味深い点です!P Hで神託を高くするという「実際的な問題」に興味深く自然な結果があるのだろうか。私の最初の推測は、私たちが本当に知らないということです。いくつかの量指定子の代替を非常にうまく使用する方法を本当に知らないという事実に関連して:cstheory.stackexchange.com/a/11403/129PPH
Joshua Grochow

@ JoshuaGrochow PHからのより高いレベルの神託を使用する問題はこのように見えるかもしれません。元の問題を正しく解決する最小サイズの回路を見つけます。最小サイズの回路(指数関数的に多くなる可能性があります)の中から、最大のエネルギー効率(エネルギー効率の定義を含む)を持つ回路を見つけます。結果として得られる回路(おそらくまだ指数関数的に多数)の中から、深さが最小の回路を見つけます。等々、さまざまな目的関数、おそらくそれらの多くを交互に最小化/最大化します。ネストされた最小/最大最適化には、PHからレベルk + 2オラクルが必要だと思います。kk+2
アンドラスファラゴ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.