Pat wrote:my chain ( either one of them ) is a single implication-stream and thus not a "forcing chain" -- so, what would you call it ?
There are a minimum of two implication streams associated with
every valid elimination. A chain, not to be confused with nets such as Sudoku Explainer's region forcing chains and cell forcing chains, has
exactly two implication streams.
Consider this r1c3<>1 elimination example.
- Code: Select all
13 8 34-1 | 5 6 2 | 9 7 34
2 359 *3459 | 37 79 1 |*348 6 348
36 369 7 | 4 8 39 | 2 5 1
----------------+----------------+---------------
4 36 368 | 2 1 5 | 7 9 68
9 2 *18 | 6 3 7 |*148 48 5
156 7 156 | 9 4 8 | 16 3 2
----------------+----------------+---------------
8 1 39 | 37 279 6 | 5 24 349
356 4 3569 | 1 259 39 | 368 28 7
7 3569 2 | 8 59 4 | 36 1 369
The nice loop (NL) expression is:
- Code: Select all
r1c3 -1- r5c3 =1= r5c7 =4= r2c7 -4- r2c3 =4= r1c3, implies r1c3<>1
A nice loop is meant to be read both left-to-right (L->R) and right-to-left (R->L); read L->R, you get one implication stream; read R->L, you get the second.
One can start anywhere in the loop, so let's start with r2c7. Ultimately either r2c7=4 or r2c7<>4:
- Code: Select all
L->R: r2c7=4 -> r2c3<>4 -> r1c3=4 -> r1c3<>1
R->L: r2c7<>4 -> r5c7=4 -> r5c7<>1 -> r5c3=1 -> r1c3<>1
In both cases, r1c3<>1. Therefore, r1c3<>1.
Now start with the left
end of the NL instead. Ultimately either r1c3=1 or r1c3<>1.
- Code: Select all
L->R: r1c3=1 -> r5c3<>1 -> r5c7=1 -> r5c7<>4 -> r2c7=4 -> r2c3<>4 -> r1c3=4 -> r1c3<>1
R->L: r1c3<>1
In both cases, as before, r1c3<>1. Therefore, r1c3<>1.
When the implication streams start at the elimination cell, i.e., the discontinuity of the nice loop, we simply don't bother to write the second implication stream ... but that doesn't mean the second one doesn't exist. From this POV, therefore, your "single implication chains" are forcing chains.