理論計算機科学

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

3
ブール関数のフーリエ解析が「機能する」のはなぜですか?
長年にわたって、離散フーリエ解析を使用して多くのTCS定理が証明されることに慣れてきました。Walsh-Fourier(アダマール)変換は、プロパティテスト、擬似ランダム性、通信の複雑さ、量子コンピューティングなど、TCSのほぼすべてのサブフィールドで役立ちます。 問題に取り組むとき、ブール関数のフーリエ解析を非常に便利なツールとして使用することに快適になりましたが、フーリエ解析を使用するといくつかの素晴らしい結果が得られるかなり良い予感がありますが。この基礎の変更が非常に役立つのは、それが何であるかが本当によく分からないことを認めなければなりません。 TCSの研究において、なぜフーリエ解析が実り多いのかについて、誰にも直観がありますか?フーリエ展開を記述し、いくつかの操作を実行することで、なぜ一見困難な問題が数多く解決されるのでしょうか? 注:私のこれまでの主な直観は、それがわずかであっても、多項式の振る舞いをかなりよく理解していること、およびフーリエ変換が関数を多重線形多項式として見る自然な方法であるということです。しかし、なぜ具体的にこのベースですか?パリティのベースでこれほどユニークなものは何ですか?

10
DFAに関して未解決の問題はありますか?
学部生で決定論的有限状態オートマトン(DFA)を研究した後、私はそれらが非常によく理解されていると感じました。私の質問は、それらについてまだ理解していないものがあるかどうかです。DFAの一般化を意味するのではなく、私たちが学部生で研究している元の未修正のDFAを意味します。 これはあいまいな質問ですが、アイデアが得られることを願っています。私たちがDFAを完全に理解していると言ってもいいかどうかを理解したいと思います。ですから、DFAに関する問題のように見せかけた問題ではなく、本質的にDFAに関する質問を意味します。そのような問題の例を挙げましょう。P = NPの場合、Lを空の言語とし、PがNPでない場合、いくつかの固定非正規言語とします。LはDFAで受け入れられますか?この質問はDFAに関するものですが、それは精神的なものではありません。私の主張が明確であり、人々からfrom舌な非回答を得ないことを願っています。 要するに、言うのは公平ですか 基本的にDFAを完全に理解しています。 これが私が気づいていない巨大な研究分野であり、人々のコミュニティ全体をjust辱したばかりであることが判明した場合、申し訳ありません。

7
プルーフを撃downする方法
証拠を確認するための一般的なガイドラインは何ですか?これは私のような大学院生にとって重要だと思います。何かを証明するために何をする必要があるかはすでにわかっていますが、送信する前にすべてを常に確認する必要があります。あなた自身のアドバイザーにも。 私は試行錯誤によっていくつかの戦略を開発し、アドバイザーから多くのアドバイスを受けました。しかし、これは常に非常に退屈な作業です。通常、何かを終えたら、次の問題に進みたいだけですが、すべてが完璧になるまで現在の問題に固執する必要があります。ここに、私自身のトリックのリストの例を示します。 詳細を入力します。「それは明らかです...」、「一般性を失うことなく...」などと書いた場所には多くの間違いがあります。 いくつかの数字を試してください。「またはn = 1000に設定するとどうなるか」などの極端なケースを試してください。n = 1n=1n=1n = 1000n=1000n=1000 清潔なノートを保管してください。毎日それを書き、あなたの大まかなメモと比較してください。私もラテックスで書きますが、この方法で多くの間違いを発見しました。 証拠の確認に適用する一般的な戦略は何ですか? この質問の目的は、コミュニティWikiにすることです。


4
行列乗算を2次時間で実行できるという証拠はありますか?
行列乗算の最適な指数であるは実際には2に等しいと広く推測されています。私の質問は簡単です:ωω\omega と信じる理由は何ですか?ω=2ω=2\omega = 2 Coppersmith-Winogradのような高速アルゴリズムは知っていますが、これらが証拠と見なされる理由はわかりません。ω=2ω=2\omega = 2 素朴に、それは、結果が純粋に審美的な理由で真実であることをコミュニティが望んでいる古典的な例のように思えます。それが本質的にここにあるかどうか知りたいです。

