表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
【言語解析者の無双転生 ―ソースコードに神秘などない―】  作者: 九十九 文


この作品ページにはなろうチアーズプログラム参加に伴う広告が設置されています。詳細はこちら

5/7

第五話「一斉デバッグ、あるいは壊れたシステムの再起動について」

────────────────────────────────


 朝の掲示板の前に、第七教室の面々が集まっていた。


 『第一学年・対抗戦演習 三週間後 クラス別総合実技』


 誰も、何も言えていなかった。

 見ているだけだった。


「……どうせ俺たちは一回戦負けだろ」

「引き立て役すら無理かもしれない。的になるだけだ」

「出場を辞退できないのか」


 ため息が重なる。

 三ヶ月間積み上げた諦めの質量は、一日や二日で消えるものではない。


 そこへセレーナが、人垣の中から口を開いた。


「……レオンなら、みんなの魔法も直せるかもしれない」


 沈黙。


「あいつは俺の詠唱も見てくれるのか」

「さすがに十二人は無理だろ」

「でも昨日、教官の魔法を一言で止めたんだろ。本当に?」


 声が重なり始めた。

 セレーナは掲示板を見たまま、もう一度言った。


「……頼んでみる」


 ────────────────────────────────


 俺は第七教室の最後列で、草稿の第5章に入っていた。


 扉が開いた。


「レオン」


 セレーナだ。後ろに気配が続いている。複数。


 俺は顔を上げなかった。


「第5章に入ったばかりだ」


「わかってる。でも、聞いてほしい」


 セレーナの声に、いつもより固いものがあった。

 俺は草稿にしおりを挟んで、顔を上げた。


 教室の入口に、第七教室の面々が全員立っていた。

 十一人。揃いも揃って、俺を見ていた。


「……クラス全員の詠唱を、見てほしいの」


 俺は少し考えた。


「十二人分のフルスタック解析はリソースを食う。一人当たり最低でも三十分。全員で六時間以上だ。俺には今、第5章がある」


「それでも」


「動機がない」


 セレーナが、一歩踏み出した。


「……あなたが一人で全部背負い込もうとするのが、見ていられないから」


 俺は答えなかった。


「わたしのバグを直してくれたとき、あなたは『知的好奇心』って言ってた。でも結局、あなたはクラス全員のことを昨日の草稿に書いてたでしょう。『全十二名の四層解析、実施する』って」


 ────俺は、いつ見られた。


 セレーナが続けた。


「あなたは最初から、やるつもりだったんじゃないの? ただ、誰かに頼まれる理由が必要だっただけで」


 後ろの十一人が、黙ってこちらを見ていた。

 値踏みするような目だった男が、今日は別の表情をしていた。

 怯えではなく——賭けに出る前の目だ。


 俺は草稿を閉じた。


「三週間で終わるかどうか、保証はしない」


「わかった」


「俺のやり方に文句を言うな。バグの指摘が正確でも、言い方が丁寧とは限らない」


「わかった」


「全員が全員、改善できるわけでもない。構造的に解析困難な詠唱もある」


「それも、わかった」


 俺は立ち上がった。


「訓練場に来い。全員分のベースライン計測から始める」


 ────────────────────────────────


 ◆ デバッグ開始


 ────────────────────────────────


 第三訓練場。

 的が三つしかない、狭い区画だ。


 俺はベンチに座り、草稿の代わりに空白のメモを広げた。

 全員を横一列に並ばせる。


「一人ずつ、今できる魔法を一回ずつ撃て。説明はいい。黙ってやれ」


 セレーナが隣に立った。


「何か翻訳が必要なら言って」


「翻訳?」


「あなたの言葉、たまに解読が必要だから」


 ……そういう役割を、自分で引き受けるつもりらしい。

 悪くない判断だ。


「わかった。任せる」


 ────────────────────────────────


 最初は十一人——セレーナを除く全員が、順番に魔法を撃った。


 俺の視界に、ログが流れ始めた。


 一人目が撃つたびに、ARの解析ウィンドウが開く。

 赤いエラーマーカーが、それぞれの詠唱の上に灯っていく。


 十一人分のエラーが、視界を埋め尽くした。

 赤。赤。赤。


 全員が、何かしらのバグを持っていた。


 当然だ。なぜなら——


 俺はメモに書いた。


