繁體中文

Platon Sudoku · 數獨學習

強制鏈 (Forcing Chain) · 分步講解

對候選真假或區域中所有位置作窮盡劃分,每個分支沿一條線性蘊含鏈推進。 執行每個有效分支共同得出的填數或排除。

本課程改編自 Platon Sudoku App 的教學內容。你可以在這裡讀完完整實例,再到應用程式中繼續學習和練習。

在 Google Play 查看

辨認模式

對候選真假或區域中所有位置作窮盡劃分,每個分支沿一條線性蘊含鏈推進。

如何尋找

選定完整的真假或區域位置分支,逐條追蹤到經過驗證的後果。

可以得出甚麼

執行每個有效分支共同得出的填數或排除。

別看錯了

只證明一條分支不夠;起始分支必須覆蓋所有可能。

分步講解 · 雙分支

本例從已儲存的中途盤面開始,候選數包含先前邏輯排除的結果,並非剛剛自動產生的筆記。

藍色:推理依據。綠色:結論。劃線數字:排除的候選數。R1C1 表示第1列第1欄。

步驟 1 · 觀察位置

要證明的共同結果是 R1C2=7,用於分叉的開關是 R1C2=5。任一候選只有成立和不成立兩種狀態,所以這兩個分支覆蓋全部可能;若兩邊都得到共同結果,該結果就必然成立。

要證明的共同結果是 R1C2=7,用於分叉的開關是 R1C2=5。任一候選只有成立和不成立兩種狀態,所以這兩個分支覆蓋全部可能;若兩邊都得到共同結果,該結果就必然成立。
要證明的共同結果是 R1C2=7,用於分叉的開關是 R1C2=5。任一候選只有成立和不成立兩種狀態,所以這兩個分支覆蓋全部可能;若兩邊都得到共同結果,該結果就必然成立。
步驟 2 · 推理過程

分支 1:假設 R1C2=5 成立。

分支 1:假設 R1C2=5 成立。
分支 1:假設 R1C2=5 成立。
步驟 3 · 推理過程

R1C2=5 已經成立,排除 R1C2=7。

R1C2=5 已經成立,排除 R1C2=7。
R1C2=5 已經成立,排除 R1C2=7。
步驟 4 · 撤回上一種矩形填法

撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。

撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。
撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。
步驟 5 · 推理過程

分支 2:假設 R1C2=5 不成立。

分支 2:假設 R1C2=5 不成立。
分支 2:假設 R1C2=5 不成立。
步驟 6 · 推理過程

R1C2=5 不成立。這兩端合起來包含第 1 行中的全部剩餘選項,因此 R1C5=5 被迫成立。

R1C2=5 不成立。這兩端合起來包含第 1 行中的全部剩餘選項,因此 R1C5=5 被迫成立。
R1C2=5 不成立。這兩端合起來包含第 1 行中的全部剩餘選項,因此 R1C5=5 被迫成立。
步驟 7 · 推理過程

R1C5=5 已經成立,排除第 5 列中的 R2C5=5。

R1C5=5 已經成立,排除第 5 列中的 R2C5=5。
R1C5=5 已經成立,排除第 5 列中的 R2C5=5。
步驟 8 · 推理過程

R2C5=5 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C8=5 被迫成立。

R2C5=5 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C8=5 被迫成立。
R2C5=5 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C8=5 被迫成立。
步驟 9 · 推理過程

R2C8=5 已經成立,排除 R2C8=9。

R2C8=5 已經成立,排除 R2C8=9。
R2C8=5 已經成立,排除 R2C8=9。
步驟 10 · 推理過程

R2C8=9 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C4=9 被迫成立。

R2C8=9 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C4=9 被迫成立。
R2C8=9 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C4=9 被迫成立。
步驟 11 · 推理過程

R2C4=9 已經成立,排除第 4 列中的 R1C4=9。

R2C4=9 已經成立,排除第 4 列中的 R1C4=9。
R2C4=9 已經成立,排除第 4 列中的 R1C4=9。
步驟 12 · 推理過程

