A symbol does not own its meaning

盤が、あなたを
読み替える

Aliceはポーンで、女王のマスを目指す。けれど記号は意味を持たない。鏡は左右を、扉は前後を入れ替え、お茶は次の意図を一口で消す。「前へ」と打っても、盤はそれを斜めに曲げる。

interpreter 記号を、鏡の向こうへ。
あなたの命令
a
盤の答え
west
Rows 7 → 0 · Six Chapters

昇格に近づくほど、盤は言葉を書き換える。

Aliceが昇格に近づくほど、解釈の規則は増えていく。どの行にいるかによって、世界は別の「章」にページをめくり、同じ命令を違う意味で読み始める。

行 7–6Mirror Reversal*鏡を踏むと、以降の左右が入れ替わる。aは西ではなく東を指すようになる。
行 5–4Tea-Time DebtTお茶は時間を前借りする。次の命令は、実行される前に飲み込まれる。
行 3Door RotationD扉は反射ではなく回転。命令の解釈そのものが180度反転し、扉自身も対角へ場所を交換する。
行 2Humpty BindingHハンプティは、一度だけ記号の意味を書き換える権利を与えてくれる。bind x w。ただし章が変わると、本はその約束を忘れてしまう。
行 1Piece GrammarG昇格直前。ポーンの「前へ」が疑わしくなり、その意味が斜めへの跳躍へと滑っていく。
行 0Queen RewriteQ女王マスに到達した瞬間、ポーンは女王になり、命令系そのものが書き換わる。
solver.py

最短手を解釈された結果の上で探す。

チェスの合法手ではなく、盤が実際に返す状態遷移を幅優先でたどる。だから見つかるのは「正しいチェス」ではなく、本当に最短の命令列だ。ソルバーは規則を再実装しない。候補手はその都度、本物のエンジンの複製上で試され、その結果だけが次の探索先になる。

たった5つのアルファベット

探索の語彙は w a s d 🪞 だけ。矢印キーや♙は w/a/s/d に潰れ、bind はすでに出せる命令を改名するだけ。だから探索空間は有限なまま、最適性を失わない。

状態がすべてを決める

位置・ランク・鏡・扉の回転・お茶の借金・扉タイルの現在地 — 未来の命令の解釈を変えるものだけを鍵にする。ハンプティの束縛は追跡しないものとして扱い、状態から除外している。

最初に勝てば、それが最短

BFSは手数の浅い順に展開する。だから最初にポップされた勝ち状態が、証明つきの最短命令列になる。

solver.py

      
Three Doors

本を、自分でめくる。

同じ盤を、三つの違う窓から。実際に対局し、トレースを覗き、雰囲気を眺める。