理論計算機科学

理論計算機科学者および関連分野の研究者のためのQ&A

6
Fisher-Yates Shuffleアルゴリズムの複雑さ
この質問は、特定の配列のランダムシャッフルを返すFisher-Yatesアルゴリズムに関するものです。Wikipediaのページには、その複雑さはO(n)があると言うが、私はそれが(N Nログ)Oだと思います。 各反復iで、ランダムな整数が1〜iの間で選択されます。単純に整数をメモリに書き込むことはO(log i)であり、反復がn回あるため、合計は O(log 1)+ O(log 2)+ ... + O(log n)= O(n log n) ナイーブアルゴリズムの方が優れているわけではありません。ここに何かが足りませんか? 注:単純なアルゴリズムでは、各要素に間隔(0,1)の乱数を割り当て、割り当てられた番号に関して配列を並べ替えます。

1
を示す障壁
に障壁があることを知っています。P \ ne NPを信じているので、私たちは皆、これらの障壁を研究しました。P≠NPP≠NPP\ne NPP≠NPP≠NPP\ne NP しかし、P=NPP=NPP=NPと仮定し、可能性が存在すると信じる賢明な人々がいます。これが実際に当てはまる場合、優れたアルゴリズムを見たことがないという事実は、この代替宇宙にも障壁があるかもしれないことを示しています。P \ ne NPの証明可能性P≠NPP≠NPP\ne NPは障壁に乗っているため、P≠NPP≠NPP\ne NPが真実かどうかはわかりません。我々は確かに知っていないP=NPP=NPP= NPいずれかの真実ですので、証明可能性のあるP=NPP=NPP=NPもバリアだらけ?
15 p-vs-np  barriers 


1
答えはノーだと思うが、実際に反例を構築することはできなかった。違いは、では、アルゴリズムを均一に選択できない可能性があることです。で。∩ε>0DTIME(O(n2+ε))∩ε>0DTIME(O(n2+ε))∩_{ε>0} \mathrm{DTIME}(O(n^{2+ε}))O(n2+ε)O(n2+ε)O(n^{2+ε})εεε dovetailing引数によって(例えば、この参照質問を)、チューリングマシンのCEのセットがある場合言語判定よう、次いであるがで\ mathrm {DTIME}(N ^ {2 + O(1)})。 L ∀ ε > 0 ∃ M I ∈ O (N 2 + ε)L D T I M E(N 2 + O (1 ))MiMiM_iLLL∀ε>0∃Mi∈O(n2+ε)∀ε>0∃Mi∈O(n2+ε)∀ε>0 ∃M_i ∈ O(n^{2+ε})LLLDTIME(n2+o(1))DTIME(n2+o(1))\mathrm{DTIME}(n^{2+o(1)}) チューリングマシンが与えられた場合、マシンが時間内に実行されるかどうかは、はΠ^ 0_3 -completeです。言語(それを認識するマシンにコードを与えた)が\ mathrm {DTIME}(n ^ {2 + o(1)})にあるかどうかは、Σ^ 0_4(およびΠ^ 0_3 -hard)です。言語が∩_{ε> 0}にあるかどうか\ mathrm …


1
多項式時間短縮におけるべき乗の有効性
私は10日前にcs.stackexchange でこの質問をしましたが、答えがありませんでした。 非常に有名な紙(ネットワーキングコミュニティに)、ワン・クロウクロフトは、いくつかの提示いくつかの添加剤/乗法制約の下で経路計算の結果を-completeness。最初の問題は次のとおりです。NPNP\mathsf{NP} 有向グラフ所与と2つのウェイトメトリックW 1及びW 2のエッジ上をパスするために、定義P、W I(P )= Σ A ∈ P W I(A )(I = 1 、2)。二つのノード所与SとT、問題は、パスを見つけることであるPからSをするためにはt ST WをG=(V,A)G=(V,A)G=(V,A)w1w1w_1w2w2w_2PPPwi(P)=∑a∈Pwi(a)wi(P)=∑a∈Pwi(a)w_i(P)=\sum_{a\in P}w_i(a)i=1,2i=1,2i=1,2ssstttPPPsssttt、 Wは、iは正の数(例:ネットワークにおける遅延制約とコスト)与えられています。wi(P)≤Wiwi(P)≤Wiw_i(P)\leq W_iWiWiW_i 著者らは、PARTITIONから多項式を削減することにより、この問題が完全であることを証明しています。NPNP\mathsf{NP} その後、彼らは、メトリックが乗算され、すなわち、それ以外は同様の問題を提示。乗法バージョンがN P完全であることを証明するために、w ' i(a )= e w i(a )およびW ' i = e W iを置くだけで、加法バージョンから「多項式」削減を提供します。w′i(P)=∏a∈Pw′i(a)wi′(P)=∏a∈Pwi′(a)w'_i(P)=\prod_{a\in P}w'_i(a)NPNP\mathsf{NP}w′i(a)=ewi(a)wi′(a)=ewi(a)w'_i(a)=e^{w_i(a)}W′i=eWiWi′=eWiW'_i=e^{W_i} 私はこの削減に非常に困惑しています。以来とW 「I()(バイナリでは、私は推測する)入力の一部であり、そして| w ′ i(a )| と| W ′ i …

