帝冠諸邦の計算屋   作:小沼高希

20 / 50
書き始めるとインプットが必要な点ところがわかってくるがもう遅い。




0d020: 解説 2



 

上等な軽銀製の沸かし器は挽いた粉を入れれば手軽に二杯の珈琲を作ることができるということでノヴァーク博士がわざわざ統一都市同盟の業者から取り寄せたものである。

 

少年

軽銀はアルミニウムの別称ですね。

 

お姉さん

モデルはアルフォンソ・ビアレッティの「Moka Express」だよ、八角形のやつ。

 

穿孔紙帯(リュバン・パフォレ)について、どれだけのことを知っている?」

 

少年

ruban perforé、フランス語ですね。

 

お姉さん

パンチテープだね。史実ではフランスのバジル・ブション(Basile Bouchon)が織機に採用している。

 

少年

他にもこの手の穴を開けた紙はオルガンとかにも使われていたように思うんですが。

 

お姉さん

ちょっと調べた範囲だと楽器への使用はアンセルモ・ガヴィオリ(Anselmo Gavioli)、19世紀末ぐらいなんだよね。それ以前からさっきのバジル・ブションやジョゼフ・マリー・ジャカールが織機には利用している。

 

少年

ジャカード織機ってやつですね。

 

お姉さん

Jacquardの英語読みだ。

 

一般的には一行に五つか六つの孔が空いていて、それとは別に送り用の孔があるので全部で七列

 

お姉さん

このあたりはテレタイプで使われた紙テープの話を参考にしているね。

 

少年

五つの穴だと三十二文字しか表現できませんが、足りたんですか?

 

お姉さん

最初期のボド・コード(Baudot code)でも文字と記号の切り替えがあったらしいし、十分だったんじゃないかな。

 

そう言ってノヴァーク博士は立ち上がり、黒板に断続的な線を描いてから、線の下部に磁石を一つ置いた。

 

少年

チューリングマシンですよね?

 

お姉さん

ポスト゠チューリングマシンだね。エミール・ポストも同時期に独立してほとんど同じものを作っている。

 

少年

史実にあったものをそのまま使っている点について、作者から弁明はあるんですか?

 

お姉さん

等価の装置を色々考えたけど、自己と同種の機械を容易にエミュレーションできるものがなかったそうで。

 

ケレメンは郵便局にあるような電信用の複合装置を思い浮かべていた。

 

お姉さん

印刷電信機(テレタイプ)だね。

 

「ひとまず数字の表記には一進記数法(エゲシュ・サームレンツェル)を使いる」

 

少年

egyes számrendszer、ハンガリー語ですね。

 

お姉さん

直訳すると単一記数法ってところかな。

 

「……なるほど。では『機械は置かれている場所の文字のみを読み取り、書き換え、移動することができる』、そして『機械の動作は置かれている場所の文字と、その内部状態のみに依存しなくてはならない』としよう」

 

少年

アラン・チューリングの「On computable numbers, with an application to the Entscheidungsproblem」で見たことあるような話ですね。

 

お姉さん

そうだね。

 

それと機械の状態が終止符(ポント)になったら作業は終了する

 

少年

pont、ハンガリー語でピリオドとかフルストップのことですね。

 

お姉さん

ラテン語由来なので英語のpointと語源は同じだよ。

 



 

手番81 停止

____:11111:11111:____

*

.

 

お姉さん

作者は手作業で頑張ってたよ。

 

少年

適当なコード書いて自動化すればいいのに……。

 

「 $2 x^2 + 5x + 6$ だ。$x$ は移動させたい数とする」

 

少年

計算量の話だ。

 

お姉さん

ちなみに計算機科学にランダウの記号を持ち込んだのはドナルド・クヌースらしいよ。

 

課題で出された計算のために古本屋で買った対数表を手に作業をしていたのをケレメンは思い出した。

 

少年

対数表が現役の時代ですか。

 

お姉さん

掛け算はどうしても手間がかかるからね、変換が効くなら和でやったほうが計算量は少なくなるんだよ。

 

「その通り。逆に、もし手数が指数的に増える問題があったとすれば、それはおそらくどんな高速な機械であってもあまり大きな数を扱うことができなくなってしまうだろう」

 

