上級
AIC入門:強リンクと弱リンクを交互につなぐと、何を消せる?
候補を点として読むAICのリンクグラフと、実線・破線の意味を学び、両端が見えるマスから候補を消します。
- 執筆
- DailySudoku編集チーム(Object)
- 公開日
- 2026-09-23
- 更新日
- 2026-09-23
マスではなく、候補を点として読みます
AICは、強リンク(strong link)と弱リンク(weak link)を交互につないだ鎖です。1つの点はマスそのものではなく、「r1c1が1である」といった候補の命題を表します。同じマスの1と4も、別々の点です。
強リンクは、2つの候補が同時に偽にはなれないという意味です。一方が偽なら、もう一方は真です。弱リンクは、2つの候補が同時に真にはなれないという意味です。一方が真なら、もう一方は偽です。強リンクだからといって、常に「一方が真なら、もう一方は偽」が定義になるわけではありません。この記事で使う、候補が2つだけのマスや行・列は、両方の性質を持っています。
使える条件 — 実線、破線、実線
- 1マスの候補の総数がちょうど2つなら、その2つの候補の間に強リンクを引けます。
- 同じ数字が入る場所が、1本の行・列、または1つの3×3ブロック内でちょうど2マスなら、その2つの候補の間にも強リンクがあります。
- 同じマスの異なる候補、または互いに見える2マスの同じ数字は、弱リンクで結ばれます。弱リンクは、入る場所が3か所以上でも成り立ちます。
- この記事の鎖は、強—弱—強—弱—強のように、強リンクで始まり、強リンクで終わります。両端が同じ数字なら、両端がともに見える別のマスからその数字を消します。
出発点が真なら、一方の端はすでに真です。出発点が偽なら、最初の強リンクで次の候補が真に、弱リンクで次の候補が偽になり、終点は真になります。したがって、両端が同時に偽になることはありません。途中のマスがすべて見えることではなく、両端がともに見えることが、候補を消す条件です。
例題 — 1をつなぐ6つの候補
図の候補の点をAからFまで読むと、次のグラフになります。**=は実線(強リンク)、—は破線(弱リンク)**です。
A r1c1(1) = B r1c1(4) — C r1c7(4) = D r4c7(4) — E r4c8(4) = F r4c8(1)
- A=B:r1c1の候補は、1, 4の2つだけです。
- B—C:同じ1行目の2つの4は、同時に真にはなれません。
- C=D:7列目で4が入る場所は、r1c7, r4c7の2か所だけです。
- D—E:同じ4行目の2つの4は、同時に真にはなれません。
- E=F:r4c8の候補は、1, 4の2つだけです。
両端のAとFのうち、少なくとも一方が1です。r1c8からは、Aが1行目を通して、Fが8列目を通して見えるので、1を消します。候補1, 4, 8, 9から4, 8, 9が残ります。r1c1を1だと確定したわけではありません。
使えない場合とよくある誤解
- 候補が3つのマスで、任意の2つを実線で結びます。 3つ目の候補が真なら、選んだ2つはどちらも偽かもしれません。
- 破線を強リンクのように逆向きに使います。 一方が偽という事実だけでは、もう一方が真だとはいえません。
- マスの数字が違っても、同じ行・列という理由で結びます。 行・列での弱リンクは、同じ数字どうしを結びます。
- 実線2本を続けて強リンクとして読みます。 この証明には、強・弱の役割の交代が必要です。両方の性質を持つリンクを、弱リンクの役割で使うことはできます。
- 両端の一方しか見えないマスから消します。 もう一方の端が真である場合を見落とします。
AIC全体には、両端の形が異なるものや、長い鎖もあります。ここでは、同じ数字の両端を使う入門的な形だけを扱います。このアプリの論理ソルバーは、リンク数の上限8の範囲で探すので、手順が見つからなくても、すべてのAICが存在しないという意味ではありません。
練習 — リンクの種類と、消せる候補を探します
**A r1c2(3), B r1c2(8), C r1c9(8), D r5c9(8), E r5c9(3), F r5c6(3)**を順につないでください。それぞれのリンクを、強・弱のどちらの役割で読めばよいでしょうか? r1c6からは何を消せますか?
答えを見る
強—弱—強—弱—強です。A=Bはr1c2の候補3, 8で、B—Cは1行目の8です。C=Dは、9列目で8が入る2マスです。D—Eは同じマスの異なる候補なので、同時に真にはなれません(このマスは候補が2つだけなので強リンクの性質もありますが、ここでは弱リンクの役割で使います)。E=Fは、5行目で3が入る2マスです。両端のAとFのうち少なくとも一方が3なので、Aが1行目を通して、Fが6列目を通して見えるr1c6から3を消します。候補1, 3, 8から1, 8が残ります。
続けて読む
前提知識は候補数字の書き方とナンプレに試行錯誤は必要?です。次に、ナンプレを学ぶを読んでみましょう。
例題の盤面は、外部のパズルを転用せず、sudoku-coreの生成器と論理ソルバーを使って見つけました。シード・難易度・対象テクニックが最初に現れる手順番号は、記事のメタデータに記録しています。テクニックの定義の参考:HoDoKu Chains and Loops。