8
人間の心がすぐに達成できることと最も密接に関連する複雑性クラスは何ですか?
この質問は私がしばらく疑問に思っていたものです。 P対NPの問題を説明するとき、クラスNPを創造性と比較することがよくあります。彼らは、モーツァルト品質の交響曲(NPタスクに類似)の作成は、すでに作成された交響曲がモーツァルト品質(Pタスクに類似)であることを検証するよりもはるかに難しいように見えることに注意します。 しかし、NPは本当に「創造性クラス」ですか?他の候補者はたくさんいませんか?「詩は決して終わらない、捨てられるだけだ」という古い格言があります。私は詩人ではありませんが、これは、すぐに検証できる明確な正しい答えがないという考えを連想させます... NPやSATよりもcoNPやTAUTOLOGYなどの問題を思い出させます。私が得ているのは、詩が「間違っている」ときは改善する必要があるときは簡単に検証できるが、詩が「正しい」または「完成した」ときは検証が難しいということだと思います。 確かに、NPは、創造性よりも論理と左脳的思考を思い起こさせます。証明、エンジニアリングの問題、数独パズル、および他のステレオタイプの「左脳問題」は、詩や音楽よりもNPであり、品質の観点から検証しやすいです。 だから、私の質問は次のとおりです。どの複雑さのクラスが、人間が心で達成できることの全体を最も正確にキャプチャしますか?おそらく左脳が近似のSATソルバーではなく、右脳が近似のTAUTOLOGYソルバーではない場合、私は常にぼんやりと考えました(そして、私の推測を裏付ける科学的証拠はありません)。おそらく、心の問題を解決するために心が設定されています...または、おそらくPSPACEの問題を解決することさえできます。 上記で考えを述べました。私は誰もこれについてより良い洞察を提供できるかどうかについて興味があります。私の質問を簡潔に述べるために、私はどの複雑さのクラスを人間の心が成し遂げることができるか、そしてあなたの視点を支持する証拠または議論のために関連付けるべきかを尋ねています。または、私のクセテーションが不適切であり、人間と複雑さのクラスを比較することが意味をなさない場合、なぜこれが当てはまるのでしょうか? ありがとう。 更新:タイトル以外のすべてを上に残しましたが、ここで私が本当に尋ねることを意図した質問があります:どの複雑さのクラスは人間の心が迅速に達成できることに関連していますか?「多項式時間」とは何ですか?明らかに、無限の時間とリソースが与えられた場合、人間はチューリングマシンをシミュレートできます。 答えはPHまたはPSPACEのどちらかだと思いますが、なぜそうなのかについて理性的で首尾一貫した議論を明確に述べることはできません。 注:私は主に、人間が近似できる、または「ほとんどの場合」できることに興味があります。明らかに、SATの難しいインスタンスを解決できる人はいません。心がおおよそのXソルバーであり、クラスCのXが完全な場合、それは重要です。

6
仕事を得る方法
このサイトは初めてです。mathoverflowでは、これはコミュニティWikiになりますが、ここで設定する方法はわかりません。研究用の質問ではありませんが、できればプロの理論的コンピューター科学者にとって興味深いものです。 私は理論的には2年生ですが、学界でのキャリアを目指すために今すべきことについて、コミュニティはどのようなアドバイスをしていたのでしょうか。私は「素晴らしい研究をする」べきだと知っています-はい、やってみます。:-)それほど明白でないアドバイスを探しています。社会的側面はどのくらい重要ですか?会議に行って、素晴らしい人を知っていますか?私の顧問/学校が有名でない場合、私は大きな不利になりますか?ブログは私のチャンスを助けてくれますか? ありがとう!

10
1つのスタック、2つのキュー
バックグラウンド 数年前、私が学部生だったとき、私たちは償却分析に関する宿題を与えられました。問題の1つを解決できませんでした。comp.theoryで尋ねましたが、満足のいく結果は得られませんでした。コースTAが彼が証明できないことを主張し、証拠を忘れたと言ったのを覚えています。 今日、私は問題を思い出した。私はまだ知りたいと思っていたので、ここにあります... 質問 2つのキューを使用してスタックを実装することは可能ですか?プッシュ とPOPの両方の操作が償却時間O(1)で実行されますか?はいの場合、どのように教えてもらえますか? 注意:私たちは実装したい場合は、状況は非常に簡単であるキューをして2つのスタック(対応する操作とENQUEUE&DEQUEUE)。違いを観察してください。 PS:上記の問題は宿題そのものではありません。宿題は下限を必要としませんでした。実装と実行時間分析だけです。