```

第七教室・全員ベースライン計測結果:


 共通観察:

  全員に「バグ」が存在する。

  しかし「バグ」の性質が、一人ひとり異なる。

 

 重要な観察:

  ここにいる人間は、才能がないのではない。

  仕様が尖りすぎていて、標準的な教え方と合わなかっただけだ。

  

  標準的なカリキュラムは「平均的な音韻体系」を前提に設計されている。

  それと異なる発音傾向・思考パターン・魔力の流れ方を持つ者は、

  教科書の詠唱では「バグ持ち」に見える。

  

  しかし逆から見れば——

  その「ズレ」を正しい方向に向ければ、

  標準的な詠唱では届かない領域が出てくる可能性がある。

```


 俺はメモを閉じた。


「では始める。最初——ロール」


 ────────────────────────────────


 値踏みするような目をしていた男だ。

 名前はロール・ダグだと、昨日名乗っていた。


 彼が《ウィンドカット》を撃つ。


 風が——渦を巻いた。

 的に向かわず、ロール自身の足元で小さく回転して、そのまま消えた。

 三秒ほど、ひゅるひゅると情けない音が残った。


 ロールが舌打ちした。いつもの結果だ、という顔だった。


 ARログが流れた。


```

話者:ロール・ダグ


エラー検出:再帰構造の無限ループ

  

  問題箇所:「風よ、巡れ、巡れ、その翼で——」

  (「巡れ」が二回繰り返されている)

  

  魔導言語において同一動詞の連続反復は

  「力の循環命令」として解釈される。

  魔力が外部に出力されず、術者の体内で

  自己干渉ループを起こしている。

  → 出力は毎回20%以下で霧散。

  

  本質的な傾向:

   話者の詠唱リズムは「加速型」——

   後半に向けて音節速度が上がる。

   これは「詠唱の省略・高速化」の素質を示している。

   適切に調整すれば超高速詠唱が可能。

  

  修正方針:

   「巡れ」を一つ削除。接続詞「そして」を挿入して意味を保持。

   所要変更:1語削除、1語追加。

```


「ロール。『巡れ、巡れ』の二つ目を消せ。代わりに『そして』を入れる」


「……それだけか」


「それだけだ。あと、お前の詠唱はもともと後半が速い。直すな。そのまま伸ばす方向で最適化する」


 ロールが目を細めた。疑っているのが伝わった。


 もう一度、詠唱した。


「……風よ、巡れ、そして翼で大気を断て、《ウィンドカット》!」


 ────パアン。


 鋭い音がした。

 的が、縦に裂けていた。

 風圧で前列の数人が半歩よろめいた。


 ロールが、自分の手を見た。


「……これが、俺の魔法か」


「いや」俺は言った。「これが、本来の君の魔法だ。今まで自己干渉で殺していた」


 ────────────────────────────────


 次、エルナ。


 エルナが《スモールフレア》を撃った。

 炎が出た——出たが、的の手前二メートルで急に失速し、重力に負けてぼとりと地面に落ちた。

 小さくぱちぱちと燃えて、石畳に黒い染みを残しただけだった。


 エルナが唇を噛んだ。


```

話者:エルナ・ポス


エラー検出:バッファオーバーフロー

  

  問題箇所:子音 /s/(「炎の舌よ」の「舌」「炎」)

  

  話者の/s/の発音持続時間:平均280ms

  魔導言語の/s/の規定持続時間:140ms以下

  

  超過:140ms(約2倍の保持)

  

  結果:

   音素バッファが次の音素処理を待てず、

   前の音素の「残響データ」が後続の命令と衝突。

   → 魔力が発動の2/3で強制霧散。

  

  本質的な傾向:

   話者のs音の保持は「意図的に引き伸ばす」傾向ではなく、

   発声の「準備時間」として使われている——

   すなわち、次の音素の「先読み処理」をしている。

   これは複雑な複合詠唱を扱う適性を示す。

  

  修正方針:

   /s/の保持を140ms以下に切る。

   或いは——/s/を含む箇所を先行して別音素に置換する。

```


