Haskell勉強会

関数型プログラミングの学習日記

イラストで学ぶ 離散数学

ラムダ計算などを学ぶために「計算モデルとプログラミング」という本を読んでいたら、集合や論理など数学の基礎知識が必要でした。

集合や論理は「離散数学」という分野の話だったので、離散数学の分かりやすい本を読んでみることにしました。

イラストで分かりやすく説明した本が「イラストで学ぶ 離散数学」です。

 

イラストで学ぶ 離散数学 (KS情報科学専門書)

イラストで学ぶ 離散数学 (KS情報科学専門書)

  • 作者:伊藤 大雄
  • 発売日: 2019/09/07
  • メディア: 単行本(ソフトカバー)
 

 

 

目次

第1章 離散数学の魅力――まず面白さを感じて下さい

 1.1 ピックの定理
 1.2 オイラー路とオイラー閉路
 1.3 ハミルトン路とハミルトン閉路
 1.4 ポーサのスープの問題
 1.5 鳩の巣原理
 1.6 エルドシュ・スズカーズの単調部分列の定理

 

第2章 集合――数学の大本

 2.1 集合とは何か
 2.2 ベン図と和集合,共通集合,部分集合など
 2.3 普遍集合とド・モルガンの法則
 2.4 有限集合と包除原理
 2.5 冪集合

 

第3章 論理――科学的思考の基礎

 3.1 命題論理
 3.2 述語論理

 

第4章 対応と写像――ここを押さえておかないと道に迷う

 4.1 集合の直積
 4.2 対応
 4.3 写像

 

第5章 関係――「恋人」も「ライバル」も「親の仇」もすべて「関係」だ

 5.1 関係の基本
 5.2 半順序
 5.3 ハッセ図
 5.4 厳密半順序
 5.5 同値関係

 

第6章 帰納法と関係の閉包――自然数といえば帰納法

 6.1 帰納法
 6.2 関係の閉包
 6.3 集合の対等性

 

第7章 順列と組合せ――この先には賞金 100 ドルの未解決問題が!

 7.1 順列と組合せ
 7.2 二項定理

 

第8章 グラフ――離散数学界のセンターポジション

 8.1 グラフとは何か
 8.2 グラフの用語
 8.3 さまざまなグラフ
 8.4 ピックの定理の証明
 8.5 オイラー路とオイラー閉路

 

第9章 無限集合――「対角線論法」を知らずして「面白い証明」を語るなかれ

 9.1 素数
 9.2 集合の濃度
 9.3 可算濃度
 9.4 実数集合Rの濃度と対角線論法
 9.5 複素数の濃度

 

著者紹介

伊藤大雄 いとうひろお 博士(工学)

 1985年 京都大学工学部数理工学科卒業
 1987年 京都大学大学院工学研究科数理工学専攻修士課程修了
 同 年 日本電信電話株式会社基礎研究所 入所
 1995年 京都大学博士(工学) 取得
 1996年 豊橋技術科学大学情報工学系 講師
 2001年 京都大学大学院情報学研究科 助教授~準教授
 2012年 電気通信大学大学院情報理工学研究科 教授

 

著書

 (共著)『ネットワーク設計理論(岩波講座「インターネット」5)』岩波書店(2001)
 (共編著)『離散数学のすすめ』現代数学社(2010)
 『パズル・ゲームで楽しむ数学』森北出版(2010)
 『データ構造とアルゴリズムコンピュータサイエンス教科書シリーズ2)』コロナ社(2017)

 

http://kjk.office.uec.ac.jp/Profiles/62/0006183/profile.html

kjk.office.uec.ac.jp

 

http://www.alg.cei.uec.ac.jp/itohiro/index-j.html

www.alg.cei.uec.ac.jp

 

出版社情報

正誤表など

https://www.kspub.co.jp/book/detail/5170014.html

www.kspub.co.jp

 

書評

離散数学とは?

ja.wikipedia.org

 

離散数学(りさんすうがく、英語:discrete mathematics)とは、原則として離散的な(言い換えると連続でない、とびとびの)対象をあつかう数学のことである。有限数学あるいは離散数理と呼ばれることもある。

グラフ理論、組み合わせ理論、最適化問題計算幾何学、プログラミング、アルゴリズムが絡む応用分野で、その領域を包括的・抽象的に表現する際に用いられることが多い。またもちろん離散数学には整数論が含まれるが、初等整数論を超えると解析学などとも関係し(解析的整数論)、離散数学の範疇を超える。

 

離散数学の中核を成す分野として次の2つが挙げられる。

 

他には、学校教育の中で教えられているものには行列,集合,順列・組合せ,論理と証明,帰納法と漸化式,数列などがある。

それ以外にも、経済や産業の分野で応用されているものにゲーム理論マルコフ連鎖、社会選択理論、投票理論、ビンパッキング問題、記号論などがある。

 

一口に離散数学といっても、その中に含まれる内容は多岐に渡っていますね。

「計算モデルとプログラミング」に出てくる数学の基礎知識は、本書の第2章から第6章までの内容を押さえておけばOKです。

 

 

haskell.hatenablog.com

 

他の章も面白そうなので、ついでに読んで理解しておきたいと思います。

パラパラっと眺めてみると、圏論の本を読んだときにも似たような知識が必要だったので、離散数学圏論を理解するための基礎知識にもなっていると思いました。

数学の理論体系は、焦らず順番に理解していけば、必ず理解できるように組み立てられているはずなので、本書で離散数学の基本(用語の意味など)を習得しておきたいです。

 

YouTube離散数学解説動画

イラストを多用しているので本書も分かりやすいですが、動画の説明もありました。

 

www.youtube.com

 

教育系のYouTuberが、分かりやすい動画を公開してくれています。

どうもありがとうございます。

 

プログラミングの理論で、集合や論理、写像などの知識が必要になった方は、本書や動画などで離散数学を学び直してみてはいかがでしょうか?