15
オープンアクセスジャーナル
インターネット(および常識)の出現により、オープンアクセスの研究に対する需要がますます高まっています。数人の研究者(私を含む)は、公開された査読済みの研究論文がペイウォールの背後にあることに不満を感じています。私は、すべての受け入れられた出版物をすべての人が自由に利用できるようにするジャーナルと会議(理論コンピューターサイエンス、グラフ理論、組み合わせ論、組み合わせ最適化に関連する)を探しています。 そのようないくつかの雑誌があるコンピューティングの理論、組み合わせ論の電子ジャーナル、コンピュータサイエンスの論理メソッド そのようなジャーナル(または会議)をもっと知っている場合は、回答にそれらを記載してください。 編集:David Eppsteinの答えで示唆されたように、もう1つの制約を追加しています。著者に法外な費用を請求しないジャーナル/会議のみを書いてください。

4
多項式時間硬さの結果を示すために使用できる問題
新しい問題のアルゴリズムを設計する際に、しばらくして多項式時間アルゴリズムを見つけられない場合、NP困難であることを証明しようとするかもしれません。成功すれば、なぜ多項式時間アルゴリズムが見つからなかったかを説明しました。P!= NPであることを私が確実に知っているわけではなく、これが現在の知識で行うことができる最高のものであるだけであり、実際、コンセンサスはP!= NPであるということです。 同様に、ある問題の多項式時間解を見つけたが、実行時間はです。多くの努力の後、私はこれを改善することで進歩を遂げません。したがって、代わりに、3SUM困難であることを証明しようとするかもしれません。これは通常、3SUMが実際にΘ (n 2)時間を必要とするという私の最高の信念のためではなく、満足のいく状況です。しかし、これは現在の最新技術であり、そして失敗しました。だから、私ができる最善のことは私のせいではありません。O (n2)O(n2)O(n^2)Θ (n2)Θ(n2)\Theta(n^2) このような場合、NPの問題に対するチューリングマシンの超線形下限はないため、実際の下限の代わりにできるのは硬度の結果です。 すべての多項式実行時間に使用できる問題の均一なセットはありますか?たとえば、ある問題のアルゴリズムがよりも優れている可能性が低いことを証明したい場合、Xがハードであると示してそのままにしておくことができるような問題Xがありますか?O (n7)O(n7)O(n^7) 更新:この質問は、もともと問題の家族を尋ねました。問題のファミリーはそれほど多くなく、この質問には個々の難しい問題の優れた例がすでに寄せられているので、多項式時間の硬さの結果に使用できる問題の質問を緩和しています。また、より多くの回答を促すために、この質問に報奨金を追加しています。