「エルナ。『炎の舌よ』の『舌』——発音するとき、sを伸ばすな。短く切れ。砂を吐くような感覚だ」


 エルナが小首を傾げた。セレーナが隣で「歯を噛み合わせるくらい短く、かな」と補足した。


 エルナが試す。

 詠唱が通った。

 小さな炎が、標的に綺麗な穴を開けた。


「……出た!」


 エルナが飛び上がりそうな顔をした。

 セレーナが小さく笑った。


 俺はメモを更新した。


 〔エルナ:先読み処理の傾向あり。複合詠唱の素質。後日検証〕


 ────────────────────────────────


 三人目、ジン。


 ジンが《ブレイズ・ランス》を撃った。

 炎の槍が形成されかけた——が、先端がぐにゃりと曲がり、まるで水に溶けるように形が崩れた。

 火なのに、ベチャッと地面に落ちて蒸発した。じゅっ、と湿った音を立てて。


 周囲が一瞬、困惑の沈黙に包まれた。

 火属性の魔法が、水に落としたように消えるのを、誰も見たことがなかったのだろう。


```

話者:ジン・ラハウ


エラー検出:変数名の衝突(名前空間の混在)

  

  問題箇所:

   詠唱全体に散在する音韻パターンの矛盾

  

  詳細:

   話者は火属性魔法ブレイズ・ランスを詠唱している。

   しかし詠唱の第二節「~穿て、深く、水の如く貫け~」に

   水属性の音韻パターン(母音の連続、流音の多用)が混入している。

  

  原因(推定):

   話者が幼少期に使用していた魔法入門書が

   水属性の詠唱形式を「力強さの表現」として推奨していたため、

   火属性詠唱の「硬い子音・乾いた母音」文化と衝突している。

  

  属性宣言と属性修飾の矛盾:

   火:[硬子音][乾燥母音][破裂音終止]

   水:[流音][連続母音][持続音終止]

   → 魔力の属性認識が毎回揺らぐ。出力が不安定。

  

  修正方針:

   「水の如く」を「岩を砕く如く」に置換。

   音韻的に火属性と一致させる。

```


「ジン。『水の如く』を『岩を砕く如く』に変えろ。意味は似ているが、使っている音が違う。今の詠唱は火と水が同じ家に住んでいる状態だ」


「……俺、ずっとそれで練習してきたんだが」


「入門書が悪かった。お前のせいじゃない」


 ジンが、少し黙った。


「……そういうことか」


 詠唱した。


 ────ドン。


 標的が、砕けた。

 粉砕だった。裂けるのではなく、圧縮されるように潰れた。


「……すごい威力だな、自分で言うのも何だが」


「ジンは火属性の密度が高い。出力が通れば上位に食い込める。ただ今まで属性が打ち消し合っていた」


 ジンが顎に手を当てた。


「三ヶ月、何だったんだ俺は」


「入門書に三ヶ月分の時間を取られた。請求するなら出版社に言え」


 セレーナが小さく吹き出した。


 ────────────────────────────────


 俺は残り八人も、同じように処理した。


 一人ひとりのエラーを解析し、最小の修正を施す。

 接続詞を一つ消す。音素の長さを変える。語順を一つ入れ替える。アクセントを修正する。


 七人目——マリスという名の、腕を組んで最後列に立っていた女子生徒が、ここまで一言も発していなかった。


 俺が「次」と呼ぶと、彼女は動かなかった。


「……どうせ同じだ」


 静かな声だった。諦めではなく、確信に近い響きだった。


「三ヶ月前から魔法を撃つたびに暴発している。原因はわかってる——わたしの詠唱は最初から壊れてるんだ。あなたが何を言っても」


「撃て」


 俺は遮った。


「聞きたくない。データが欲しい」


 マリスが、無表情のまま的に向いた。


「……《ストーン・バインド》」


 岩が浮いた。標的に向かって飛んだ——そして急に方向を変え、観覧席の石壁に激突した。轟音。石片が飛んだ。誰かが「うわっ」と声を上げた。


 マリスが目を閉じた。「ほら」とは言わなかった。それだけで全部伝わるという顔だった。


 俺の視界でログが流れた。


