Mike Barker wrote:Like I said constraint subsets are pretty weird.
Mike, great finds. It's helpful to consider unfinned exemplars first. For your first puzzle:
- Code: Select all
. . / | . . . | . . .
. . / | . . . | . . .
. . / | . . . | . . .
----------+----------+---------
* * X | * * * | . . .
* * X | * * * | . . .
X X / | X X X | / / /
----------+----------+---------
X X / | / / / | / / /
* * X | . . . | . . .
* * X | . . . | . . .
Fig 1A: rrc\bbb constraint sets
The candidates in set A (r6, r7 and c3) are covered by set B (b4, b5 and b6). Any other candidates in set B may be excluded.
(If any of the excluded candidates were true, no candidate would remain for row 7.) Add the fin at r7c6 and exclusions at r45c6 still occur (denoted by "**" below).
- Code: Select all
. . / | . . . | . . .
. . / | . . . | . . .
. . / | . . . | . . .
----------+----------+---------
* * X | * * ** | . . .
* * X | * * ** | . . .
X X / | X X X | / / /
----------+----------+---------
X X / | / / # | / / /
* * X | . . . | . . .
* * X | . . . | . . .
Fig 1B: rrc\bbb almost constraint sets
Key: X = candidate, which may be missing
/ = no candidate
# = extra candidate (fin cell)
* = potential exclusion whether fin exists or not
** = potential exclusion if fin exists
For the second puzzle:
- Code: Select all
. . . | * . . | * * .
. . . | * . . | * * .
/ / / | X / / | X X /
----------+----------+---------
/ / / | X / / | X X /
. . . | * . . | * * .
. . . | * . . | * * .
----------+----------+---------
. . . | * . . | X X /
. . . | * . . | X X /
. . . | * . . | X X /
Fig 2A: rrb\ccc constraint sets
The candidates in set A (r3, r4 and b9) are covered by set B (c4, c7 and c7). Any other candidates in set B may be excluded.
(If any of the excluded candidates were true, no candidate would remain for box 9.) Add the fin at r4c9 and exclusions at r56c78 still occur.
You should recognize this as the inverse of a "finned franken swordfish."
- Code: Select all
. . . | * . . | * * .
. . . | * . . | * * .
/ / / | X / / | X X /
----------+----------+---------
/ / / | X / / | X X #
. . . | * . . | ** ** .
. . . | * . . | ** ** .
----------+----------+---------
. . . | * . . | X X /
. . . | * . . | X X /
. . . | * . . | X X /
Fig 2B: rrb\ccc almost constraint sets
For the third puzzle:
- Code: Select all
/ / / | X / X | / / #
. . . | * X * | / . .
. . . | * X * | / . .
----------+----------+---------
/ / / | . / . | # . .
X X X | * X * | X * **
X X X | * X * | X * **
----------+----------+---------
. . . | . / . | / . .
. . . | . / . | / . .
* * * | * X * | X * *
Fig 3: rccb\rrrb two-finned almost constraint sets
If both fins r1c9 and r4c7 are false, the candidates in set A (r1, c5, c7 and b4) are covered by set B (r5, r6, r9 and b2). Any other candidates in set B could be excluded.
(If any of the excluded candidates were true, no candidate would remain for row 1.) Add either fin and exclusions at r56c9 still occur.
I don't think constraint sets are weird at all. Difficult to find? Yes, but not weird.
[edit: In third puzzle, Mike provided correct b4 (was b8).]