タグ付けされた質問 「polynomial-time」

アルゴリズム、アルゴリズム分析、および多項式実行時間を目的とした複雑さ理論の質問に使用します。時間の複雑さ。このような質問は、多くの場合、参照要求、またはランタイム分析や時間の複雑さに関するものです。

4
なぜ線形プログラミングはPであるのに整数プログラミングはNP困難なのですか?
線形計画法(LP)はPで、整数計画法(IP)はNP困難です。しかし、コンピューターは有限の精度でしか数値を操作できないため、実際にはコンピューターは線形計画法に整数を使用しています。このため、LPとIPは同じ複雑さのクラスにすべきではありませんか?

2
Cのvoid型がempty / bottom型と類似していないのはなぜですか?
ウィキペディアと私が見つけた他のソースはvoid、空のタイプではなくユニットタイプとしてリストCのタイプを見つけました。void空の/下の型の定義によりよく適合するように思えるので、この混乱を見つけます。 void私が知る限り、値は存在しません。 戻り値の型がvoidの関数は、関数が何も返さないため、何らかの副作用しか実行できないことを指定します。 タイプのポインターvoid*は、他のすべてのポインタータイプのサブタイプです。また、void*C との間の変換は暗黙的です。 最後の点voidに、空の型であることの引数としてのメリットがあるかどうかはわかりvoid*ませんvoid。 一方、voidそれ自体は他のすべてのタイプのサブタイプではありません。これは、タイプがボトムタイプであるための要件であると言えます。
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

3
数値アルゴリズムで数値の単項表現を使用しないのはなぜですか?
擬似多項式時間アルゴリズムは、入力値(大きさ)で多項式の実行時間を持ち、入力サイズ(ビット数)で指数関数の実行時間を持つアルゴリズムです。 たとえば、数値が素数であるかどうかをテストするには、2からまでの数値をループし、 modがゼロかどうかを確認する必要があります。modがO(1)時間かかる場合、全体的な時間の複雑さはO(n)になります。n − 1 nnnnn − 1n−1n-1nnn 私私i ただし、を入力の書き込みに必要なビット数とすると、(バイナリ)であるため、あり、問題の実行時間は指数関数的なO()になります。x = log n n = 2 x 2 xバツバツxx = ログnバツ=ログ⁡nx = \log nn = 2バツn=2バツn = 2^x2バツ2バツ2^x 私の質問は、入力単項表現を考慮する場合、常にあり、擬似多項式時間は多項式時間の複雑さに等しくなります。では、なぜこれを行わないのでしょうか?x = nnnnx = nバツ=nx=n さらに、ナップザックには擬似多項式時間アルゴリズムがあるため、をとることにより、ナップザックは結果として多項式になりますP = NPx = nバツ=nx=n

2
DAGの2つの頂点間の最短および最長パスを見つける
非加重DAG(有向非巡回グラフ)と2つの頂点および与えられた場合、多項式時間でからへの最短および最長の経路を見つけることは可能ですか?パスの長さは、エッジの数で測定されます。D=(V,A)D=(V,A)D = (V,A)ssstttsssttt 多項式時間で可能な経路長の範囲を見つけることに興味があります。 追って、この質問はStackOverflow質問DAGの最長パスの複製です。

1
が多項式でも指数関数でもない場合、この関数は何と呼ばれますか?
この文は、Garey and Johnsonの「Computers and Intractability」の6ページで見つけました。 時間複雑度関数をそれほど制限できないアルゴリズムは、指数時間アルゴリズムと呼ばれます(ただし、この定義には、通常は指数関数と見なされないなどの特定の非多項式時間複雑度関数が含まれることに注意してください)。nログnnログ⁡nn^{\log n} 次のような私の質問、 場合はの多項式や指数関数的ではない、この関数は何と呼ばれていますか?これには名前や特別な場合がありますか?nログnnログ⁡nn^{\log n} ありがとうございました。