2
(方法)チューリング計算モデルがなくてもNP問題を発見/分析できますか?
純粋に抽象的な数学/計算推論の観点から、(どのように)3-SAT、サブセットサム、巡回セールスマンなどの問題を発見または推論できますか?何か意味のある方法でそれらについて推論することさえできますか?機能的な観点でしょうか?それも可能でしょうか? 私は、ラムダ計算の計算モデルを学習する一環として、この質問を純粋に自己探求の観点から熟考してきました。私はそれが「直感的ではない」ことを理解しており、それがゲーデルがチューリングモデルを支持した理由です。ただし、この機能スタイルの計算の既知の理論的制限は何か、NPクラスの問題を分析するのにどれほどの障害があるかを知りたいだけです。

3
対数交代を伴う定量化ブール式
私は、数量詞の対数が交互になっている数量化ブール式のクラスにとって難しい問題を研究しています。このクラスの問題は次のようになります。 ∀(x1,x2,…xa1)∃(xa1+1,…xa2),…∃(xalogn−1,…xalogn)F∀(x1,x2,…xa1)∃(xa1+1,…xa2),…∃(xalog⁡n−1,…xalog⁡n)F\forall (x_1, x_2, \ldots x_{a_1}) \exists (x_{{a_1}+1}, \ldots x_{a_2}), \ldots \exists(x_{a_{\log n - 1}}, \ldots x_{a_{\log n}})F ここでで、は変数ブール式です。alogn=nalog⁡n=na_{\log n} = nFFFx1…xnx1…xnx_1 \ldots x_n このクラスには明らかにが含まれており、含まれています。このクラスの名前はありますか?それについてもっと知られていることはありますか?PHPHPHAP=PSPACEAP=PSPACEAP = PSPACE

2
有限体の線形システムを解くためのRaghavendraのアルゴリズムのステータス
2012年、リプトンは、 Prasad Raghavendraによる有限体上の線形システムを解くための新しいアルゴリズムに関するブログエントリを書きました。 トピックに関するRaghavendraのドラフトペーパーへのリンクは現在無効になっています。RaghavendraのWebサイトでこのテーマに関する情報は見つかりません。 結果は正しいですか?記事はどこでも入手できますか? ありがとう!

2
理論的コンピューターサイエンスとは何ですか?
私は数学の大学院生であり、理論的なコンピューターサイエンスは、そのトピックについての良い読み物を見つけることができなかったため、それが何であるかを理解できなかった領域です。このドメインが実際に何であるか、どのようなトピックに関係しているのか、それに着手するためにどのような前提条件が必要なのかなどを知りたいのです。 理論的なコンピューターサイエンスの入門書とは何ですか? そのようなことを考えると。そうでない場合、理論的なコンピューターサイエンスが何であるかを理解したい場合、コンピューターサイエンスに関する基本的な知識を持っている(つまり、1つまたは2つのプログラミング言語の基礎を知っている)数学者はどこから始めるべきですか?おすすめは何ですか? ありがとう!

