空矩形

空矩形是同一数字的双节点 X 链,其中第二个强推论节点是一个宫的空矩形交集(ERI):宫内该数字的所有候选数都落在一条行和一条列上,因此两臂如同一个分组强链接起作用。在 strmckr 的链接分类中,签名是类型 0(双位)与类型 3(ERI)相连。

什么是空矩形?

将该结构写作 (A=B)-(C=D)。第一个节点是一行、一列或一宫中某数字的普通双位强链接(XOR)。第二个节点是 ERI:一个宫内该数字的所有候选数都位于单独一行与单独一列的交集中——由两臂组成的十字,角上的单元格也可能含该数字。十字的一臂与数对的 B 侧弱连接(NAND);另一臂是端点 D。ERI 是分组强推论——对宫候选数的析取——而非强制链推理,因此不能通过对单个候选数的开/关传播得到。

分步示例

下面的盘面已填好候选标记。跟随三个提示步骤,观察针对单个数字的空矩形(一个双位强链对与宫内呈行列十字分布的候选数相连)如何从远端臂所在的直线上移除该数字。

第 1 步

考虑 宫 5 中 1 的空矩形:区块内每个 1 候选数都在 行 6 或 列 6 上,形成一个空矩形十字 — 一个分组强推理节点 ERI。

展示空矩形分步示例第 1 步的数独盘面,高亮显示相关候选数与格子。

第 2 步

将链写为 (G1=G6)-(D6, E6 和 F6=F5 和 F6)。等号是强链接(XOR):G1 和 G6 是 列 7 中 1 的双位置对,而十字迫使 1 在 宫 5 内进入 行 6 或 列 6。 破折号是弱推论(NAND):G6 能看到 行 6 臂 D6, E6 和 F6,因此它们不能都包含 1。 如果 G1 为假,则 G6 为真,行 6 臂为空,1 必须占据 列 6 臂 F5 和 F6。因此 G1 或 列 6 臂持有 1,可能两者都是。

展示空矩形分步示例第 2 步的数独盘面,高亮显示相关候选数与格子。

第 3 步

这是类型1同数字消除:由于 G1 或 F5 和 F6 之一已被证明为 1,从 列 6 中区块外能看到 G1 的单元格移除 1。

空矩形推导后的数独盘面,高亮显示经证明的填数或候选消去。

带有第 3 类 ERI 链接的签名 (A=B)-(C=D) 提供了一条普通双位强链接、一条跨越宫内行列十字的成组强链接以及一条弱推论,从而证明 A OR D。这一关系证明了可以从同时看到两个端点的候选格中移除该数字。ERI 是成组强推论而非强制链——整个宫臂构成一个逻辑侧。您可以免费玩数独,在当前候选状态可见的情况下练习识别空矩形。

如何识别

选择一个数字并列出其在宫中的所有剩余出现。如果标记恰好在一行或恰好一列中,则不是有效的空矩形。当出现在该宫内跨越行和列时,写出行并集和列并集,并将正交对连接为强推理(XOR)。

逻辑

这个双节点X链 — (A=B)-(C=D) — 确立A或D。B-C之间的弱推理必须看到每个空矩形所代表的每个单元格。看到两个端点的任何候选数无论哪个端点为真都矛盾,可以移除。