```

話者:マリス・ヴェン


エラー検出:照準座標の参照先エラー

  

  問題箇所:「縛れ」(動詞部)の指示詞の欠落

  

  詳細:

   「縛れ」という命令には本来、

   「何を」「どこで」縛るかの座標参照が必要。

   話者の詠唱にはその参照詞が存在しない。

   → 魔法は「目に見えた最後の動体」を

    自動的に標的と誤認識する。

   → 直前に動いたのが観覧席の石の欠片だった場合、

    そちらに向かう。

  

  根本原因:

   「縛れ」の前に「標的を」が存在しないのは

   話者の詠唱スタイルの問題ではなく、

   話者が使っている教科書の版の問題。

   旧版では省略可能だった参照詞が、

   魔導言語の文法改訂で必須化された。

   しかし旧版を使い続けている学生が多い。

  

  修正方針:

   「縛れ」の前に「標的を、」を挿入。

   変更:1語追加のみ。

```


「マリス。『縛れ』の前に『標的を、』を入れろ。それだけだ」


 マリスが目を開けた。


「……一語?」


「一語だ。旧版の教科書を使っているだろう。魔導言語の文法が改訂されて、参照詞が必須になった。誰も教えなかっただけだ」


 しばらく、沈黙があった。


「……それが原因だったの。ずっと」


「ずっと」


 マリスが、ゆっくりと的に向いた。


「……《標的を、ストーン・バインド》」


 岩が、まっすぐに飛んだ。

 的に直撃し、表面に均一なひびを刻んで止まった。

 岩縛りの魔法として、教科書通りの完璧な発動だった。


 マリスは的を見ていた。

 表情が変わらなかった。

 変わらなかったが——目の端が、かすかに赤くなった。


 セレーナが何か言おうとして、口を閉じた。

 正しい判断だ。今は何も言わない方がいい。


 ────────────────────────────────


 残り四人の処理を終えたとき、俺はベンチに座ったまま動けなかった。


 正確には——動く気力がなかった。


 十一人分の音韻解析を三時間で処理した。

 各人の詠唱をリアルタイムで音素レベルまで分解し、エラーの原因を特定し、最小変更の修正案を生成し続けた。

 前世でいえば、一日で論文三本分の集中解析を走らせた感覚に近い。


 俺は目を閉じた。


「……セレーナ」


「何?」


「購買に行ってくれ。甘いものを全部買ってこい」


 一瞬、間があった。


「……全部?」


「糖分が足りない。演算コストの回収が必要だ」


 セレーナが何か言いたそうな顔をした——が、何も言わずに立ち上がった。

 後ろでロールが「俺も行く」と言った。ジンが「俺も」と続いた。


 赤いエラーマーカーが、一つずつ緑に変わっていった。


 ARの視界が、徐々に明るくなった。


 ────────────────────────────────


 全員の計測が終わったとき、俺はメモを整理した。


```

第七教室・修正後ベンチマーク(暫定):


 修正完了:11名(セレーナ含む12名中)

 修正保留:1名(マルク・ガル:詠唱構造の再設計が必要、継続解析要)

 

 出力比較(修正前→修正後):

  ロール: 18% → 94% (+76pt)

  エルナ: 22% → 87% (+65pt)

  ジン:  11% → 103% (+92pt、基準超え)

  ……(以下、全員同様)

 

 クラス平均出力:

  修正前:29.4%

  修正後:91.2%

  

  改善率:+210%


 総評:

  「バグ」の内訳——

   音韻的不整合:4名

   統語的エラー:3名

   意味論的矛盾:2名

   リズム・アクセント問題:2名

  

  注目仕様:

   ロール:超高速詠唱の素質

   エルナ:複合詠唱の先読み処理

   ジン:高密度火属性出力

   ……

  

  このクラスに「才能がない」者はいなかった。

  全員が「標準的な教え方と合わない仕様」を持っていただけだ。

```


 俺はメモを閉じ、第七教室の黒板に向かった。


 ────────────────────────────────


 チョークを手に取り、書き始める。


 大きく、端から端まで使って。


 まず中央に「〈出力〉」と書いた。

 そこから放射状に線を引き、各生徒の名前と特性を書き込む。

 ロールの「高速型」。エルナの「先読み型」。ジンの「高密度型」。

 それぞれの特性が、互いをどう補い合えるかを矢印で繋いでいく。


 フローチャートが黒板を埋めていく。


 後ろで生徒たちが、声を漏らしていた。


