言語ゲーム

とあるエンジニアが嘘ばかり書く日記

Twitter: @propella

Logic Machines and Diagrams isbn:0226282449 8章

前の方は技術的な話で詰まってしまったので、簡単な後ろの章を先に読む事にした。8章は電気式の論理機械について。私が購入した 1982 年の版では大幅に書き換えられているが、最初に出版された 1958 年の版では、著者がコンピュータを論理演算に使うのは非現実的だと書いてあったらしい。そっちを買えば良かったと後悔している。9 章は後になって書き加えられた人工知能の話題。

論理機械の歴史で最も重要なのが 1937 年のシャノンによるブール代数と電気回路の対応だ。それ以前からでも集合論を元にした論理機械自体はかなり作られていたが、シャノンの発見によって一挙に電気式論理機械が花開く。しかし最も活発だったのは 1947 年から 1957 年までの僅かな時期で(この本の初版が書かれた時期)、それ以降はソフトウェアと人工知能の時代になる。しかしなによりシャノンの論文からまだ百年経っていないというのはなかなか戦慄させられる事実だ。

ブール代数で面白いのは、彼が採用した論理和(OR)の定義は今で言う排他的論理和(XOR)という点だ。実は私は以前から半加算器を始めに発明されたのは誰だろうと疑問を持っていたのだが http://q.hatena.ne.jp/1254161613 、ブールが XOR を使ったという事は、当然ながら最初から自然数の演算に似せてブール代数を作ったわけで、順番としては論理演算から半加算器が出来たのでは無く、半加算器 (XOR) から論理演算が出来たという事になるのでは!と思った。後でブールの本を読んで確認しないといけない。

8章に紹介されている興味深い論理機械の歴史をメモする。

  • 1936 Benjamin Burack "An Electrical Logic Machine" Science 17 June 1949 : 世界初の電気式論理機械
  • 1937 Claude E Shannon "A Symbolic Analysis of Relay and Switching Circuits" : 電気回路とブール代数の対応。
  • 1941 Akira Nakasima, Masao Hanzawa "Journal of Symbolic Logic Vol. 18" : 独立して電気回路でブール代数構成する事を思い付いたらしい。
  • 1952 Robert W. Marks による三項論理機械は、命題の否定が証明されると「私の名前はライプニッツ・ブール・ド・モルガン・クワインである。私は複雑で神経症なただのロボットであるが、ここに貴君の命題が完璧に偽である事を表明する事はこの上ない喜びである」とスピーカーから答えた。
  • 1960 年代 E.S.R. 社の玩具 "Think-a-Dot", "Dt.NIM" : 小さなボールを落とす事でコンピュータの動作をする。論理演算とはちょっと違う。
  • Martha O'Kennon "Boolean Cubes" : フリップフロップを埋込んだガラスの箱に上から玉を入れると論理演算をするらしい?

リンク