- Code: Select all
`Original`

*-----------*

|.87|..9|23.|

|.9.|4.6|1..|

|..1|...|..5|

|---+---+---|

|...|6..|...|

|.5.|.8.|.2.|

|...|..1|...|

|---+---+---|

|5..|...|7..|

|..6|2.3|.1.|

|.42|7..|69.|

*-----------*

Reduced w/ Pencilmarks

*-----------------------------------------------------------*

| 46 8 7 | 15 15 9 | 2 3 46 |

| 2 9 5 | 4 3 6 | 1 78ab 78b |

| 34 36 1 | 8 7 2 | 9 46 5 |

|-------------------+-------------------+-------------------|

| 1379 123 348 | 6 249 45a | 348 57a 179 |

| 16 5 349 | 39 8 7 | 34 2 16 |

| 379 236 348 | 35 249 1 | 348 567 79 |

|-------------------+-------------------+-------------------|

| 5 13 39 | 19 6 48a | 7 48ab 2 |

| 89 7 6 | 2 49 3 | 5 1 48b |

| 18 4 2 | 7 15 58 | 6 9 3 |

*-----------------------------------------------------------*

[r2c8]-8-[r7c8] => [r7c8]<>8 (the easy part)

a) [r2c8]-7-[r4c8]-5-[r4c6]-4-[r7c6]-8-[r7c8] => [r7c8]<>8 (XY-Chain seems valid)

b) [r2c8]-7-[r2c9]-8-[r8c9] -4-[r7c8] => [r7c8]=8 (XY-Chain falls apart)

Since (a) and (b) can not both be true, then I'm left with [r2c8]<>7 -- which, indirectly, supports the XY-Chain. Any constructive suggestions -- besides not using XY-Chains? Is there a technique that I should have used on [r2c8] before trying the XY-Chain?

[Edit #1:] Aaack, I just realized that the (a) linkage <87><75><54><48> meets the definition of an XY-Chain and affected buddy cells, i.e. [r7c8]; whereas the (b) linkage <87><78><84> does not meet the definition of an XY-Chain. So much for trying to manually recreate my solver's logic.

[Edit #2:] However, my original suspicion that XY-Chains are non-deterministic still seems valid. If my solver had not followed path (a), then it might have followed path (b) and missed that an XY-Chain existed. To rectify this shortcoming, it seems to me that XY-Chains would need backtracking. This would definitely make it T&E.