少年

組み合わせ爆発ですね。

 

お姉さん

ちなみにこの説明は不十分で、問題をうまい具合に調整したり計算機械を特殊なものにすることで比較的求めやすくする手口が色々と開発されている。量子コンピューターで素因数分解をする時に使うShorのアルゴリズムとかは有名だね。

 

少年

このあたりの雰囲気は日本科学未来館が「フカシギの数え方」っていう特別展の関連でやってましたね。探せば動画もありますよ。

 

お姉さん

十二年前!?

 



 

「初期状態が悪いと思いました」

 

お姉さん

マービン・ミンスキーの「Computation: Finite and Infinite Machines」だと初期状態がこうなっていたね。

 

..00A11B111A00000000..

*

 

少年

テープの初期状態が0ですか。

 

お姉さん

そうだね。で、終了状態がこちら。

 

..00A00BXXXA11111100..

*

 

お姉さん

原著だと状態遷移表じゃなくてミーリ・マシンみたいな遷移図使ってるからわかりにくいかもしれないね。

 

少年

ところであの複雑な機械を作った理由は?

 

お姉さん

Xを一時的な記号として扱うようにして最終状態に残さないこと、終了時に記号を置くこと、区切り記号で状態遷移をさせるっていう手法を示すこと、色々あるかな。

 

少年

実際は?

 

お姉さん

深夜テンションじゃないかな。

 



 

「これがあれば、どんな紙帯(リュバン)式の機械であってもそれを模倣できるような『万能計算機械』が作れるのだよ」

 

少年

アラン・チューリングの「On computable numbers, with an application to the Entscheidungsproblem」ですね……。

 

お姉さん

うん。とはいえ実際の説明についてはマービン・ミンスキーを参考にしたがね。

 

参考までに、ノヴァーク博士の博士論文である「計算機械の等価性と限界」にはいくつかの誤りがあった。それらは決して本質的なものではなかったものの、仮に論文通りに計算器械を実装した場合には想定しない動作をする点がいくつかあった。

 

お姉さん

これはアラン・チューリングの「On computable numbers, with an application to the Entscheidungsproblem」にパウル・ベルナイスがした指摘のあたりを参考にしているね。結構バグが多いらしい。

 

「……事実上、全ての数学分野は万能計算機械の計算対象であると言えるだろう」

 

少年

チャーチ゠チューリングの定立(テーゼ)ですか?

 

お姉さん

そう。ちなみに今の時点で反論がなく、広く受け入れられているってだけだから証明された定理ではないことには注意。

 



 

紙帯(リュバン)の本数を増やす。複数の機械を同時並行で動作させる。もちろんこういう機械は、もととなった計算機械以上に高速で、わかりやすい遷移表を持って表現できるだろう。ただ、それでもそれらが先程君が概略を作ったような万能計算機械によって再現できないわけではない」

 

お姉さん

解説は 丸岡章著. やさしい計算理論 : 有限オートマトンからチューリング機械まで. サイエンス社, 2017, (Information & Computing ; 117). ISBN 978-4-7819-1413-8. を参考にしたよ。

 

少年

非決定性チューリングマシンの話も本には出ていましたけどそれは省略されましたね。

 

「可能だ。これについてはちょっとした技が必要だがな」

 

お姉さん

全単射 $f \colon \mathbb{Z}^2 \to \mathbb{Z}^1$ の作り方だね。

 

少年

まーたわかりにくいこと言ってる。

 

「いくつかあるとも。私が作ったものでは予言者(ラートノク)と呼んだがね」

 

少年

látnok、ハンガリー語。直訳だと「見る人」ですね。

 

お姉さん

理論的モデルは神託機械(オラクルマシン)。アラン・チューリングが博士論文「Systems of Logic Based on Ordinals」で示したものだ。

 

少年

あれ、チューリングマシンの提唱ってこれより前ですか?

 

お姉さん

前だよ。チューリングマシンは1936年、博士論文が1938年。

 

少年

誕生日を考慮するとそれぞれ24歳と25歳ですか。一部の人に刺さりそうですね。

 

