特任魔法研究生(2)
国立図書館……。魔法研究所のそばにある天井の高い
「私が認可を受けていない書物で興味を持ったのは、『コンピューター』と呼ばれる装置に関する記述です。遠い世界にあると記載されたコンピューターは0と1の二進法を用いて、あちらでは『ディジタル』、言い換えるなら離散数学の概念で動くと書かれています」
「こんぴゅーたー? 聞き慣れない言葉だな」
「向こうでは個人が所有する多目的用具を指すようです。形態によって様々な名称があるようですが、仕組みを
「なるほど……離散数学か」
ジョースタックがひとり頷いていた。「離散数学」とは、例えば整数で考えた場合、中間となる少数や分数は存在せず、1の次は2、2の次は3といったあらかじめ指定された値だけで考える学問である。魔法とは全く関係ないように聞こえる離散数学という言葉は、役に立つと認可された歴史書の1項目、影の王を封印した4名の異邦人が魔法を伝授する際に用いたとされている。
「魔法弾という外部から与えられた
「そふとうぇあ?? うーむ……」
反応は
――魔法の伝道師は、「影の王」を100年先の未来へ転送したあと次のように述べたという。
「今現在、我々やおまえたちの持っている技術では影の王を倒すことは
「魔法」については4つの特徴があると告げ、4名ひとりずつが説明した。
①魔法とは「魔法弾」を用いて体内の魔法力を外に放出することである
②魔法弾は「出力」の刻印で放出し、「入力」の刻印で吸収する
③魔法弾には火・氷・土・風の4つの属性を持たせることができる
④魔法弾自体を改良することはできない、拡張は離散数学に従う
かくして魔法伝道師たちが遺した情報に沿って魔法研究は始まった……。
「ソフトウェアを開発するために用いられる基本的な手続きには、『変数』と『配列』という概念が存在します。変数は数値ひとつ、配列は数値が集まって整列したものとして扱われているようです」
私は持ち替えた本を右手でつかむと、顔の横に掲げた。
「図書館にある文献で
手と本を下げて視線を魔法士たちの間で一周させる。
「魔法弾を変数と考えてください。この場合、配列は魔法弾を集めたひとかたまりに相当します。単純に『変数』として魔法弾を体外へ撃ち出した場合、ひとつひとつが単発で存在しているため関係を持たせることができません。従来の魔法弾放出の仕組みです。しかし、『配列』として考えれば魔法弾は一箇所に集まっています。右腕に蓄積して作り出した魔法弾の『配列』に対し、手のひらから外へ放出するという命令を一度に与えることができます。私は2日前の影の子討伐の折、右手から放出される魔法弾を左手の刻印で吸収し、右腕に『魔法弾の配列』を完成させ、巨大な炎の群れとして撃ち出しました」
魔法研究士たちはしばらくの間、黙考していた。コンピューターという単語が理解できなかったのもあるだろう。最初に口を開いたのは主任魔法研究士のエキストだった。
「何とも雲をつかむような話だ」
「しかし、実績を出したからには無下にすることもできないでしょう」
他の魔法士に口をはさまれたエキストは
「今回は偶然成功しただけだ。国の認可が下りていない書物は信頼が置けん。文献に認可印をつけて大別するようになったのは、過去に大きな事件があったからだ。まだレジスタ共和国が王国と呼ばれていたとき、現実に存在しないフィクションに
かつてレジスタ王国は、保管する膨大な文書の中から現実には存在しえない未来に関する記述に目をつけ、国家の発展を模索した時期があった……。
歴史に関しては現存するすべての文献が一致している。自然科学の分野において未来を記述した文献の中には多少なりとも現実とズレている内容もあったが、遠い世界で実用化したという地中の化石燃料を用いての「近代化」は魅力的の一言に尽きた。蒸気機関、内燃機関、石炭、石油……生活を農業と手工業に頼っていた貧しい暮らしを一変させる未知の技術と成果が記されていたのだ。
文献に載っているような鉄製の機械が自動で活動し、人間の手作業を代替し、天候や大地の法則さえ掌握する、そのような理想社会の到来を当時の王家や国民は心から願った。
ところが、技術革新の
「影の王」……以後100年にわたる人間の宿敵である。
「影の王」は人の目に触れるなり活動を開始した。地中から地表までたちまち上昇し、空へ浮き上がり、掘り起こした者たちに対して
書物において事物を正確に示していると証明できるものに限定して国家の認可を与え、他の文献と区別することであった。「役に立つ教科書」とは認可の印を与えられた学術書であり、認可を得られない文献は「役に立たない」として
エキスト主任魔法研究士は、「役に立たない」文献を頭から否定しているに違いない。彼に理解を求めるのは並大抵のことではないだろう。
ジョースタックは、エキストの立場を配慮したのか
「アキム君……国家の認可印がない書物について口にするのはできる限り慎みたまえ。皆、混乱してしまう。……と言っても、魔法のメカニズムについては結果がすべてだ。考え方が間違っているわけではない。今後は魔法研究所で用いられる語句のみで説明するよう努めて欲しい」
あご髭を撫でながら魔法研究士たちを一瞥した。
「彼は非常にユニークな観点で魔法研究に貢献してくれるだろう。しかるべき予算と時間を与え、他の魔法研究班同様に結果を待とうではないか」
反論する者はいなかった。
魔法暦88年10月12日、私は「
◇欄外◇【変数と配列】
C言語をはじめとしたプログラミング言語には「変数」というデータの入れ物があります。あらかじめプログラムに変数を用意し、実行時に渡された値によって処理の結果が変わります。大まかに言えば数学に登場する変数と同様です。
プログラミングで作ったソフトウェアには様々な機能があります。最も大きな機能は人間が休んでいても繰り返し実行してくれることでしょう。高速な演算能力を備えていれば、人間が瞬きしている間に、当人ができる計算を1千回、1万回の単位で終えてしまいます。
ただし、同じ対象に同じ処理をしても意味がありません。「配列」とは、変数が横一列に並んだ入れ物です。ひとつずつ場所をずらしながら、異なるデータに対して同じ処理をほどこすことができます。工場で部品がベルトに乗って次々と作業機械の場所まで流れてくる仕組みと同じです。
データが配列のように正しく並んで初めて、機械的な高速処理が可能になります。物語に登場する魔法弾も、一箇所に並んで初めて強大な力を持つようになります。
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます