概念依存マップ

このページは、第1〜13章を目次順ではなく、どの概念がどの概念の前提になるかで俯瞰するための地図です。矢印 A → B は「Bを読むときにAを使う」を表します。すべての矢印を必修順序とみなすのではなく、読んでいて詰まったときに戻る上流概念として使ってください。

地図の読み方

区分 役割
Core 定義、証明、計算量、擬似コードを読むための共通基盤 第1〜5章
Standard 理論計算機科学で頻出する離散構造と計算モデルの入口 第6〜9章
Extended 情報理論、暗号、符号、並行計算へ分岐するための基盤 第10〜13章

以下のテキスト図では、複数の章を + で結んだ場合、その組み合わせが接続先の主要な前提であることを示します。この図と後続の章対応表だけで同じ依存関係を読めるため、MermaidやJavaScriptを実行できない環境でも情報は失われません。

Core
  第1章 集合と論理 ──→ 第2章 関数と関係 ──→ 第3章 証明技法
          └──────────────────────────────→ 第3章 証明技法
  第3章 証明技法 ──→ 第4章 漸近記法 ──→ 第5章 擬似コードと再帰
          └──────────────────────────────→ 第5章 擬似コードと再帰

Standard
  第2章 + 第5章 ───────────→ 第6章 グラフと木
  第1章 + 第3章 ───────────→ 第7章 組合せと数え上げ
  第4章 + 第5章 + 第6章 ──→ 第8章 データ構造と基本アルゴリズム
  第1章 + 第2章 + 第3章 + 第6章 ──→ 第9章 形式言語の入口

Extended
  第1章 + 第7章 ───────────→ 第10章 確率の基礎
  第1章 + 第2章 + 第3章 ──→ 第11章 数論・代数の基礎
  第2章 + 第11章 ──────────→ 第12章 線形代数の最小限
  第2章 + 第3章 + 第6章 + 第9章 ──→ 第13章 並行性と形式モデルの入口
  第12章 ──→ 第13章のPetriネットと接続行列

概念と章の対応表

「直接の前提」は、その章で詰まったときに最初に戻る候補です。「主な接続先」は、その概念が後続で再利用される代表例であり、すべての弱い関連を列挙したものではありません。

区分 主要概念 直接の前提 主な接続先
Core 第1章 集合と論理 集合、命題、含意、量化記号 なし 第2章、第3章、第7章、第9章、第10章、第11章
Core 第2章 関数と関係 関数、単射・全射、同値関係、半順序 第1章 第3章、第6章、第9章、第11章、第12章、第13章
Core 第3章 証明技法 直接証明、対偶、背理法、帰納法、不変条件 第1章、第2章 第4章、第5章、第7章、第9章、第11章、第13章
Core 第4章 漸近記法 OΩΘ、増加率、再帰式 第3章 第5章、第8章
Core 第5章 擬似コードと再帰 実行状態、反復、再帰、停止性、探索 第3章、第4章 第6章、第8章
Standard 第6章 グラフと木 グラフ、木、到達可能性、BFS/DFS、DAG 第2章、第5章 第8章、第9章、第13章
Standard 第7章 組合せと数え上げ 和・積の法則、順列、組合せ、鳩ノ巣原理、包除原理 第1章、第3章 第10章、状態数・候補数の見積もり
Standard 第8章 データ構造と基本アルゴリズム 配列、スタック、キュー、ハッシュ表、ヒープ、Union-Find 第4章、第5章、第6章 アルゴリズムの実装と計算量解析
Standard 第9章 形式言語の入口 文字列、言語、文法、DFA/NFA、非決定性 第1章、第2章、第3章、第6章 計算可能性、複雑性、第13章の形式モデル
Extended 第10章 確率の基礎 事象、条件付き確率、独立性、確率変数、期待値 第1章、第7章 ランダム化、情報理論、確率的解析
Extended 第11章 数論・代数の基礎 合同算術、逆元、群、巡回群、体 第1章、第2章、第3章 暗号、第12章の体上の線形代数
Extended 第12章 線形代数の最小限 ベクトル、行列、ランク、F_2、線形符号 第2章、第11章 符号理論、第13章のPetriネット
Extended 第13章 並行性と形式モデルの入口 状態遷移、非決定性、trace、safety/liveness、合意 第2章、第3章、第6章、第9章。Petriネットの行列表現では第12章 並行計算、分散計算、モデル検査

地図から選ぶ代表ルート

目的 依存をたどる順序 補足
証明とアルゴリズム解析を固める 第1章 → 第2章 → 第3章 → 第4章 → 第5章 グラフ探索へ進む場合は第6章、実装と計算量を接続する場合は第8章へ進む。
形式言語・計算モデルへ進む 第1章 → 第2章 → 第3章 → 第4章 → 第5章 → 第6章 → 第9章 第4〜6章は、擬似コードやグラフとして計算モデルを追うために使う。
情報理論・符号へ進む 第1章 → 第2章 → 第3章から、第7章 → 第10章と第11章 → 第12章へ分岐 確率側と線形代数側は独立に補強し、必要な本体章で合流する。
暗号へ進む 第1章 → 第2章 → 第3章 → 第11章 計算量は第4章、鍵空間は第7章、確率的議論は第10章を追加する。
並行計算・形式検証へ進む 第1章 → 第2章 → 第3章 → 第4章 → 第5章 → 第6章 → 第9章 → 第13章 Petriネットの行列表現まで扱う場合だけ第12章を加える。

診断結果、得点、学習目的から正式な学習順序を決める場合は、学習ルートを使ってください。

関連ページとの責務分担

知りたいこと 使うページ この概念依存マップとの違い
ある章を読む前に、どの上流概念へ戻るか このページ 概念間の依存とCore / Standard / Extendedを横断する接続を示す。
「証明を書けない」など、詰まり方から章を探す 概念別逆引き 症状を入口にし、確認する章と観点を選ぶ。
診断得点や学習目的から読む範囲を決める 学習ルート 読者ごとの学習計画、補助教材、完了条件を示す。
章を通常順に読み、前後の章や演習へ移動する 章間リンクマップ 第1章から第13章までの直列順序と演習導線を示す。
本体教科書の章から必要な前提章を探す 本体教科書からの逆引き 本体教科書側を入口に、先に確認する本教材の章を示す。
本教材の章が本体教科書のどこを補うか確認する 本体教科書との対応表 本教材側を入口に、本体教科書で主に使う箇所を示す。

使い方

  1. 読みたい章を「概念と章の対応表」で探す。
  2. 「直接の前提」を説明できなければ、リンク先の章へ戻る。
  3. 戻る章を症状から選びたい場合は、概念別逆引きを使う。
  4. 読む範囲が決まったら、学習ルートと章間リンクマップで順序と演習を決める。
  5. 本体教科書へ進むときは、本体教科書からの逆引きで必要範囲を再確認する。本教材側から対応先を確認したい場合は、本体教科書との対応表を使う。