13
TCSのフロンティアに関する未解決の問題
スレッドでは、理論的なコンピューターサイエンスの主要な未解決の問題は?、Iddo Tzameretは次の素晴らしいコメントを述べました。 ような基本的な問題と見なされる主要な未解決の問題と、解決されると技術的なブレークスルーを構成するが、必ずしも基本的なものではない主要な未解決の問題、たとえば指数下限回路(つまり、AC ^ 0 + \ mod 6ゲート)。したがって、「TCSのフロンティアにおける未解決の問題」などと題された新しいコミュニティwikiを開く必要があります。P≠NPP≠NP P\neq NP AC0(6)AC0(6) AC^0(6) AC0+mod6AC0+mod6 AC^0+\mod 6 Iddoはスレッドを開始しなかったので、このスレッドを開始すると思いました。 多くの場合、フィールドの主要な未解決の問題は、関連する分野で働く研究者に知られていますが、現在の研究が行き詰まっている点は部外者には知られていません。引用された例は良い例です。部外者として、回路の複雑さの最大の問題の1つは、NPがスーパー多項式サイズの回路を必要とすることを示すことであることは明らかです。しかし、部外者は、私たちが立ち往生している現在のポイントがmod 6ゲートを備えたAC 0回路の指数関数的な下限を証明しようとしていることに気付かないかもしれません。(もちろん、私たちが行き詰まっている場所を説明する同様の難易度の他の回路の複雑さの問題があるかもしれません。これはユニークではありません。)別の例はn 1.801よりも良いSATの時間空間の下限を示すことです。 このスレッドはこのような例です。そのような問題を特徴付けることは難しいため、このような問題が持つ特性の例をいくつか挙げます。 多くの場合、フィールドの大きな未解決の問題ではありませんが、解決されれば大きなブレークスルーになります。 昨日問題が解決したと誰かがあなたに言った場合、信じられないほど難しいことではありません。 これらの問題には、基本的ではない数値や定数が含まれることもよくありますが、これはたまたま私たちが行き詰まっている場所にあるために発生します。 特定の分野の最前線での問題は、長年にわたって変わらない分野の最大の問題とは対照的に、時々変化し続けます。 多くの場合、これらの問題は未解決の最も簡単な問題です。たとえば、AC 1の指数下限もありませんが、 [6]がそのクラスに含まれているため、 [6]の下限を表示するのが形式的に簡単になり、したがって回路の複雑さの現在のフロンティア。AC0AC0AC^0AC0AC0AC^0 回答ごとに1つの例を投稿してください。標準のビッグリストおよびCW規則が適用されます。誰かが私が探している問題の種類を私よりもうまく説明できる場合は、この投稿を編集して適切な変更を行ってください。 編集:Kavehは、答えには、特定の問題がフロンティアにある理由に関する説明も含めることを提案しました。たとえば、なぜ我々はACに対する下限を探している0 [6]といないAC 0 [3]?答えは、AC 0に対して下限があるということです[3]。しかし、明らかな疑問は、AC 0でこれらの方法が失敗する理由です[6]。答えがこれを説明することができればそれは素晴らしいでしょう。

5
問題がPまたはBPPにある包括的な理由
最近、物理学者と話すとき、私は経験上、指数関数的な時間がかかるように思われる問題がPまたはBPPにあることが非自明である場合、通常、減少が起こる「包括的な理由」を特定できると主張しました。 ---そしてほとんどの場合、その理由は十数個以下の「通常の容疑者」のリストに属します(例:動的計画法、線形代数...)。しかし、それは私に考えさせられました:実際にそのような理由のまともなリストを書き留めることはできますか?これが最初の不完全な試みです。 (0)数学的特性。問題には、明白な「純粋に数学的な」特性があり、一度知られると、poly(n)の可能性のリストを徹底的に検索できることがすぐにわかります。 例:グラフの平面性。クラトフスキーの定理からO(n 6)アルゴリズムに従います。 (以下の「平面」が指摘するように、これは悪い例でした。平面性の組み合わせ特性を知っていても、多項式時間アルゴリズムを与えることはまだ非常に重要です。ですから、ここでより良い例を置き換えてみましょう。たとえば、「バイナリで記述された入力nが与えられ、n個の穴のある表面に埋め込まれた任意のマップに色を付けるために必要な色の数を計算します。」これが計算可能(または有限です!)しかし、答えを与える既知の公式があり、公式がわかれば、多項式時間で計算するのは簡単です。 P.) とにかく、これは特にありません、ほとんど私に興味状況の一種。 (1)動的プログラミング。 多くの場合、満たされる制約が線形またはその他の単純な順序で配置されるため、指数関数的な爆発なしに再帰的な解決を可能にする方法で問題を分割できます。「純粋な組み合わせ」。代数構造は必要ありません。おそらく、グラフの到達可能性(したがって2SAT)は特殊なケースです。 (2)マトロイド。 問題にはマトロイド構造があり、貪欲なアルゴリズムを機能させることができます。例:マッチング、最小スパニングツリー。 (3)線形代数。 問題は、線形システムの解法、行列式の計算、固有値の計算などに減らすことができます。間違いなく、Valiantのマッチゲート形式によって解決可能な問題を含む「奇跡的なキャンセル」を含むほとんどの問題も線形代数の傘に含まれます。 (4)凸面。 問題は、ある種の凸最適化として表現できます。半正定値計画法、線形計画法、ゼロサムゲームは一般的な(ますます)特殊なケースです。 (5)多項式IDテスト。 代数の基本定理が効率的なランダム化アルゴリズムにつながるように、問題を多項式の同一性のチェックに減らすことができます-場合によっては、素数性のように、証明可能な決定的アルゴリズムにさえなります。 (6)マルコフ連鎖モンテカルロ。 問題は、急速に混合する歩行の結果からのサンプリングに減らすことができます。(例:完全に一致するものをほぼ数えます。) (7)ユークリッドアルゴリズム。 GCD、継続分数... その他/正確に分類する方法が明確ではありません:安定結婚、多項式因子、順列群のメンバーシップ問題、数論および群論における他のさまざまな問題、低次元格子問題... 私の質問は、私が除外した最も重要なことは何ですか? 明確にするために: リストは完全なものではない可能性があることを理解しています:有限の数の理由を与えても、誰かがPにあるエキゾチックな問題を見つけることができますが、それらの理由はありません。その理由もありますが、私は、1つだけの問題で機能するアイデアよりも、PまたはBPPで一見無関係に見える多くの異なる問題を引き起こすアイデアに興味があります。 また、物事をどのように分割するかが主観的であることも認識しています。たとえば、マトロイドは動的プログラミングの特殊なケースにすぎないのでしょうか?深さ優先探索による可解性は、動的プログラミングとは別に、独自の理由として十分に重要ですか?また、見方によっては複数の理由で同じ問題がPに発生することがよくあります。たとえば、線形代数のために主固有値を見つけることはPですが、それは凸最適化問題でもあります。 要するに、私は「分類定理」を望んでいません-効率的なアルゴリズムについて現在知っていることを有用に反映するリストだけのためです。そして、私が最も興味を持っているのは、PまたはBPPに幅広い適用性を持つものを置くためのテクニックですが、上記のリストに収まらないテクニック、または私の自慢をうまくするための私の粗雑な最初の試みを改善するための他のアイデアです物理学者。