1
証明に「高次推論手法」が必要かどうかを判断する方法は?
質問: 公理と目標からなる問題の仕様があると仮定します(つまり、関連する証明問題は、すべての公理が与えられた場合に目標が満たされるかどうかです)。また、問題には公理間の矛盾や矛盾は含まれないと仮定します。問題を証明するには「高次の推論」が必要であることを事前に(つまり、完全な証明を構築せずに)決定する方法はありますか? 「高次の推論」とは、高次のロジックを書き留める必要がある証明手順を適用することを意味します。「高次推論」の典型的な例は帰納法です。原則として帰納法を書き留めるには、高次論理を使用する必要があります。 例: 「2つの自然数の加算は可換ですか?」という証明問題を指定できます。一次論理を使用する(つまり、コンストラクターzero / succを使用して自然数を定義し、標準公理とともに、「プラス」関数を再帰的に定義する公理と一緒に定義する)。この問題を証明するには、 "plus"の最初の引数または2番目の引数の構造の帰納が必要です( "plus"の正確な定義に依存)。入力問題の性質を分析するなどして、証明しようとする前にこれを知っていましたか?(もちろん、これは説明のための単なる例です-実際には、これはプラスの可換性よりも難しい証明問題にとって興味深いでしょう。) もう少しコンテキスト: 私の研究では、Vampire、eproverなどの自動化された1次定理証明を適用して、証明問題(または証明問題の一部)を解決しようとすることがよくあります。多くの場合、証明者は証明を思いつくのにかなりの時間を必要とします(ただし、1次推論手法のみを必要とする証明がある場合)。もちろん、高次の推論を必要とする問題に一次定理証明器を適用しようとすると、通常はタイムアウトになります。 したがって、証明問題が高次の推論手法を必要とするかどうかを事前に伝えることができる方法/技術があるかどうか疑問に思っていました)少なくとも、特定の入力の問題のために。 私は自分の質問に対する答えを文献で探し、定理の分野の仲間の研究者にそれについて証明しましたが、今のところ、良い答えはありませんでした。私の期待は、インタラクティブな定理証明と自動化された定理証明(Coqコミュニティ?Isabelleコミュニティ(Sledgehammer)?)を組み合わせようとする人々からのこのトピックに関する研究があることです。 一般に、ここで概説した問題は決定できないと思います(そうですか?)。しかし、問題の洗練されたバージョンには良い答えがあるかもしれません...?

3
既約言語
これは必ずしも研究上の質問ではありません。好奇心からの質問: 「還元不可能な」言語を定義できるかどうかを理解しようとしています。最初の推測として、でおよびとして記述できる場合、言語Lを「縮小可能」 と呼びます。 。それは本当ですか:L = A ⋅ BL=A⋅BL = A \cdot BA ∩ B = ∅A∩B=∅A \cap B = \emptyset| A | 、 | B | >1|A|、|B|>1|A|,|B|>1 1)Pが既約である場合、A、B、Cは、およびような言語である場合、言語が存在しますように?これは、ユークリッドの補題に整数で対応し、「因数分解」の一意性を証明するのに役立ちます。P ∩ C = ∅ A ⋅ B = C ⋅ P B ' ∩ P = ∅ B = B ' ⋅ …

2
有限オートマトンで明確に定義された除算演算はありますか?
バックグラウンド: 2つの決定性有限オートマトンAおよびBが与えられた場合、Cの状態をAの状態とBの状態のデカルト積として積Cを形成します。次に、遷移、初期状態、および最終状態を選択して、 Cは、AとBの言語の共通部分です。 質問: (1)CをBで「分割」してAを見つけることはできますか?Aはさらに同型までユニークですか?ここおよび以下の言語ではなく、状態図を重視します。したがって、状態図を圧縮して状態の数を減らすことはできません。 (2)Aが一意の場合、それを見つけるための効率的なアルゴリズムはありますか? (3)すべての決定性有限オートマトンには、「素数」への一意の因数分解がありますか。ここでの素数とは、因数分解できないオートマトン、つまり、2つの小さなオートマトンの積として記述されたオートマトンを意味します。 @MichaelWeharと連携する

3
BPPからPへの成功したランダム化解除の例
成功するランダム化解除のいくつかの主要な例や、目標(硬さのランダム接続ではなく)に向けた具体的な証拠の表示の進行状況は何ですか?P=BPPP=BPPP=BPP 私の頭に浮かぶ唯一の例は、AKS決定論的多項式時間素数テストです(これについてもGRHを想定した方法論がありました)。それでは、デランダム化について、例を通してどのような具体的な証拠がありますか(これも硬度やオラクルの関係ではありません)? ランダム化されたポリから決定論的なポリまたは特定の問題に非常に近い何かへの時間の複雑さの改善が示された場合にのみ例を維持してください。 以下はコメントの詳細であり、このクエリに役立つかどうかはわかりません。 Chazelleは、http://www.cs.princeton.edu/~chazelle/linernotes.htmlの「The Discrepancy Method:Randomness and Complexity(Cambridge University Press、2000)」に非常に興味深い声明を掲載しています。 「決定論的計算のより深い理解には、ランダム化の習得が必要であることは、私にとって無限の魅力の源でした。この強力な接続を説明するためにこの本を書きました。最小全域木から線形計画法、ドローネ三角形分割まで、最も効率的なアルゴリズムは多くの場合、確率的ソリューションの非ランダム化です。不一致の方法は、すべてのコンピューターサイエンスで最も実り多い質問の1つにスポットライトを当てます。