少なくとも、なにか便利な方法があるとは昔どこかで聞いた気はしていた。

 

少年

時代的にはまだマチンの公式が使われている頃でしょうか?

 

お姉さん

もしかしたらプディシェリあたり出身の謎の数学者がいるかもしれない、そうすると変な式が出るけど数十年厳密な証明が行われない可能性がある。

 

紙帯(リュバン)式機械が停止するかどうかは、紙帯(リュバン)式機械では解けない問題なのですか?」

 

少年

アラン・チューリングの「On computable numbers, with an application to the Entscheidungsproblem」ですけど、これ何回目でしたっけ。

 

お姉さん

あの論文凄すぎるんだよなぁ。

 

「前者は具体的に証明しろ、となると難しいな。専用の機械をきちんと設計する必要がある。後者はちょっとした集合論と量度(サーモシャーグ)と呼ばれる概念が必要だ。とはいえ、大まかな解説だけなら可能だろう」

 

少年

számosság、ハンガリー語。

 

お姉さん

日本語だと濃度って呼ばれるね。あまりいい訳だとは思わないけど。

 



 

「そう。そう思われていたのだが戦前に『無限論争』というものがあってね、異なる量度(サーモシャーグ)を持つ無限があるということで今の数学界では合意が取れている。哲学だの神学のほうではどうだか知らないがね」

 

少年

史実だとゲオルク・カントールの貢献ですね。

 

お姉さん

この後の対角線論法もそうだね。とはいえそれ以前からデデキント切断みたいな方法で実数と有理数の関係自体は模索されていたよ。

 

有理数だけだと間が生まれてしまう数直線を埋めるための作業みたいなものの結果生まれる、と言ってもいいだろう。

 

お姉さん

コーシー列のあたりだね。

 

こうしないとある範囲の連続関数に最大値と最小値を持つ、なんてことが言えなくなってしまう

 

少年

実数の連続性の話ですか?

 

お姉さん

そう。なので物理学で使う数学の体系は実数ベースでやると楽なのよ。

 

厳密にどうかはともかくとして、我々が物理学の言語である数式で世界を表現する時には実数という概念があることが望ましい。

 

少年

量子力学はもう生まれているんですか?

 

お姉さん

放射線物理学もあるし、量子論もできているだろうからまだだとしても時間の問題だろうね。とはいえノヴァーク博士は「量子力学の数学的基礎」を書く方向には進まない気がする。

 



 

「必要であれば複数の紙帯(リュバン)を使って、穴を開けるだけのものも作れると思うけど……」

 

お姉さん

エミール・ポストのタグシステムをテープにしたやつとかがモデル。このあたりの模型はいっぱいあるんだよね。

 

既にケレメンはいくつかの記憶回路と論理素子に相当するものを作っていたが、それだけでも数本の定電位線を要求する面倒な配線機構となっていた。

 

お姉さん

ENIAC関連の文書は裁判のおかげで色々と公開されていてね、Honeywell社対Sperry Rand社裁判(Honeywell, Inc. v. Sperry Rand Corp., et al.)で使われた「EXHIBITS OF AFFIDAVIT OF ARTHUR W. BURKS(アーサー・W・バークス宣誓供述書の証拠書類)」の(S16)によれば78種類の電圧を28種類の電源装置と抵抗分配器を使って用意していたというよ。ちなみに彼はENIACの主任技師だ。

 

少年

直接参考にしたのは?

 

お姉さん

Thomas Haigh, Mark Priestley, Crispin Rope 著ほか. ENIAC : 現代計算技術のフロンティア. 共立出版, 2016. ISBN 978-4-320-12400-4. だよ。とはいえさっきの証拠書類もKnuthデジタルアーカイブプロジェクトの「U2749 Box: History 2」から引っ張ってきたよ。

 

少年

さっき出てきた名前ですね、Knuthって。

 

お姉さん

$\TeX$ を作った人だよ。他にも色々やってるけど人類への貢献で言ったらこれが一番大きい気がする。

 

「例えば人民主義国のほうではシェーンフィンケル教授が組合せ論理(コンビナトリクシュ ・ ロギカ)の方面で似たことをしている。『狐雁模型』を使っている人もいたな」

 

