理論的コンピューターサイエンスとは何ですか?


15

私は数学の大学院生であり、理論的なコンピューターサイエンスは、そのトピックについての良い読み物を見つけることができなかったため、それが何であるかを理解できなかった領域です。このドメインが実際に何であるか、どのようなトピックに関係しているのか、それに着手するためにどのような前提条件が必要なのかなどを知りたいのです。

理論的なコンピューターサイエンスの入門書とは何ですか?

そのようなことを考えると。そうでない場合、理論的なコンピューターサイエンスが何であるかを理解したい場合、コンピューターサイエンスに関する基本的な知識を持っている(つまり、1つまたは2つのプログラミング言語の基礎を知っている)数学者はどこから始めるべきですか?おすすめは何ですか?

ありがとう!


1
いい質問ですね。私は本当に途方に暮れています。理論的CSは非常に広範で多様であり、誰もが一箇所ですべてを調査しようとしたことはないだろう。SisserのDasgupta、Papadimitriou、Vaziraniによる「計算理論」や「アルゴリズム」などのイントロブックがあります。しかし、それらは学部の前提条件のようなものであり、現在のTCSが「実際に」何であるかについては
わかり

6
質問は広すぎます。次に、「数学とは何かをもっと知りたいのですが」と同様に尋ねることができます。したがって、複雑性理論、暗号化、近似など、数学に近いTCSのフィールドを調べる必要があります。たとえば、回路の複雑さは極値組み合わせ論の一部​​にすぎません。Sipserの本は実に素晴らしいです。TCSでの数学者の見解です(言うまでもなく、その一部です)。Sipser自身は実際には数学者です。
Stasys

2
Avi Wigdersonの今後のテキストは素晴らしいリソースです:math.ias.edu/avi/book
アンドラスサラモン

回答:


29

まず、「理論的なコンピューターサイエンス」とは、人によって異なることを意味します。このサイトのほとんどのユーザーにとって、歴史的な似顔絵(現代の社会学的な傾向を反映している)は、「理論A」と「理論B」(それらの間に暗黙の順序関係はない)があると思います:理論Aは、アルゴリズム、複雑性理論、暗号化など。理論Bは、プログラミング言語の理論、オートマトンの理論などのようなもので構成されています。数学の好みに応じて、どちらか一方を好む(または両方を同様に好む)場合があります。私は「理論A」に精通しているので、そこにいくつかの参考文献を挙げましょう。

  • Sipserの本から始めてください。これにより、オートマトン、チューリングマシン、計算可能性、コルモゴロフの複雑度、P対NP、およびその他のいくつかの複雑度クラスの概要がわかります。それは非常によく書かれています(私の意見では、これは史上最高の技術書の1つです)

  • アルゴリズムについては、クラインバーグタルドスを少し好みますが、そこには多くの優れた入門書があります。あなたは計算幾何学に特に興味があるかもしれません、それは素晴らしい本のセットを持っています。

  • あなたが数学の大学院生であることを考えると、これらの本から欠落しているTCSの主要な分岐は代数的複雑性理論であり、代数(可換および非可換の両方)、表現論、群論、代数幾何学と密接に関連していることが多い。ここには標準的なテキストがあります。これは、ブルギッサー・クローゼン・ショクロラヒです。それはやや百科事典なので、最良の紹介ではないかもしれませんが、この領域に本当に入門書あるかどうかはわかりません。また、Chen-Kayal-WigdersonとShiplka-Yehudayoffによる調査もご覧ください。

その後、数学的な好みに応じて、特定のトピックに関するより高度な本を閲覧することをお勧めします。

  • Arora-Barakは、より現代的な複雑性理論であり(いわばSipserの本が終わる場所で続きます)、関連する技術の風味を与えます(主に組み合わせ論と代数の混合)

  • ブール関数の複雑さに関するJuknaの本は似ていますが、特にブール回路の複雑さについてはより詳細です(フレーバーの非常に組み合わせ)

  • 幾何学的複雑性理論。こちらまたはランズバーグの幾何学の紹介をご覧ください。

  • オドネルの著書 『ブール関数の分析』には、よりフーリエ解析的な曲がりがあります。

  • 暗号化。ここでのより高度な数学的側面は、通常、数論と代数幾何学です。これらの純粋な数学的側面は暗号化のごく一部にすぎませんが、興味深いと思われる重要な側面です。私の地域ではないので、ここに良いスターティングブックがあるかどうかはわかりません。

  • コーディング理論。ここで、数学的理論は、球体パッキング(ConwayとSloaneの本を参照)から代数幾何学(Stichtenothの本など)にまで及びます。繰り返しますが、私の地域ではないので、これらが最良の出発点であるかどうかはわかりませんが、それらをめくるとすぐに味が得られ、より深く掘り下げたいかどうかを決定します。

そして、泡との関係、グラフ理論、C *-代数(ちょうどカディソン-シンガーの予想を指すようにしましょう)、不変理論、表現理論、求積法など、研究文献にのみ現れる他の多くの数学トピックがあります。どんどん。関連する質問もご覧ください


2
暗号の優れた開始書は、Katz-LindellによるModern Cryptographyの紹介:cs.umd.edu/~jkatz/imc.html-代替(古い)オプションはGoldreichによる暗号化の基礎:wisdom.weizmann.ac.ilです/~oded/foc-book.html
ダニエル

4

クリストファー・ムーアとステファン・メルテンスによる計算の性質。


この本が大好きです -私は答えの中で主にその長さのためにそれをお勧めしませんでしたが、もちろん読むべき章をいつでも選んで選ぶことができます。
ジョシュアグロチョフ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.