コンピュータサイエンス

author: 371tti


This article is incomplete and may be subject to changes.

英語では "Computer Science" と呼ばれ、計算機の理論、設計、開発、応用に関する体系学問。

計算とは何かを問い、情報をどのように表現し、処理し、意味へと変換できるかを探究する学問である。

それは単にコンピュータという機械を扱う技術ではない。 むしろ、計算可能性という抽象的な境界線を引き、 有限な資源の中で無限の可能性を引き出すための、 人類の思考を形式化する試みである。

tree

  • 計算機科学(Computer Science)
    • 理論計算機科学
      • 計算理論
      • オートマトン・形式言語
      • 計算量理論
    • アルゴリズムとデータ構造
    • プログラミング言語理論
      • 型理論
      • 意味論
      • コンパイラ理論
    • 形式手法
      • プログラム検証
      • 定理証明
    • 暗号理論
    • 計算可能性・論理

概要

コンピュータサイエンスは、アルゴリズム、データ構造、計算理論、プログラミング言語、計算機アーキテクチャ、オペレーティングシステム、ネットワーク、データベース、人工知能など、 多岐にわたる分野から構成される。

これらに共通する問いは一つしかない。

「それは計算できるか?」 「もし計算できるなら、どれほど効率よくできるか?」

この問いは、数学の厳密さと、工学の現実性、 そして哲学的な思索を同時に要求する。

理論/現実

計算理論は、理想化された世界で語られる。 無限のテープ、瞬時の演算、完全な論理。

一方、現実のコンピュータは、 有限のメモリ、遅延、エラー、ノイズに満ちている。

コンピュータサイエンスの美しさは、 この二つの世界を裏切らず、同時に満たそうとする点にある。

理論は限界を示し、 実装は妥協を強いられ、 最適化は人間の知恵によって編み上げられる。

また現実のコンピュータについては工学分野で計算機工学・情報工学として扱われることが多い。

貢献

コンピュータサイエンスは、現代社会の基盤を支える技術の多くを生み出してきた。 歴史的には第2次世界大戦中の暗号解読や、初期の電子計算機の開発に端を発する。 その後、インターネット、モバイルコンピューティング、クラウドサービス、人工知能など、数多くの革新的な技術がこの分野から生まれた。