R1C4=9 不成立。R1C4 現在只剩 R1C4=7,因此它必須成立。

R1C4=9 不成立。R1C4 現在只剩 R1C4=7,因此它必須成立。
R1C4=9 不成立。R1C4 現在只剩 R1C4=7,因此它必須成立。
步驟 13 · 推理過程

R1C4=7 已經成立,排除第 1 行中的 R1C2=7。

R1C4=7 已經成立,排除第 1 行中的 R1C2=7。
R1C4=7 已經成立,排除第 1 行中的 R1C2=7。
步驟 14 · 推理過程

所有可能分支都得到同一事實:R1C2=7 不成立。撤回全部假設後,這一事實仍然必然成立。

所有可能分支都得到同一事實:R1C2=7 不成立。撤回全部假設後,這一事實仍然必然成立。
所有可能分支都得到同一事實:R1C2=7 不成立。撤回全部假設後,這一事實仍然必然成立。
步驟 15 · 結論

已驗證的結論是 R1C2=7 不成立。所有臨時假設均已撤回。

已驗證的結論是 R1C2=7 不成立。所有臨時假設均已撤回。
已驗證的結論是 R1C2=7 不成立。所有臨時假設均已撤回。

可以得出甚麼

已驗證的結論是 R1C2=7 不成立。所有臨時假設均已撤回。

強制鏈 (Forcing Chain) · 執行每個有效分支共同得出的填數或排除。
強制鏈 (Forcing Chain) · 執行每個有效分支共同得出的填數或排除。

分步講解 · 多分支

本例從已儲存的中途盤面開始,候選數包含先前邏輯排除的結果,並非剛剛自動產生的筆記。

藍色:推理依據。綠色:結論。劃線數字:排除的候選數。R1C1 表示第1列第1欄。

步驟 1 · 觀察位置

根候選 R2C4=2, R2C4=3, R2C4=6, R2C4=7 窮盡了R2C4中的全部可能。分別沿每個根候選的線性蘊含鏈推進;若每條鏈都得到 R2C6=3,該結果就必然成立。根分支超過兩個本身並不會把它變成強制網。

根候選 R2C4=2, R2C4=3, R2C4=6, R2C4=7 窮盡了R2C4中的全部可能。分別沿每個根候選的線性蘊含鏈推進;若每條鏈都得到 R2C6=3,該結果就必然成立。根分支超過兩個本身並不會把它變成強制網。
根候選 R2C4=2, R2C4=3, R2C4=6, R2C4=7 窮盡了R2C4中的全部可能。分別沿每個根候選的線性蘊含鏈推進;若每條鏈都得到 R2C6=3,該結果就必然成立。根分支超過兩個本身並不會把它變成強制網。
步驟 2 · 推理過程

分支 1:假設 R2C4=2 成立。

分支 1:假設 R2C4=2 成立。
分支 1:假設 R2C4=2 成立。
步驟 3 · 推理過程

R2C4=2 已經成立,排除 R2C4=3。

R2C4=2 已經成立,排除 R2C4=3。
R2C4=2 已經成立,排除 R2C4=3。
步驟 4 · 推理過程

R2C4=3 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C6=3 被迫成立。

R2C4=3 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C6=3 被迫成立。
R2C4=3 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C6=3 被迫成立。
步驟 5 · 撤回上一種矩形填法

撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。

撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。
撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。
步驟 6 · 推理過程

分支 2:假設 R2C4=3 成立。

分支 2:假設 R2C4=3 成立。
分支 2:假設 R2C4=3 成立。
步驟 7 · 推理過程

R2C4=3 已經成立,排除 R2C4=6。

R2C4=3 已經成立,排除 R2C4=6。
R2C4=3 已經成立,排除 R2C4=6。
步驟 8 · 推理過程

R2C4=6 不成立。這兩端合起來包含第 2 宮中的全部剩餘選項,因此 R1C5=6 被迫成立。

