第18話 眼の限界
朝、まだ涼しいうちに。
わたしはエマに「井戸の方へ行くついでに、お兄ちゃんの訓練も見てくる」と言って家を出た。
——村の自警団の朝の訓練を見たかったのだ。
◇◇◇
村の自警団と言っても大袈裟なものではない。
ヴァルジア王国の常備兵ではなく、村の若い男たち何人かが月に何度か村の入り口の広場で剣の素振りと簡単な戦闘魔法を練習する。
兄ヨハンが正式にハーラム町の自警団見習いに出るのは来春からで、いまは村の訓練を見学するだけが許されていた。
その朝の訓練に「ついていきたい」と言ったら、ヨハンは少し戸惑った顔をした。
「リナお前、剣の練習なんて見てもつまらないぞ」
「うん、けど見たい」
「……まあ、お母さんがいいなら」
エマは「あら、リナ、男の子の真似?」と笑って簡単に許可してくれた。
◇◇◇
広場には五人の男たちがいた。
二十代から三十代。
全員それなりに体格がいい。
村の中では「武に向いた者」とされている家系の人たち。
リーダー格は四十歳前後の男性。
村の元・冒険者で、今は引退してこの村で農業を営んでいると父から聞いたことがある。
「ヨハン、来たか」
「おはようございます、ガレンさん」
ガレンというのが、そのリーダーの名前だった。
「今日も見学か?」
「はい」
「妹も連れてきたのか」
ガレンがわたしの方を見た。
無遠慮な目だったけれど悪意のある目ではなかった。
「リナです。よろしくおねがいします」
わたしはぺこりと頭を下げた。
「ふん。元気な妹だな、ヨハン」
ガレンが軽くわたしの頭を撫でてくれた。
ごつごつとした農夫の手だった。
◇◇◇
訓練はまず素振りから始まった。
剣を構えて何百回も同じ動きを繰り返す。
わたしにはよく分からない世界だった。
リズム、姿勢、踏み込みのタイミング。
たぶんこれも何か「規則」のあるものだろうけれど、前世の経験ではうまく読み取れない領域だ。
それから組み手の練習。
ヨハンは見学組なのでここには加われない。
そして——
最後に戦闘魔法の練習があった。
「ヴェル、お前、最近サボってるな。一発撃ってみろ」
ガレンが若い男に声をかけた。
ヴェルと呼ばれた青年は二十代前半に見えた。
彼は前に進み出て、広場の端に置かれた木の的に向かって構えた。
腰に下げた小さな魔石を両手で握る。
そして長い詠唱を始めた。
「——アヴェ・イグナ——フラム・コンプレッシオ——プロイェクト・アド・タルゲット——」
(……長い)
ベシリアやアクシリアは一語の詠唱だった。
豊穣の祈りも複数の節があったけれど、まだ追える長さだった。
だけどヴェルが唱えているこれは——
(……何節、ある?)
頭の中で必死に追う。
模様が見え始めた。
ヴェルの手元と的の間の空間に、ぼんやりと巨大な何かが浮かび始めた。
(——え)
(——え、これ、)
(——大きい)
普段わたしが見てきた魔法陣は、せいぜい人の頭くらいの大きさだった。
だけどいま目の前で展開されているそれは——
(……家、一軒分はある)
構造の断片が視界の中でばらばらと増殖していく。
——あの形は見たことのない何か。
——どの型なのかも、見極められない。
——もっと複雑な、何か。
頭の中で、わたしは必死にその構造を追おうとする。
だけど——
(——追えない。情報量が多すぎる)
形が視界の中を流れる。
速すぎて頭の処理が追いつかない。
構造が入れ子になりすぎて、どれが本体でどれが補助か判別できない。
頭に残ったのは、こんな断片だけだった。
```?
( ?
(( ? ? ? )( ?
? → ? → ? → …
( ??? ……
……
```
どこが始まりで、どこが終わりかも分からない。系統すら、見分けられない。
——これが、いまのわたしの限界だった。
「——プロイェクト——」
ヴェルの最後の詠唱で模様が一気に圧縮された。
そして、
——どんっ。
木の的に火の玉が命中した。
小さな爆発音と共に、的の中心が焦げて煙を上げた。
「ふん。まあまあだな、ヴェル」
ガレンが肩をすくめながら頷いた。
ヴェルがふっと息を吐いた。
彼の額には汗が滲んでいた。
一発の魔法でこれだけの疲労を感じているのが、わたしにも分かった。
「リナ、お前、よく我慢して見てたな」
ヨハンがわたしの頭をぽんと撫でた。
「うん」
——わたしは頷いた。
頭の中ではまだ整理が追いつかなかった。
(……読めなかった)
(——ベシリアもアクシリアも豊穣の祈りも読めたのに)
(——あの攻撃魔法だけは、読めなかった)
——胸の奥が急に冷たくなった。
それは初めての感覚だった。
転生してから、わたしは前世の経験がどんな魔法でも通用すると、どこかで思い込んでいた。
他の人が気にも留めない構造を、わたしだけが読み解ける。
それは「魔力なき者」のわたしに残された、唯一の武器だった。
それなのに、
(——読み解けない魔法もある。たぶん世界にはその方がずっと多い)
——胸の奥がぎゅっとなった。
◇◇◇
訓練の帰り道、ヨハンが何かを察したようにわたしの顔を覗き込んだ。
「リナ、お前、また変な顔してるぞ」
「……うん」
「具合悪いか?」
「ううん。ちょっといろいろ考えてた」
「ふん。お前はいつも考えてるな」
——たぶんヨハンには何を考えているか伝わらない。
それでもヨハンはわたしの手を、自分のごつごつとした手でしっかりと握ってくれた。
朝の冷たい空気の中で、その手だけが温かかった。
(……まだわたしは無力だ)
(——「眼」だけじゃ足りない)
(——もっと修行しないと)
(——どうやって修行すればいい?)
頭の中で新しい問いがぐるぐる回り始めた。
家が見えてきた。
明日はグスタフ親方の工房だ。
新しい場所で、新しい魔法に出会う。
そして——
たぶん、またわたしには読めない魔法も出てくる。
それでも、
(——一歩ずつ、読める範囲を増やしていく)
(——前世のエンジニアもたぶん最初は皆そうだった)
そう、自分に言い聞かせた。
ヨハンの手の温もりが、まだわたしの手の中に残っていた。
■あとがき・解説
これまで「眼」を万能のように感じていたリナが、初めて自分の限界に触れる回でした。村の自警団の若者が放った攻撃魔法――その模様は、家一軒分の大きさと複雑さでリナの「眼」を完全に振り切ります。今回はその「読めなかった」という体験に潜む、技術者にとって馴染み深い概念をご紹介します。
■この話で出てきた言葉
■「計算量・複雑度」
プログラムやデータ構造の「ややこしさ」を表す言葉に「計算量」や「複雑度」というものがあります。第1話の後書きで紹介した「O(n²)」も、この計算量を表す目印の一つでした。
ざっくり言うと、処理が複雑になればなるほど、それを読み解いたり実行したりするのにかかる時間がぐんと増えるということです。簡単な計算なら一瞬で終わりますが、入れ子の入れ子の入れ子のような構造になっていくと、人間の頭はもちろん、コンピュータでさえ追いつけなくなることがあります。
ベシリア(着火)が一語の詠唱で済むのは、コードがとても短くて単純だからです。一方、攻撃魔法は「火を生み出す」「圧縮する」「特定の方向に飛ばす」「命中時に爆発させる」と複数の処理が組み合わさっています。模様の大きさが文字通り「家一軒分」に膨れ上がったのは、それだけ処理の段数が多いからでした。
■「情報量が多すぎて追えない」
エンジニアの世界でも、他人の書いた巨大なコードを読むときに「情報量が多すぎて目が滑る」現象が起きます。どれが本筋でどれが補助か、見ただけでは分からない。経験を積むと「読み方」が分かってきて、要点だけ拾えるようになります。
リナの「眼」もいま同じ壁にぶつかっています。文字として読み取れても、構造を理解する手前で振り切られてしまう。これは「眼」の性能の問題ではなく、読み手としての経験不足なのです。
■「読み解きにかかる時間」
人間もコンピュータも、複雑なものを理解するには時間がかかります。ヴェルの詠唱から発動までのほんの数秒では、リナの「眼」が全体を解析するには到底足りなかった。これは前世の世界で「リアルタイム解析」と呼ばれる難問とも通じます。
「眼」だけじゃ足りない、もっと修行しないと、と呟くリナ。
技術者にとっての「自分の限界を知る瞬間」は、たいてい胸が冷たくなるものです。だけどそれは同時に、次に何を学ぶべきかが見えた瞬間でもあります。ヨハンの温かい手が、リナの中に残ったのもきっとそのためです。
次の話もお楽しみに。




