Congratulations bat999, your chain uses a pattern that's caused considerable discussion in the past -- especially on notation.
An
Empty Rectangle Pattern occurs in a box for a single value. It is the basis for the
Empty Rectangle solving technique. The commonality in the names has caused considerable misunderstanding. Here are three examples of the Empty Rectangle
Pattern.
- Code: Select all
+-----------------------------------+
| 9 9 9 | . . . | . . . |
| / / / | . . . | . . . |
| / 9 / | . . . | . . . |
|-----------+-----------+-----------|
| . . . | 3 / 3 | . . . |
| . . . | / 3 / | . . . |
| . . . | / 3 / | . . . |
|-----------+-----------+-----------|
| . . . | . . . | 4 4 4 |
| . . . | . . . | / 4 / |
| . . . | . . . | / 4 / |
+-----------------------------------+
In [b5], I hope you don't have a problem with the notation 3r4c46 = 3r56c5. There is no overlap of the value in cell r4c5, and the value is partitioned into two disjoint sets of cells in the box.
In [b9], there is the complication that <4> exists in r7c8. In the past, the purists wrote 4r7c789 = 4r789c8 to indicate that r7c8 was present when you read from l-to-r and when you read from r-to-l. This distinction was only necessary to support bidirectional logic and when eliminations were considered for loops. Note: r7c8 is called the
Empty Rectangle Intersection cell (ERI). The candidate <4> would be eliminated in r7c8 if this pattern was present in an AIC
loop.
People like David P Bird convinced me that the Empty Rectangle Pattern was sufficiently represented in an AIC by two disjoint sets of cells for a value. This meant that <4> in [b9] could be represented by 4r7c789 = 4r89c8. The two disjoint sets concept works in l-to-r and r-to-l logic.
If the value is not in one set of cells, then the value must be in the other set of cells. Note: the four empty cells (/) give the Empty Rectangle Pattern its name. Other empty cells (/) for the value may also be present in the box. See [b1] and [b5].
Now, [b1] represents the cells for <9> in your grid. Using the two disjoint sets of cells approach, it's okay to say 9r13c2 = 9r1c13 and it be meaningful read l-to-r or r-to-l.
_