1
PまたはNP完全であることがわかっている区間に素数があるかどうかを判断していますか?
stackoverflowのこの投稿から、数値の間隔をふるいにかける比較的高速なアルゴリズムがあり、その間隔に素数があるかどうかを確認しました。ただし、これは、(間隔に素数が存在するかどうか)の全体的な決定問題がPにあることを意味しますか?(私は読んでいないその投稿に対する多くの答えがあったので、この質問が重複または不要)。 一方では、間隔が十分に大きい場合(たとえば)、バートランドの仮説のようなものが適用され、この間隔には間違いなく素数があります。ただし、2つの素数の間に任意の大きなギャップがあることも知っています(たとえば。 [ N !、N !+ N ][ N、2 N][N、2N][N,2N][ N!、N!+ N][N!、N!+N][N!,N!+ N] 決定問題がPIにある場合でも、対応する検索問題も扱いやすいため、バイナリ検索を実行するときに既知の素数の分布に関して同じプロパティを使用できない場合があります。

2
指数関数的ではあるがPである問題
私は、「例外的に有用」なアルゴリズム/問題のリストを作成しようとしています。たとえば、本質的に非常に指数関数的であるように見えますが、最終的にそれらを解決するいくつかの特に賢いアルゴリズムを持っています。意味の例: 線形計画法(シンプレックスアルゴリズムは指数時間です。多項式時間解を見つけるのに長い時間がかかりました!) より一般的には、半正定値プログラミング 素数テスト 2-SATおよびHORNSAT 行列式の計算(これが難しいと思われない場合は、恒久的と考えてください) 完全に一致するものを見つける 有限単純群の分類を使用して達成できるさまざまなハードグループ理論の問題 複雑なForbidden Minorキャラクタリゼーション(任意の表面への埋め込み可能性、ツリー幅とブランチ幅の境界、デルタワイ還元可能グラフ)を使用して達成できるさまざまなハードグラフの問題 有界グループでの指数の計算(つまり、繰り返しの2乗によって達成されるように、\ log bステップでaを計算)abモッドkabモッドka^b \mod kログbログ⁡b\log b LLLアルゴリズムに依存する計算。(特別な場合:ユークリッドアルゴリズム。より一般的な場合:PSLQまたはHJLSアルゴリズム。) テイラー項のない制約問題(?)。私はこれを完全には理解していませんが、おそらく上記の2-SAT / HORNSATのケースと有限体上の線形代数を包含しているように聞こえます。長い投稿についてはこちらをご覧ください ホログラフィック縮小を介して計算可能な問題。 尊敬すべき言及として、私はグラフ同型も言及します。それはまだ非常に簡単()であり、他の多くの同型問題と同等だからです:nログ2nnログ2⁡nn^{\log^2 n} Digraphs / multigraphs / hypergraphs(一種の「より難しい」問題) 有限オートマトン/ CFG 明らかに、これらにはさまざまな困難がありますが、少なくとも一部の人々は、問題は難しいように聞こえるが扱いやすいという意味で「驚き」の感覚を持ちます。LPは比較的簡単に聞こえるかもしれませんが、実際のソリューションを構築するにはかなりの時間がかかりました。繰り返し二乗または2-SATを解くことは、学部生が独力で思いつく可能性がありますが、HORNSATを見ずにNP-Completeの問題のみを学んだ場合、NP-Completenessの自然な候補のように聞こえるかもしれません。CFSGを解くか、デルタワイ還元可能性をチェックする多項式の方法を持つことは、平均的な偉業ではありません。 これが理にかなっていることを願っています。ここには明らかに多くの主観的な属性がありますが、他の人が「明らかに難しい」問題に対する効率的な解決策であると思うものを聞いてみたいです。


1
線形計画法は強力な多項式時間アルゴリズムを許可しますか?
線形計画問題:与えられた行列A∈Rm×nおよびb∈Rmに対して、Ax≥bのx∈Rnが存在するかどうかを決定する、強多項式時間アルゴリズムを見つけます。 Steve Smaleが数学の未解決の問題をいくつか挙げていることは知っています。しかし、そのような線形計画問題は、今まで解決できないのでしょうか?


2
有限オートマトンによって解決される問題はすべてPにあります
今日の私の理論の計算クラスの後、この質問が私の頭に浮かびました。問題が有限オートマトンによって解決できる場合、この問題はPに属します。 オートマトンは非常に単純な言語を認識するため、これらの言語はすべて、それらを解決するための多項式アルゴリズムを備えていると思います。したがって、有限オートマトンによって解決される問題がPにあることは本当ですか?

3
算術*式*の多項式同一性テストは簡単ではありませんか?
多項式同一性テストは、co-RPにあることがわかっているがPにはないことがわかっている問題の標準的な例です。算術回路では、二乗を繰り返すことで多項式の次数を指数関数的に大きくできるため、実際には難しいように見えます。この質問は、これを回避し、問題をランダム化された多項式時間に保つ方法の問題に対処します。 一方、問題が最初に提示されたとき(例:ここ)は、定数、変数、加算、乗算のみを含む算術式でよく示されます。そのような多項式は、入力式の長さで最大でも多項式であり、そのような多項式の場合、出力値のサイズは入力値のサイズの多項式です。しかし、次数多項式は最大で根を持つので、これは簡単なことではありませんか?任意の有理数に対して多項式を評価するだけですdddddd d+1d+1d + 1点を区別し、各点で結果がゼロかどうかを確認します。これには多項式の時間しかかかりません。これは正しいです?もしそうなら、なぜ問題の難しさを共有することが不可欠なのに、共有部分式のない算術式が例としてよく使われるのですか?


1
3-SAT NPハードの「ローカル」バージョンはありますか?
以下は、空間ベイジアンネットワークに関する大規模な研究プロジェクトの一部を簡略化したものです。 変数が出現する最初の句と最後の句の間により少ない句がある場合、文字列変数が " -local" であるとします(は自然数)。kkkC∈ 3 -cnfC∈3-CNFC \in 3\text{-CNF}kkkkkk ここで、任意のに対して、すべての変数という基準によって定義されたサブセットある -local。何のためである(もしあれば) NP困難?(3 、K )-LSAT ⊆ 3 -SAT(3,k)-LSAT⊆3-SAT(3,k)\text{-LSAT} \subseteq 3\text{-SAT}C∈ (3 、k )-LSATC∈(3,k)-LSATC \in (3,k)\text{-LSAT}CCCkkkkkk(3,k)-LSAT(3,k)-LSAT(3,k)\text{-LSAT} これが私がこれまでに検討したことです: (1)がPであることを意味するものとして書き直し、これらの意味の有向グラフ上の有向パスを調べることにより、ここに記され、詳細はpp.184-に示されています。 Papadimitriouの計算の複雑さの185 )。とは異なり、には有向パスの分岐がありますが、有向パスの数は変数の空間的制約によって制限されている可能性があります。これまでのところこれで成功はありません。2-SAT2-SAT2\text{-SAT}2-SAT2-SAT2\text{-SAT}(3,k)-LSAT(3,k)-LSAT(3,k)\text{-LSAT} (2)(または他の既知のNP完全問題)のへの多項式時間短縮。たとえば、新しい変数を導入するさまざまな方法を試しました。ただし、元の変数を含む句をまとめるには、通常、新しい変数を含む追加の句の「チェーン」をドラッグする必要があり、これらは他の変数の空間制約に干渉します。3-SAT3-SAT3\text{-SAT}(3,k)-LSAT(3,k)-LSAT(3,k)\text{-LSAT}xkxkx_k きっと私はここで新しい領域にいるわけではない。削減できる既知のNP困難な問題はありか、それとも空間的な制約により問題が難しくなることはありませんか?(3,k)-LSAT(3,k)-LSAT(3,k)\text{-LSAT}

1
取る一連の問題
各問題の最も効率的なアルゴリズムが取る決定問題の無限シーケンスを知っていますか? Θ(nk)Θ(nk)\Theta(n^k) 時間、場所 kkk 限りなく増加しますか? たとえば、kクリークを見つけるには、 Θ(nk)Θ(nk)\Theta(n^k)、このシーケンスは{1-clique、2-clique、3-clique、...}のようになります。しかし、おそらくk-cliqueにはより効率的なアルゴリズムがあるため、この答えは正しくありません。 編集: 時間階層定理含み(「Pは、(DTIMEに崩壊しませんnknkn^k)固定の場合 kkk")、そのようなシーケンスが存在する必要があります。 コメントでいくつかの議論の後、一般的なNP問題は良い候補ではありません。それだけかかる場合O(n)O(n)O(n) 証明書をチェックする時間(または O(nc)O(nc)O(n^c)、 どこ ccc から独立した定数です kkk)、それは P≠NPP≠NPP\neq NP

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