少年

シェーンフィンケルの話は前にしましたよね。コンビネータ論理を作った人でしたっけ。

 

お姉さん

そう。狐雁模型の方はタグシステムがモデル。tagっていうのはアメリカで言う鬼ごっこだね。これとFox and Gooseって言い回しを組み合わせてる。

 

少年

普通は複数形のGeeseですけどね。

 

「基本的な作業命令はそう必要ない。そうだな、『ある記録に1を足せ』『ある記録から1を引け、ただしある記録が0であれば進む命令を変えよ』の二つができれば十分だ」

 

お姉さん

マービン・ミンスキーの「Computation: Finite and Infinite Machines」に載っているモデルだね、いわゆるカウンターマシン(counter machine)と呼ばれる種類のレジスタマシンだ。

 



 

「とはいえ証明は難しくない。この模型のもとになっているのは(サクレーニ)みたいな環境だと思ってほしい」

 

少年

これはレジスタですか?

 

お姉さん

そう。実際のところはスタックみたいな使い方してるけどね。

 

少年

英語のregister自体は名簿とか記録簿とか、そういう一覧になったリストみたいなものですか。

 

お姉さん

registrationが登記だからね。

 

「いえ、気にしないでください。戦時中は鉄道砲(アイゼンバーンゲシュッツ)の技師だったので、そのあたりの話はよく聞かされたんです」

 

少年

Eisenbahngeschütz、ドイツ語ですね。直訳でも「鉄-道-砲」です。

 

「で、これを使ってどういう魔法(マーギア)を見せてくれるんですか?」

 

「仕掛けのある手品(ビューヴィーセト)に過ぎないよ」

 

少年

mágiaとbűvészet、ハンガリー語。

 

1: -A →4

2: +B

3: →1

4: cseng

 

お姉さん

ニーモニックみたいな書き方だね。

 

少年

とはいえこの頃はまだ高級なプログラミング言語がないですから。

 



 

「一つ。ノヴァーク博士は(サクレーニ)模型を基本に組み立てています。中央の処理装置に入力、出力、そして記憶装置が繋がる形ですね」

 

お姉さん

プログラム内蔵方式だね。

 

少年

いわゆるフォン・ノイマン型アーキテクチャというやつですか。

 

お姉さん

その呼び方は色々と問題があるので避けたかったんだよ。とはいえかなり理論的思想のもとで生まれているから、ノヴァーク博士みたいな理論畑出身なら最初からここにたどり着いてもおかしくないかな……。

 

当時の電話の多くは脈のように断続的な信号を送ることで切り替え装置を物理的に操作するものだった。ただ、これをより静的に行うことができないかという研究は進められてはいた。

 

少年

自動電話交換機の話ですよね。

 

お姉さん

時代的にはステップ・バイ・ステップ交換機とクロスバースイッチの切り替えぐらいかな。

 

「かつて交換手が職を追いやられたように、我々も計算手を追いやるのか」

 

少年

交換手って、自動電話交換機の前に電話の配線をしていた人ですか。

 

お姉さん

英語だと計算手(computer)だけどハンガリー語だと一応わけられるからこの後の話は混乱しないで済む……はず……。

 

少年

とはいえ適切な単語かわからなかったので作者は載せなかったようですが。

 


 

お姉さん

いやぁ、今回は短く済んだ。

 

少年

それでも分量ありますけど。

 

お姉さん

この小説読んでからなら計算機科学のあたりは少しわかりやすくなるんじゃないかな……。

 

少年

次は実際の計算機械の設計の話ですね。

  1. 目次
  2. 小説情報
  3. 縦書き
  4. しおりを挟む
  5. お気に入り登録
  6. 評価
  7. 感想
  8. ここすき
  9. 誤字
  10. よみあげ
  11. 閲覧設定

▲ページの一番上に飛ぶ
X(Twitter)で読了報告
感想を書く ※感想一覧 ※ログインせずに感想を書き込みたい場合はこちら
内容
0文字 10~5000文字
感想を書き込む前に 感想を投稿する際のガイドライン に違反していないか確認して下さい。
※展開予想はネタ潰しになるだけですので、感想欄ではご遠慮ください。