高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

プログラマの数学

――というわけで、読みました。

プログラマの数学

プログラマの数学


今回は課題の範囲である1章と2章のみ読了。それ以降は時間がなくて尻切れになりそうなのでやめました。また来週以降。
ではとりあえず感想。

第一章

第一章は位取り記数法のお話と0という数字のお話。0を用いることや、Nの0乗を1にすることによって、ルールをシンプルにする ということについて書かれていました。
個人的にここで「おおっ」と思ったことは特にないですが、「ルールをシンプルにする」という概念はどこででも重要ですね、配列の走査処理で用いる番兵法などが良い例じゃないでしょうか。
そういえば、Nの0乗を1と決めることで、数学を簡略化することについては、高校の数学の先生が話していたなあ。そうするとあの先生は結構深いことをいっていたことになるのか。

第二章

第二章は論理のお話、プログラムでおなじみのAnd, Or, Xor, Not, Equal(あえてVB風に先頭大文字w)のほか、含意(ならば)という演算子や、それをもれなく記録する真理値表の書き方、カルノー図という論理の筆算のような書き方の紹介、undefined(未定義)を含む論理式についてです。
個人的にもっとも感動したのは、いろいろな演算子を紹介したあとに記載されている、ほぼすべての演算子をつかった真理値表(49ページ)でしょうか。ネタは読んでない人のためにあえて伏せますが、結果が分かったときにはびっくりしました。CPUなどの動作の仕組みが少し分かったような気がします。
論理演算で有名なド・モルガンの法則についても出てました。こうやってみると、今なら良く意味が理解できる気がします。


そういえば、論理演算をひっくり返すやりかた(いわゆるド・モルガンの法則)も、高校の数学の先生が話してたなあ。法則の名前は口に出してなかったものの。結構こういう道にも詳しい人だったのかもしれない。当時はこの本も出る前でしたが、あの先生ならこの本読んでるかも。


とりあえず、ちょっと簡単ですが、こんなところです。軽くお花見して出発しようと思うので、いろいろやってますw