「……俺たちの名前が、全員書いてある」

「これ、全部繋がってるのか?」

「俺の高速詠唱とエルナの先読みが、連携できるって意味か」


 俺はチョークを置いた。


「三週間で、このクラスを一つの高並列処理システムに書き換える」


 誰も笑わなかった。


「個別の出力は既に上がった。次は連携だ。全員の詠唱タイミングを統一し、干渉を防ぎ、それぞれの強みを他者の弱点に当てる。一人では届かない出力を、複数で叩き出す」


「対抗戦で、上位クラスに勝てるのか」


 ロールが聞いた。


 俺は少し考えた。


「わからない。やってみなければ」


「……正直だな」


「結果より先に答えを言うのは詐欺師のやることだ。ただ、今日の数字は見ただろう。三時間で平均出力が三倍になった。そのデータは本物だ」


 しばらく沈黙があった。


 ジンが、先に言った。


「……やってみる価値はあるな」


 一人が頷いた。また一人が頷いた。

 最後にロールが、短く言った。


「頼む」


 ────────────────────────────────


 俺はベンチに戻り、草稿を開いた。


 遠くから視線を感じた。

 演習場の出口に近い柱の影——グレイアス教官が、腕を組んで立っていた。

 こちらを見ていた。表情は読めなかった。


 もう少し離れた観覧席の隅に、別の人影があった。

 黒髪。金色の階級章。


 クレアが、メモを取っていた。


 セレーナが隣に座った。


「……うまくいったね」


「ベースラインが取れた。これからだ」


「そうじゃなくて」


 セレーナが、黒板のフローチャートを見た。


「みんなの名前が、あそこに書いてある。それが——なんか、よかった」


 俺は草稿に視線を戻した。


 よかった、か。


 その言葉の意味を、俺はうまく翻訳できなかった。

 ただ、記録しておく必要はあると思った。


 メモの最後に一行、書き加えた。


 「観察対象全員:バグ取り完了。次フェーズへ」


 ────────────────────────────────


 ──次話予告──

 連携訓練が始まって三日目。

 レオンが設計した「高並列詠唱システム」の試運転で、第七教室は初めて「一つの魔法」を全員で放つ。

 ──その出力を見て、クレアがメモ帳を持つ手を止めた。

 対抗戦まで、あと十八日。


────────────────────────────────

【後書き】


 第五話まで読んでいただき、ありがとうございます!


 今話のテーマは「バグ vs 仕様」でした。


 ソフトウェア開発でよく言われる話ですが、「バグ」と「仕様」の境界は曖昧です。ある文脈では欠陥に見えるものが、別の文脈では強みになります。ロールの「詠唱が加速する」クセは、標準的なカリキュラムではバグです。しかしレオンには「超高速詠唱の素質」に見えた。エルナの「s音を伸ばす」クセは処理遅延に見えますが、実は次の音素を先読みしている——つまり複合詠唱向きの処理系だった。


 「才能がない」と言われ続けた人間が、実は「合わないフレームワークに押し込められていただけ」だった、という構造は、現実でもよくある話だと思います。


 クラス平均出力210%向上という数字は、今後の対抗戦で効いてきます。ただし「数字が出た」だけでは勝てない——連携がなければ個別の強みは噛み合わない、という次の問題が待っています。


 次話は連携訓練回。ロールの高速詠唱とエルナの先読みが噛み合うと何が起きるか、お楽しみに。


 もし楽しんでいただけたなら——


 ★ 評価(「ジンへの請求書は出版社に送れ」で笑いました、でも嬉しいです)

 ♡ ブックマーク(更新通知が届きます)


 対抗戦まで続けます。よろしくお願いします!

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

↑ページトップへ