タグ付けされた質問 「complexity-theory」

問題の(計算)複雑さに関する質問


2
グラフ彩色問題のNP完全性
代替処方 私は以下の問題に対する別の定式化を思いつきました。代替の定式化は、実際には以下の問題の特殊なケースであり、2部グラフを使用して問題を説明します。しかし、私は代替処方はまだNP難しいと私は信じています。代替の定式化では、問題の定義を単純化する着信ノードと発信ノードの互いに素なセットを使用します。 与えられた送信およびN受信ノード(それぞれ、図中の赤色および青色のノード)、及びセットW I jの大きさのN × Nの発信と着信頂点間の辺の重みの。この問題の目標は、図の太いエッジに色を付けて、すべての入力ノードに対して条件が成立するようにすることです。んnnんnnw私はjwijw_{ij}n × nn×nn \times n セットの出力頂点、セット { I i{ O私|i = 1 … n }{Oi|i=1…n}\{ O_i \; | \; i=1 \dots n \}入力頂点の、 N × Nの重み wは、I 、J ≥ 0との間の O I 'sおよび I 、Jのための I 、J = 1 ... nは、正の定数を β、色の最小数を見つけます。エッジに対する E I …

2
AがBに還元可能にマッピングされる場合、Aの補数はBの補数に還元可能にマッピングされます。
私は計算理論の最後の勉強をしており、この発言が真実か偽かに答える適切な方法に取り組んでいます。 定義の≤メートル≤メートル\leq_m我々は、次のステートメントを構築することができます W ∈ A⟺f(W )∈ B → W ∉ A⟺f(W )∉ Bw∈あ⟺f(w)∈B→w∉あ⟺f(w)∉Bw \in A \iff f(w) \in B \rightarrow w \notin A \iff f(w) \notin B これは私が行き詰まっているところです、私はそのような計算可能な関数があるので、AからBへのマッピングがあればそれだけを提供し、そうでなければそれを提供しないと言いたいです。fff これを正しく表現する方法がわからない場合や、正しい方向に進んでいるかどうかはわかりません。

3
すべてのNP問題はNP完全な問題に減少します。それでは、NP問題はどのようにしてNP完全ではないのでしょうか。
私の本はこれを述べています 決定問題BがPにあり、AがBに減少する場合、決定問題AはPにあります。 決定問題Bは、BがNP内にある場合はNP完全であり、NP内のAのすべての問題について、AはBに減少します。 CがNP内にある場合、決定問題CはNP完全であり、一部のNP完全問題Bの場合、BはCに減少します。 だから私の質問は BまたはCがNP完全であり、NPのすべての問題がNP完全問題に減少する場合、最初のルールを使用して、どのNP問題もNP完全ではないのですか? AがBに減少した場合、BはAに減少しますか?

1
これはNP完全問題ですか?
次の問題ステートメントを検討してください。 最初の数が与えられると、あなたとあなたの友人は交代でそれから完全な四角形を引きます。ゼロに勝つ最初のものは勝利します。例えば: 初期状態:37 Player1は16を減算します。状態:21 Player2は8を減算します。状態:13 Player1は4を減算します。状態:9 Player2は9を減算します。状態:0 Player2が勝利! 初期状態が与えられ、最適な動き、つまりゲームの勝利につながることが保証されている動きを返すプログラムを記述します。可能な動きがあなたを勝利状態に導くことができないなら、-1を返します。 この問題は、動的プログラミングを使用して疑似多項式時間で解決できます。アイデアは、長さn(nは初期状態)の配列を下から上に最適な移動で埋めるか、または移動が勝てない場合は-1です。これは、O(n * sqrt(n))を必要とします。これは、すべての数値について、それよりも小さい可能性のあるそれぞれの完全な二乗を減算することを考慮する必要があるためです(それらの〜sqrt(n)があります)。ただし、これは疑似多項式のランタイムの複雑さです。これは、ランタイムがバイナリの入力サイズ(数値を表すために使用されるビット数)に関連して実際に指数関数的にスケーリングされるためです。 誰でもこの問題を解決するための多項式アルゴリズムを考えることができますか?そうでない場合、それはNP-Completeでしょうか?どうして?

1
関数型プログラミング言語の実装に関するアルゴリズムの複雑さの分析
今日、アルゴリズム分析は計算モデルに基づいて異なることを学びました。それは私が考えも聞いたこともないものです。 User @chiが私に与えた、それをさらに説明する例は次のとおりです。 たとえば、タスクを考えてみましょう: がx iを返し ます。RAM では 、配列アクセスが一定時間であるため、これはO (1 )で解決できます。TMを使用して、入力全体をスキャンする必要があるため、O (n )です。(i,x1,…,xn)(i,x1,…,xn)(i,x_1 ,…,x_n )xixix_iO(1)O(1)O(1)O(n)O(n)O(n) これは、関数型言語について不思議に思います。私の理解から、「関数型言語はラムダ計算に密接に関連しています」(ここでの Yuval Filmusのコメントから)。では、関数型言語がラムダ計算に基づいているが、RAMベースのマシンで実行されている場合、純粋に関数型のデータ構造と言語を使用して実装されたアルゴリズムで複雑さ分析を実行する適切な方法は何ですか? 私は純粋に機能的なデータ構造を読む機会がありませんでしたが、件名についてWikipediaのページを確認しました。データ構造のいくつかは、従来の配列を次のものに置き換えているようです。 「配列は、純粋に機能的な実装を認めるマップまたはランダムアクセスリストに置き換えることができますが、アクセスと更新の時間は対数です。」 その場合、計算モデルは異なりますよね?

1
NP完全セットは、少なくとも1つがNPハードである場合にのみ、他の2つのセットから形成されますか?
この質問は、NP完全集合の集合演算から形成された集合に関する以前の質問とは多少逆になります。 2つの決定可能な集合 とL 2の和集合、交差、またはデカルト積から得られる集合がNP完全である場合、L 1、L 2の少なくとも1つは必然的にNP困難ですか?Pがこれらの集合演算の下で閉じているため、両方をPにすることはできない(P!= NPと仮定)。「決定可能」と「NPハード」の条件が必要であることも知っています。NP 以外の任意のNPコンプリートセットLと別のセットB(NPハードまたは単に決定不可能か)を考慮すると、2つの新しい交差がNP完全なNPにないNPハードセット。例:L 1:= 01L1L1L_1L2L2L_2L1、L2L1,L2L_1, L_2LLLBBB、及び L 2:= 01 L ∪ 00 B。しかし、その後の進め方がわかりません。 L1:= 01 L ∪ 11 BL1:=01L∪11BL_1:= 01L \cup 11BL2:= 01 L ∪ 00 BL2:=01L∪00BL_2:= 01L \cup 00B 私たちはNP完全セット取ることができますので、組合の場合は真ではないかもしれないことを考えているセット取得するためにラドナーの定理で建設を行うB ∈のサブセットであるNPI Aを。次いで、B ∪ (A ∖ B )= Aは、元のNP-完全なセットです。ただし、A ∖ BがまだNPIまたはNPハードであるかどうかはわかりません。交差点とデカルト積の場合、どこから始めればよいかもわかりません。あAAB ∈B∈B \inあAAB ∪ (A …

3
複雑性理論で言語を使用する理由
私は計算理論に取り掛かり始めたばかりです。計算理論は、何を計算できるか、どれだけ速く、どれだけのメモリを使用して、どの計算モデルを使用するかを研究しています。 私はかなり基本的な質問がありますが、皆さんの何人かがその背後にある概念を理解するのを助けてくれることを本当に望んでいます: なぜすべてが言語の概念と定義(つまり、通常の言語と文脈自由言語)に集中しているのですか?そして、これらはアルゴリズムの複雑さとそれらを解決するための可能な計算モデルをどのように関連付けて説明しますか? 私はこれらの種類の関連する質問を読みます: /cstheory/14811/what-is-the-enlightenment-im-supposed-to-attain-after-studying-finite-automata /cstheory/8539/how-practical-is-automata-theory しかし、それらがなぜ重要であるか(私は理解しています)の実用的な正当化を提供しますが、複雑性理論がそれらに基づいている理由を理解するのに役立ちませんので、それでも私の疑問に対する答えはありません。

1
このアルゴリズムが最終的に終了することを証明する簡単な方法
導入と表記: (私の実験によれば)終了するように見える私のアルゴリズムの新しくてシンプルなバージョンがここにあります、そして今私はそれを証明したいと思います。 表記ましょを参照して、P次元データ点(ベクトル)。A、B、Cの3つのセットがあります。A | = n、| B | = m、| C | = l: A = { x i | 私は= 1 、。。、n } B = { x j | j = n + 1xi∈Rpxi∈Rpx_i \in \mathbb{R}^pppp|A|=n|A|=n|A| = n|B|=m|B|=m|B| = m|C|=l|C|=l|C| = lA={xi|i=1,..,n}A={xi|i=1,..,n}A = \{x_i | i = 1, .., …

1
RAMマシンによってT(n)で計算可能なブール関数がDTIME(T(n)^ 2)にあることを証明します
問題は、Arora-Barakの著書「Computational Complexity — Modern Approach:」の演習1.9 です。 RAMチューリングマシンを、ランダムアクセスメモリを持つチューリングマシンとして定義します。これを次のように形式化します。マシンには、すべての空白に初期化される無限配列Aがあります。次のようにこの配列にアクセスします。マシンのワークテープの1つがアドレステープとして指定されています。また、マシンには、RとWで示される2つの特別なアルファベット記号と、q_accessで示される追加の状態があります。マシンがq_accessに入るときは常に、そのアドレステープに 'i'R(' i 'はiのバイナリ表現を表す)が含まれている場合、値A [i]がRシンボルの隣のセルに書き込まれます。そのテープに 'i'Wa(aはマシンのアルファベットの記号)が含まれている場合、A [i]は値aに設定されます。 ブール関数がRAM Tによって時間T (n )(ある時間構成可能なTの場合)内で計算可能である場合、はD T I M E(T (n )2)にあることを示します。fffT(n)T(n)T(n)TTTDTIME(T(n)2)DTIME(T(n)2)\mathrm{DTIME}(T(n)^2) (アドレス値)追加のテープ記録のペアを使用して、自明な解は、であることが判明そのテープは、大きさのものとすることができるので、O (T (N )2)とO (T (n ))ペア、各ペアのアドレスはサイズO (T (n ))にすることができます。DTIME(T(n)3)DTIME(T(n)3)\mathrm{DTIME}(T(n)^3)O(T(n)2)O(T(n)2)O(T(n)^2)O(T(n))O(T(n))O(T(n))O(T(n))O(T(n))O(T(n))

3
ポンツーンで島を接続することはNP完全ですか?
私の心には問題があります。NPCの問題だと思いますが、それを証明する方法がわかりません。 ここに問題があります: 非常に大きな湖にはk個の島があり、 扇形のポンツーンはn個あります。これらのポンツーンは同じサイズですが、最初の方向が異なり、湖の元の位置が異なります。ポンツーンはその重心を中心に自由に回転でき、回転に関連するコストはかかりません。 次に、これらのポンツーンを移動して、湖のすべての島を接続できるようにする必要があります。私たちはポンツーンの数がすべての島を結ぶのに十分であることを保証できます。 【ご注意】ポンツーンは再利用できません!! タスクは、すべての島を接続するために、移動するポンツーンの最小合計距離を持つ解を見つけることです。1つのポンツーンの移動距離は、重心の元の位置とその展開位置との間の距離として計算できます。 分かりやすくするために、こんな図を描いてみました。A、B、Cの3つの島があるとします。これらは湖のどこかにあります。そして、私はいくつかの扇形のパントンを持っています。これで解決策は、図の下部に示されているA、B、Cを接続するための最小移動距離の合計を見つけることです。問題の理解に役立つことを願っています。:) 問題はNPCの問題のようですが、それを証明できるかわかりません。誰もがこれを手伝ってくれる?

1
リテラルが1回しか出現できない3SATの制約バージョンが多項式時間で解けることを証明するにはどうすればよいですか?
私は課題(「アルゴリズム -S . Dasgupta、CH Papadimitriou、およびUV Vaziraniによる第8章、問題8.6a」から引用)を作成しようとしていますが、それを言い換えています。 3SATは、各リテラルが最大2回出現する数式に制限されている場合でもNP完全のままであることを考えると、各リテラルが最大1回出現する場合、問題は多項式時間で解決可能であることを示します。 私は条項を複数のグループに分けることでこれを解決しようとしました: 他の条項と共通の変数を持たない条項 共通する変数が1つだけの句 2つの変数が共通する句 3つの変数すべてに共通する句 私の推論は、そのようなグループの#が有限であるというリテラルに沿って試行されました(リテラルが2回以上存在しないという制限が課せられたため)、最初に最も制限されたグループ(グループ4)を満たしてから、制限の少ないグループ(3、2、次に1)になりますが、これは、各リテラルが出現する可能性がある3SATの制限されたバージョンの場合とあまり変わらないので、どこにも行き着くわけではないことに気付きましたNP完全であることが証明されている最大2回。 ヒント/解決策をオンラインで検索してみましたが、入手できるのはこのリンクだけでした。ここで、示されたヒントでは十分な意味がありませんでした。 xixix_iCjCjC_jxixix_ixi¯¯¯¯¯xi¯\overline{x_i}CkCkC_kCj∨Ck¯¯¯¯¯¯Cj∨Ck¯C_j \lor \overline{C_k} CjCjC_jCkCkC_kCj∨Ck¯¯¯¯¯¯Cj∨Ck¯C_j \lor \overline{C_k}Cj∨Ck¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯Cj∨Ck¯\overline{C_j \lor C_k} ヒントを解読するか、私が探求できるパスを提供することの助けがあれば、本当に感謝しています。

1
PとP / polyはどうして同じではないのですか?
Pの定義は、多項式時間アルゴリズムによって決定できる言語です。P / polyの定義は、多項式サイズの回路によって決定できる言語を意味すると解釈できます(http://pages.cs.wisc.edu/~jyc/02-810notes/lecture09.pdfを参照)。さて、なぜ多項式サイズの回路を多項式時間でシミュレーションできないのでしょうか?

4
NSPACE(O(n))の言語で、DSPACE(O(n))にはない可能性が高い
実際、状況依存言語のセット(受け入れ言語)は(通常の言語)ほど広く議論されていないことがわかりましたまたは(コンテキストフリー言語)。また、未解決の問題は、「類似の」問題ほど有名ではありません: " "。= N S P A C E (O (n ))= L B A R E G C F L D S P A C E (O (n ))= ?N S P A C E (O (n ))P = ?N PC S LCSL\mathbf{CSL}= N S P A C E …

2
ランクなしのパス圧縮を使用したunion-findの複雑さ
ウィキペディアはパス圧縮なしのランク別組合はの償却時間複雑与え言い、そしてランクとパス圧縮することにより、両方の労働組合は、の償却時間複雑与えることをO (α (N ))(αはの逆であるがアッカーマン関数)。ただし、ユニオンランクなしのパス圧縮の実行時間については触れていません。これは、私が通常自分で実装するものです。O(logn)O(log⁡n)O(\log n)O(α(n))O(α(n))O(\alpha(n))αα\alpha パス圧縮最適化を使用して、ランク最適化による結合を使用しない場合のunion-findの償却時間の複雑さはどのくらいですか?

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