ronk wrote:Jeff wrote:It shows 7 eliminations only ...
Bob Hanson wrote:r9c2 ISN'T 9: weak corner eliminated by both 2(b) and 2(B)--4(D)
........
r9c2 ISN'T 9: weak corner eliminated by both 4(D) and 4(d)--2(b)
r7c1 ISN'T 3: weak corner eliminated by both 4(D) and 4(d)--16(p)
........
r7c1 ISN'T 3: weak corner eliminated by both 16(p) and 16(P)--4(D)
I hadn't noticed the duplications. Apparently, some eliminations may be made by following any one of several chains. IMO it would nicer if the Medusa only logged one of them. [edit: A revisit of the site shows Bob has already done exactly that.]
I had thought that "only strong links" would produce the same result as the bilocation/bivalue techniques, but obviously weak links are required too. I haven't a clue why.
Right, the thing is, there are often several different ways a possibility
could be eliminated. So I thought it would be better to show them all
rather than to show just the first.
I'm pretty sure the bivalue/bilocation business takes into consideration
weak links. You can see from
r7c1 ISN'T 3: weak corner eliminated by both 4(D) and 4(d)--16(p)
that, for example, there must be a weak connection between one of the
4(d) chain nodes and a 16(P) node -- both in the same row, for example,
but not JUST the two of them. So a TRUE for 4(d) carries over to a FALSE
for 16(P) -- or a TRUE, then, for 16(p). Apparently r7c1#3 sees both a
4(D) and a 16(p) node.
The bivalue/bilocation idea does allow for "jumping" from one to another,
I'm sure, so that constitutes the weak link.
I've made the method description just a bit more explicit now:
Ms: 3D Medusa with only a SINGLE strong chain.
Mw: 3D Medusa taking into account multiple chains with weak links.
I'm certain the bivalue/bilocation considerations = Ms+Mw.
By the way, I was very happy to see that the almost-locked sets business
plugged in so nicely. Sudoku Assistant now can "connect the dots" and
reat an almost-locked set almost like a bivalue/bilocation pair.
- Code: Select all
bivalue chain "edge" transmits weak link
X*.....X-----Y.....Y*
:
:
Y*
X* TRUE forces Y TRUE, so all weak link Y* FALSE.
- Code: Select all
almost-locked set does the same
X*.....X--A--Y.....Y*
|
Z....Z*
X* TRUE forces Y and Z both TRUE, so all weak link Y* and Z* FALSE.
The cool thing is that if X* is part of a bivalue/bilocation pair,
and Y* or Z* is also, then we have a new weak link between
chains. THIS is what then allows for advancement of the solution.
I've put "a" in the method description means that we have some sort of
almost-locked set that plugs in this way. It gets picked up in the
strong chain analysis.
"A" in the method description means we have the equivalent of
a weak corner for a chain:
- Code: Select all
bivalue chain "edge" with weak corner, which can be eliminated
X-----X
. .
. .
X*
X-type almost-locked set with weak corner, which can be eliminated
X---A--X"
: |
X*..X'
or, possibly (and it turns out, pretty commonly):
- Code: Select all
mutually linked almost-locked sets
X...X
/ \
W--A B--Z...Z*
: \ /
W* Y...Y
I especially like this one. ANY additional links W*, Z* can be
eliminated. (Because one of X and one of Y MUST be false, so
all the others have to be TRUE!)
These are found earlier, as part of the subset elimination/grid check.