- MITが提供するコンピュータ科学専攻者向けの数学教科書で、論理と証明から確率、漸化式、グラフ理論まで中核となる数学概念を体系的に扱う
- 証明、構造、カウント、確率、漸化式の5つのパートで構成され、各パートで理論的基礎とコンピュータ科学への応用をあわせて扱う
- 論理式、数学的帰納法、状態機械、グラフ、確率変数など、プログラミングとアルゴリズム解析に不可欠なテーマを含む
- RSA暗号、Turingのコード、モンティ・ホール問題など、実際の事例と応用問題を通じて数学概念の活用を示す
- MITとGoogleの研究者が共同執筆した教科書で、Creative Commons BY-SA 3.0 ライセンスで公開されており、学習と再利用が自由に行える
教科書概要
- Mathematics for Computer Science (MCS) はMITのコンピュータ科学・電気工学学部科目(6.042)の教科書で、論理的思考と数学的モデリング能力を養うための資料
- 著者は Eric Lehman (Google Inc.)、F. Thomson Leighton (MIT, Akamai Technologies)、Albert R. Meyer (MIT)
- 2018年6月6日の改訂版で、Creative Commons Attribution-ShareAlike 3.0 ライセンスの下で配布
I. Proofs (証明)
- 命題、述語、公理的方法、背理法、場合分けによる証明など、数学的証明の基本原理を扱う
- Well Ordering Principle(整列原理)と帰納法の関係を説明し、素因数分解のような例を通じて適用を示す
- 論理式と命題論理、SAT問題、**数学的データ型(集合、関数、関係)**などを含む
II. Structures (構造)
- 整数論、グラフ理論、ネットワーク構造を中心に、コンピュータ科学の数学的基盤を提示
- 素数、最大公約数、モジュラー算術、RSA暗号など数論の応用
- 有向グラフ、半順序、ネットワークルーティング、単純グラフ、平面グラフなど構造的モデルを説明
- TuringのコードとSAT問題との関連を扱い、計算理論と暗号学のつながりを示す
III. Counting (計算と組合せ)
- 和、積、漸近表記、組合せ規則、母関数など、組合せ論的な計算手法を扱う
- 鳩の巣原理、包含排除原理、ポーカーの手札の例など実践的な例を含む
- 母関数と線形漸化式の解法を通じて、アルゴリズム解析と数列計算に応用
IV. Probability (確率)
- 確率空間、条件付き確率、確率変数、分散、標本推定、ランダムウォークなど、確率理論の全範囲を網羅
- モンティ・ホール問題、Simpsonのパラドックス、誕生日問題など、直感的思考を試す事例を含む
- Markov、Chebyshevの定理とランダムサンプリングを通じて、データ分析の基礎を提供
V. Recurrences (漸化式)
- ハノイの塔、マージソート、分割統治の漸化式など、アルゴリズム解析の中核テーマを扱う
- 線形漸化式の解法と再帰的な思考方法を通じて、効率的な計算構造を説明
付録
- 参考文献、記号解説、索引を含み、学習と参照に便利
- 教科書全体はMIT CSAIL WebサイトでPDF形式にて無料提供
1件のコメント
Hacker Newsの意見
Thomson LeightonがAkamaiの創業者であることに触れつつ、彼の講義シリーズを推薦している
インターネット関連の講義の中でも最も印象に残ったコンテンツだった
各セクションの構成はかなり標準的だが、引用ごとにすべての出典への逆参照が付いている点が気に入った
こういう作りの本がもっと増えてほしい
ただし2018年以降は執筆が止まっているのが残念だ
この本が本当に好きだ。難易度は高いが、各段落で1〜2ページ分くらいは理解できた
関数が入力と出力の果てしないリストだという洞察を得られ、数学的記法に込められたユーモアも印象的だった
死ぬまでに完全に理解したい
コンピュータサイエンスで必読の本を5冊だけ選べるか、という問いを投げかけている
Brookshear、Forta、Stallings、CLRS、Kurose & Ross、Sipser、Aumasson、Russell & Norvigなどが含まれている
Pythonは事実上の共通語になっており、MatthesのPython Crash Course 3rd Editionも勧めている
時間がないときに読むべき中核の2冊も案内されている
この本の確率パートが特によかった
Monty Hall問題を「4段階の方法」で明快に説明しており、映画よりずっと理解しやすかった
紙の本で部分的に勉強するのに向いている
目次を見ると第2章がWell-Ordering Principleなのに驚いた
Zermeloの定理とは異なり、自然数の順序を前提にするやり方が新鮮だった
普通はPeanoの公理から順序を定義し、その後で原理を証明する形で学んだからだ
実数にも整列順序は存在するが、その順序を実際に表現することはできないという点が興味深い
「選択公理は明らかに真、整列原理は明らかに偽、Zornの補題は分からない」という冗談も引用している
15.8節の鳩の巣原理をDijkstraのアプローチで改めて説明している
ボストンの50万人が髪の毛を1〜20万本持っているなら、平均は2.5人なので少なくとも3人は同じ本数の髪を持つことを証明している
平均は最大値以下であるという単純な事実で解ける点が面白い
問題集形式の本を初めて見たが、解答があるのか気になると言っている
いくつか問題を解いてみたが、正解を確認できなかった
とても有用な資料だとして感謝を伝えている
Hacker Newsのおかげで探していたPDFを見つけられたと喜んでいる
PDFを読めるスクリーンリーダーのおすすめを求めている
自分も数式記号の大半は読めないと言っている