X-Wing 数独 - 上級者向け候補除外テクニックの決定版
X-Wing は、2 つの行 (または列) で特定の数字の候補が同じ 2 列 (または行) にのみ存在するとき、その 2 列 (行) の他のマスから同じ数字を除外できる上級テクニックである。Master 難易度の攻略に必要な論理を解説する。
X-Wing の論理構造
X-Wing は以下の条件で成立する。特定の数字 (例えば 4) について、行 A と行 B の両方で、4 の候補が列 X と列 Y の 2 箇所にのみ存在する。この場合、4 は行 A では列 X か列 Y のどちらかに入り、行 B でも列 X か列 Y のどちらかに入る。さらに、列の制約により、行 A で列 X に入れば行 B は列 Y に、行 A で列 Y に入れば行 B は列 X に入る。いずれの場合も、列 X と列 Y には既に 4 が配置されることが確定するため、列 X と列 Y の他のマス (行 A, B 以外) から 4 を候補として除外できる。
名前の由来と視覚的理解
X-Wing の名前は、4 つの候補マスを対角線で結ぶと X 字型になることに由来する。行 A-列 X、行 A-列 Y、行 B-列 X、行 B-列 Y の 4 マスが長方形を形成し、その対角線が X を描く。この 4 マスのうち、対角線上の 2 マスに数字が入る (どちらの対角線かは未確定)。視覚的にこのパターンを認識できるようになると、発見速度が大幅に向上する。
発見のための手順
X-Wing を系統的に探すには、(1) 特定の数字について、候補が 2 箇所だけの行を全て列挙する。(2) その中で、候補の列位置が一致する行のペアを探す。(3) ペアが見つかれば X-Wing が成立し、対応する列の他のマスから候補を除外する。列を基準にした X-Wing も同様に探せる (行と列を入れ替えるだけ)。候補が正確に管理されていることが前提であり、メモの更新漏れがあると X-Wing を見逃す。
Swordfish への拡張
フィンつき X-Wing
X-Wing でよくある誤りと検証法
X-Wing が現れやすい盤面の特徴
X-Wing と他の高度テクニックの位置づけ
X-Wing は、単一の数字に注目してマス間の関係から候補を消す魚 (Fish) 系テクニックの入り口に位置する。Swordfish や Jellyfish は X-Wing を行・列の数を増やして一般化したものであり、論理の骨格は完全に同じだ。一方、XY-Wing や W-Wing は複数の数字をまたいで連鎖させる別系統のテクニックで、こちらは候補が 2 つだけのマスのつながりを利用する。これらは難易度こそ上がるが、いずれも当て推量ではなく確定した論理に基づく。X-Wing をしっかり理解しておくと、より複雑な魚系・連鎖系テクニックへ進む際の足がかりになる。逆に言えば、X-Wing が見えないうちに上位テクニックへ手を出しても、土台がないため習得は難しい。論理を一段ずつ積み上げる順序を守ることが、遠回りに見えて最も確実な上達の道である。