fbpx

メニュー

2014年に読んで一番感心した本『白と黒のとびら: オートマトンと形式言語をめぐる冒険』

高橋文樹 高橋文樹

この投稿は 9年半 前に公開されました。いまではもう無効になった内容を含んでいるかもしれないことをご了承ください。

もう今年は本読まないのかというと、そんなことないのですが、たぶんこれだろうと思うのがあるので紹介します。

[429] [429] Client error: `POST https://webservices.amazon.co.jp/paapi5/getitems` resulted in a `429 Too Many Requests` response: {"__type":"com.amazon.paapi5#TooManyRequestsException","Errors":[{"Code":"TooManyRequests","Message":"The request was de (truncated...)

『白と黒のとびら: オートマトンと形式言語をめぐる冒険』は形式言語とオートマトンをファンタジーの筋立て(魔法使いとその弟子)で説明する本です。

形式言語(または単に「言語」)は計算機科学や言語学で用いられる概念で、いわゆる英語や日本語といった自然言語とは違い、「文字列からなる語の集合」を意味します。

オートマトンは元の意味で「自動人形」ですが、要するに外部からなにかを受け取ってなにかを外に出すようなものです。iPhoneもそうですし、エアコンもそうですね。こういう「状態を持つ入出力装置」をオートマトンと呼びます。図にするとこんなのになるらしいです。

言語理論とコンパイラより
言語理論とコンパイラより

……どうでしょう、この分野に詳しくない人は「だから何?」と思ったのではないでしょうか。

僕もはじめは『計算理論の基礎』という大学の計算機科学の学部生が読むような本を読んでいたんですが、どうもこの「形式言語とオートマトン」の説明がいまいちピンとこなかったのです。

[429] [429] Client error: `POST https://webservices.amazon.co.jp/paapi5/getitems` resulted in a `429 Too Many Requests` response: {"__type":"com.amazon.paapi5#TooManyRequestsException","Errors":[{"Code":"TooManyRequests","Message":"The request was de (truncated...)

そこで、その参考書として『白と黒のとびら: オートマトンと形式言語をめぐる冒険』を手に取ったのですね。この本は古代文明によって作られた迷宮を魔法使いの弟子が突破していくのですが、タイトル通り、「白い扉を開けたら次の部屋に進むけれど、黒い扉を開けると同じ部屋に入ってしまう」というような感じで、オートマトンの構造になっているんですね。

この迷宮によって有限オートマトンとか、線形拘束オートマトンとか、そういうのが学べます。魔法もですね、この形式言語のルールに則った上で効果が出るような設定になっているんですよ。

なにはともあれ、学問における難解な概念を学ばせる安易な方法として、ここ数年は「萌える〇〇!」みたいなのが多かったですが、この本は同じ志向を持ちつつ、ある程度の実直さを失わないでいるのがよかったですね。

このシリーズであったらいいな、と僕が思ったのは……対数(ログ)ですかね。なんでそんなことをするのか、パッとわからないんですよね。あれ。

すべての投稿を見る

高橋文樹ニュースレター

高橋文樹が最近の活動報告、サイトでパブリックにできない情報などをお伝えするメーリングリストです。 滅多に送りませんので、ぜひご登録お願いいたします。 お得なダウンロードコンテンツなども計画中です。