ghfick wrote:I tried your puzzle with each of these solvers. They each give essentially the same solution path.
Of course, because by default they all use the "simplest first" strategy, just like Denis' solver. For this puzzle in particular that strategy yields an unnecessarily long and complicated solve path. To get something different you have to disable simpler techniques, or in Hodoku's case use the 'Find all steps' function. Btw, SudokuWiki's hierarchy seems to be broken: XY-Chain is listed before WXYZ-Wing but gets executed after it; thus to see its one-stepper with the XY-Chain one has to switch off not only Y-Wing and XYZ-Wing but also WXYZ-Wing. To see my solution, you also have to turn off XY-Chain, Unique Rectangle, Hidden Unique Rectangle, and Aligned Pair Exclusion.
Did you try to solve this by hand? It's much easier than what the software solvers' long paths imply. It took me less than five minutes to find the two relatively simple single-step solutions I presented (and another variant I didn't list because it was a bit longer) using the most obvious coloring seed. I never even saw the Y-Wing, XYZ-Wing or the WXYZ-Wing because I didn't need them (and finding them would have actually been much harder). That's why blindly following software solvers' default advice is not a great idea for efficient manual solving. (On the other hand, efficiency shouldn't be a primary concern for beginners. Finding many different patterns in the same puzzle state is good practice, even if many of them are relatively useless.)
For me, learning the XY Chain was so valuable. It is definitely usable by humans and it is arguably 'easier' than many steps.
Yes, we know you love them. I almost never use them because nicer options are usually available. XY-Chains are usually long, tedious to read and write, and mostly actually less easy to find than other AIC-types (if you have a good technique to find any AICs).
Btw, in this case, the SudokuWiki's XY-Chain (9 strong links!) is one of the most inefficient chains I've seen in a long time. Most XY-Chains are inefficient anyway but this one is especially dumb:
- xychain.png (98.85 KiB) Viewed 1228 times
(2=4)r2c1 - (4=5)r4c1 - (5=4)r4c8 - (4=5)r9c8 - (5=4)r9c9 - (4=5)r6c9 - (5=7)r6c6 - (7=5)r3c6 - (5=2)r3c4 => -2 r2c4,r3c2
Notice that it takes a very unnecessary detour in box 9. Clipping that gives us:
(2=4)r2c1 - (4=5)r4c1 - (5=4)r4c8 - (4=5)r6c9 - (5=7)r6c6 - (7=5)r3c6 - (5=2)r3c4 => -2 r2c4,r3c2
That's still 7 strong links and 4 digits. We can further streamline it by mixing in bilocal links:
(2=4)r2c1 - (4=5)r4c1 - r4c8 = r6c9 - r6c6 = r3c6 - (5=2)r3c4 => -2 r2c4,r3c2
That's 5 strong links and 3 digits -- clearly simpler, except for the mixed link types (but that shouldn't be a problem for anyone who uses chains regularly). Easier to read too without so many unnecessarily flip-flopping digits. Yet it's still a bit longer than my chain that had four strong links.
compressed variants: Show Using the "3D" notation it can be written a bit shorter still (though the number of links remains the same):
(2=4)r2c1 - (4=5)r4c1 - b6p2=9 - r6=3c6 - (5=2)r3c4 => -2 r2c4,r3c2
With ALS-compression we can reduce it to three strong links:
(2=45)r24c1 - b6p2=9 - r6c6 = (52)r3c64 => -2 r2c4,r3c2
That's more than 60% shorter than the original XY-Chain in both characters and strong links.