R2C4=6 不成立。這兩端合起來包含第 2 宮中的全部剩餘選項,因此 R1C5=6 被迫成立。
R2C4=6 不成立。這兩端合起來包含第 2 宮中的全部剩餘選項,因此 R1C5=6 被迫成立。
步驟 9 · 推理過程

R1C5=6 已經成立,排除第 5 列中的 R4C5=6。

R1C5=6 已經成立,排除第 5 列中的 R4C5=6。
R1C5=6 已經成立,排除第 5 列中的 R4C5=6。
步驟 10 · 推理過程

R4C5=6 不成立。R4C5 現在只剩 R4C5=3,因此它必須成立。

R4C5=6 不成立。R4C5 現在只剩 R4C5=3,因此它必須成立。
R4C5=6 不成立。R4C5 現在只剩 R4C5=3,因此它必須成立。
步驟 11 · 推理過程

R4C5=3 已經成立,排除第 5 宮中的 R6C6=3。

R4C5=3 已經成立,排除第 5 宮中的 R6C6=3。
R4C5=3 已經成立,排除第 5 宮中的 R6C6=3。
步驟 12 · 推理過程

R6C6=3 不成立。這兩端合起來包含第 6 列中的全部剩餘選項,因此 R2C6=3 被迫成立。

R6C6=3 不成立。這兩端合起來包含第 6 列中的全部剩餘選項,因此 R2C6=3 被迫成立。
R6C6=3 不成立。這兩端合起來包含第 6 列中的全部剩餘選項,因此 R2C6=3 被迫成立。
步驟 13 · 撤回上一種矩形填法

撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。

撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。
撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。
步驟 14 · 推理過程

分支 3:假設 R2C4=6 成立。

分支 3:假設 R2C4=6 成立。
分支 3:假設 R2C4=6 成立。
步驟 15 · 推理過程

R2C4=6 已經成立,排除 R2C4=3。

R2C4=6 已經成立,排除 R2C4=3。
R2C4=6 已經成立,排除 R2C4=3。
步驟 16 · 推理過程

R2C4=3 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C6=3 被迫成立。

R2C4=3 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C6=3 被迫成立。
R2C4=3 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C6=3 被迫成立。
步驟 17 · 撤回上一種矩形填法

撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。

撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。
撤回這個假設和由它產生的結果。恢復原候選快照,再檢查下一種可能。
步驟 18 · 推理過程

分支 4:假設 R2C4=7 成立。

分支 4:假設 R2C4=7 成立。
分支 4:假設 R2C4=7 成立。
步驟 19 · 推理過程

R2C4=7 已經成立,排除 R2C4=3。

R2C4=7 已經成立,排除 R2C4=3。
R2C4=7 已經成立,排除 R2C4=3。
步驟 20 · 推理過程

R2C4=3 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C6=3 被迫成立。

R2C4=3 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C6=3 被迫成立。
R2C4=3 不成立。這兩端合起來包含第 2 行中的全部剩餘選項,因此 R2C6=3 被迫成立。
步驟 21 · 推理過程

所有可能分支都得到同一事實:R2C6=3 成立。撤回全部假設後,這一事實仍然必然成立。

所有可能分支都得到同一事實:R2C6=3 成立。撤回全部假設後,這一事實仍然必然成立。
所有可能分支都得到同一事實:R2C6=3 成立。撤回全部假設後,這一事實仍然必然成立。
步驟 22 · 結論

已驗證的結論是 R2C6=3 成立。所有臨時假設均已撤回。

已驗證的結論是 R2C6=3 成立。所有臨時假設均已撤回。
已驗證的結論是 R2C6=3 成立。所有臨時假設均已撤回。

可以得出甚麼

已驗證的結論是 R2C6=3 成立。所有臨時假設均已撤回。

強制鏈 (Forcing Chain) · 執行每個有效分支共同得出的填數或排除。
強制鏈 (Forcing Chain) · 執行每個有效分支共同得出的填數或排除。

練習

本課程改編自 Platon Sudoku App 的教學內容。你可以在這裡讀完完整實例,再到應用程式中繼續學習和練習。

在 Google Play 查看