A weblog can be used to celebrate achievements or the write away frustrations. This post belongs to the latter category.
When I completed the ALS technique in SudoCue, I figured that there must be a counterpart, like hidden subsets are the counterpart for naked subsets. An ALS is defined as N cells having N+1 digits as candidates in a single house. Any digit that you can take away from the set will lock the remaining digits in these cells. It can act as a strong link in any chain, but the more basic application is a pairs of ALS’ with a shared digit, which is connected in such a way that it cannot appear in both sets at the same time. From here, we can eliminate any candidate that can see all instances of another digit in both sets. This sounds like a rate occasion, but ALS’ are abundant in any Sudoku.
So what about the counterpart?
Almost Locked Digits is the “hidden” counterpart. It has N digits confined to N+1 cells within a single house. The trigger mechanism is actually more flexible. Any move that would force one of the surplus candidates into any of the N+1 cells will lock the set. Now the easiest application would be a similar XZ rule. Find a conjugate pair with each end in an ALD. Either one of the ALD’s must be locked. Any shared peer for one of the digits can be eliminated. Simple, elegant, easy to implement.
Only, they do not exist. I tested this on numerous puzzles, even with ALS disabled, and although an average sudoku contains hundreds of ALD’s, they just won’t connect with an XZ rule. Pretty frustrating. I’m not even sure whether the code or the ALD logic has failed. The logic looks pretty solid and the code does find the ALD’s with the conjugate pairs that trigger them.
I’m going to run a couple of severe debug runs to check out the code, and if that doesn’t work, I’ll drop it in the trashcan.