10
遺伝的アルゴリズムに関する証明可能な声明
遺伝的アルゴリズムは、理論の世界ではあまり注目されていませんが、かなりよく使用されているメタヒューリスティック手法です(メタヒューリスティックとは、アニーリング、勾配降下など、多くの問題に一般的に適用される手法を意味します)。実際、GAのような手法は、実際のユークリッドTSPに非常に効果的です。 一部のメタヒューリスティックは、理論的にはかなりよく研究されています。ローカル検索とアニーリングに関する研究があります。交互最適化(k-meansなど)がどのように機能するかについては、かなり良い感覚があります。しかし、私が知る限り、遺伝的アルゴリズムについて知っている有用なものは何もありません。 遺伝的アルゴリズムの振る舞いについて、形や形を問わず、強固なアルゴリズム/複雑性理論はありますか?スキーマ理論のようなことを聞​​いたことがありますが、特にアルゴリズム的ではないという領域の現在の理解に基づいて、議論からそれを除外します(しかし、ここで間違えられるかもしれません)。


16
論文を書くためにどのツールを使用しますか?
論文を書くためにどのツールを使用しますか? 私が経験した小さな経験から、理論家は実際に創造的であることに加えて、論文の執筆と精製に多くの時間を費やしています。つまり、自分の仕事を他の人に伝えることです。論文はそうする正しい方法ではないかもしれませんが、それは別の議論のために残されるべきです。いずれにせよ、可能な限り優れたソフトウェアツールを使用して、結果を書き出すのに費やす時間を削減したいと思われます。したがって、この質問は、そこに隠された宝物を見つけることを目的としています。 私たちのほとんどは、LaTeXといくつかのシステムを使用してペーパーリファレンスを整理していると思います。しかし、vim / emacsと非常に気の利いたライブラリもあり、私にとっては時間の節約になりました。そのため、論文を書くために使用する設定について知りたいと思いました。また、学習しようとしたがうまくいかなかったこともあるかもしれません。あまり知られていないかもしれないが、たとえば、グラフやオートコンプリート機能を描くための非常に特殊なソフトウェアであっても、物事をスピードアップすることがわかっているものに特に興味があります。 ドンクヌースがインタビューで彼の設定について語っています。「どのツールセットを使用していますか[...]」という質問を検索します。 更新:Sadeqは、ここで図を描画するためのツールについての議論を指摘しました。

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