1
動的プログラミングは貪欲よりも決して弱くないのですか?
回路の複雑さの中で、さまざまな回路モデルのパワーを分離しています。 証明の複雑さでは、さまざまな証明システムの能力を分離しています。 しかし、アルゴリズムでは、アルゴリズムのパラダイムの力の間の分離はまだわずかしかありません。 以下の私の質問は、貪欲と動的プログラミングという2つのパラダイムでこの後者の問題に触れることを目的としています。 要素の基本セットと、そのサブセットの一部のファミリが実行可能なソリューションとして宣言されています。このファミリは下向きに閉じていると仮定します。実行可能なソリューションのサブセットは実行可能です。地上要素への非負の重みの割り当てを考えると、問題は実行可能な解の最大合計重みを計算することです。 欲張りアルゴリズムは、空の部分解で始まり、各ステップで、可能な限り最大の未処理要素を追加します。つまり、拡張解がまだ実行可能な場合です。よく知られているRado-Edmondsの定理は、このアルゴリズムが実行可能な解のファミリーがマトロイドである場合、すべての入力の重みに対して最適な解を見つけると述べています。 大まかに言えば、DPアルゴリズムは、MaxおよびSum(またはMinおよびSum)操作のみを使用する場合、単純です。より具体的には(Joshuaが示唆するように)、単純なDPアルゴリズムによって、fann-2 MaxゲートとSumゲートを持つ(max、+)回路を意味します。入力は変数であり、その私私i番目は番目の要素に与えられた重みに対応します。このような回路は、実行可能なソリューションの最大総重量を計算するだけで、このような問題を解決できます。しかし、指数関数的に多くのそのようなソリューションがある場合、これは非常にやり過ぎになる可能性があります(ほとんどの場合そうです)。私私i 質問1: 単純なDPアルゴリズムで、対応する最大化問題を解決するために超多項式数の演算が必要なマトロイドはありますか? コメント(2015年12月24日追加):この質問は既に回答済みです(以下を参照)。圧倒的多数であっても、このようなマトロイドがあります。 次の質問では、近似問題のために貪欲なDPと単純なDPを分離するように求めています。で最大量のマッチング問題、実現可能な解決策の家族は完全な二部では、すべてのマッチングで構成さグラフ。エッジへの重みの指定された割り当ての目的は、マッチングの最大重みを計算することです(重みは負でないため、これは常に完全なマッチングになります)。 n × nn×nn\times n 単純な欲張りアルゴリズムは、要因2内でこの問題を近似できます。常に、最大重量のまだ表示されていないばらばらのエッジを取るだけです。得られた重量は、最適重量の少なくとも半分になります。 質問2: 単純なDPアルゴリズムは、多項式的に多くのMaxおよびSum演算のみを使用して、因子2内のMax-Weight Matching問題を近似できますか? もちろん、エッジの最大重みの倍を出力する単純なDPアルゴリズムは、因子内でこの問題を近似します。しかし、はるかに小さい係数が必要です。係数を達成することはできないと思いが、繰り返しますが、これをどのように証明するのでしょうか? nnnnnnn /ログnn/ログ⁡nn/\log n 関連:Max-Weight Matchingのいとこは、Assignment問題です。完全一致の最小重みを見つけます。この問題は、操作のみを使用する線形プログラミング(いわゆるハンガリー語アルゴリズム)によって(正確に)解決できます。しかし、パーマネント関数を計算するモノトーンブール回路のサイズのRazborovの下限は、任意の(!)有限要素内でこの問題を近似する(min、+)回路が操作。したがって、最小化問題の場合、単純なDPアルゴリズムは線形計画法よりもはるかに弱い可能性があります。上記の私の質問は、このようなDPアルゴリズムがGreedyよりもさらに弱いことを示すことを目的としています。 O (n3)O(n3)O(n^3)nΩ (ログn )nΩ(ログ⁡n)n^{\Omega(\log n)} 誰かが同様の質問を誰かが検討しているのを見たことがありますか? 追加(2015年12月24日):質問2は、因子貪欲アルゴリズムで近似できる特定の最大化問題(Max-Weight Matching問題)を、単純なポリサイズでは近似できないことを示すことを目的としています。同じ係数 DP 。一方、私は貪欲と単純なDPの間の弱い分離を得ました:すべてのには、因子貪欲なアルゴリズムで近似できる明示的な最大化問題がありますが、ポリサイズの単純なDPアルゴリズムは、より小さい係数この問題を近似できます(こちらを参照)r = 2r=2r=2r = o (n / log n )rrrrr = o (n / logn …

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