## Big fish

Advanced methods and approaches for solving Sudoku puzzles
You are quite right, Havard. I mixed up your whale with another fish when writing early this morning and apologise for it.

I think the squirmbag you found to make the same elimination is the one I set out in my May 28 post. The dual on rows 1, 2, 3, 6 and 7 is also given there. The theory preceding the examples covers the squirmbag eliminations but not that of the whale.

As I now look at it it, we are using the same approach except that you permit cannibalism and I do not. Since I cannot see how to start on a general approach to the cannibalistic eliminations which may arise I am happy to pass on the baton.

Regards

Steve
Steve R

Posts: 74
Joined: 03 April 2006

I know I'm 0 for 3 in proposed squirm bags, but here's another set. They came as somewhat of a surprise when I implemented a fishy form of almost constraint subsets (set A is n rows or columns and set B is a combination of n boxes and columns or rows). The result are super Franken fish which, according to Havard, include 2 boxes in the "B" set instead of the usual one which is why I haven't seen them before. So what do you fishermen think?

Code: Select all
`#1 Constraint Squirmbag: Base={r34789}, Cover={c478,b78}, fin=r4c9r3c478|r4c479|r7c24678|r8c37|r9c24567 => r56c8<>5,r6c7<>5 .3.4..9..5......8..74.81....2..37.4....9..2..7..2....9..3.6...8.8.723..1.......6. +------------------+-------------------+------------------+ |  168     3   128 |     4    57   256 |      9   17  567 | |    5    16    12 |    36    79   269 |   1467    8   34 | |    9     7     4 |  *356     8     1 |   *356 *235   23 | +------------------+-------------------+------------------+ |  168     2     9 | *1568     3     7 |  *1568    4  *56 | |    3  1456  1568 |     9   145  4568 |      2 -157  567 | |    7  1456  1568 |     2   145  4568 | -13568 -135    9 | +------------------+-------------------+------------------+ |  124  *159     3 |   *15     6  *459 |   *457 *257    8 | |   46     8   *56 |     7     2     3 |    *45    9    1 | |  124  *159     7 |  *158 *1459 *4589 |   *345    6  234 | +------------------+-------------------+------------------+ #2 Constraint Squirmbag: r1c345|r5c346|r7c28|r8c57|r9c145 => r4c4<>7 Base={r15789}, Cover={c345,b79}, fin=r5c65....2...........493..4.6.7....9....2.....5.3..9..14.....2.8..6.5.4......98..6... +----------------+-----------------+--------------+ |    5  468 *467 | *137  *167    2 |  138  138  9 | |   78    2   67 |    9  1367   37 |  138    5  4 | |    9    3    1 |    8     4    5 |    6    2  7 | +----------------+-----------------+--------------+ |  478  468    5 | -367     9  347 |   17   16  2 | |    2    1 *467 |  *67     8  *47 |    5    9  3 | |    3   67    9 |    5     2    1 |    4   67  8 | +----------------+-----------------+--------------+ |    1  *47    3 |    2     5    8 |    9  *47  6 | |    6    5    2 |    4   *37    9 | *378   38  1 | |  *47    9    8 | *137  *137    6 |    2   34  5 | +----------------+-----------------+--------------+ #3 Constraint Squirmbag: r1c389|r4c378|r7c1469|r8c12489|r9c249 => r6c8<>1 Base={r14789}, Cover={c389,b78}, fin=r4c78....9...2..75..9...4...32..9.47........6..72..7.....5..2....3...5...8......86... +------------------+---------------+------------------+ |     8     7 *136 |    2  34    9 |     5 *146  *146 | |     2   136  136 |    7   5   34 |   146    9     8 | |     9     5    4 |    6   1    8 |     3    2     7 | +------------------+---------------+------------------+ |     5     9 *168 |    4   7    2 |   *16 *168     3 | |   134   134  138 |  589   6  135 |   149    7     2 | |  1346     2    7 |  189  39   13 |  1469 -148     5 | +------------------+---------------+------------------+ |   *16     8    2 | *159  49 *145 |     7    3  *169 | | *1346 *1346    5 | *139   2    7 |     8 *146 *1469 | |     7  *134    9 |  *13   8    6 |     2    5   *14 | +------------------+---------------+------------------+ #4 Constraint Squirmbag: r1c69|r3c5689|r4c478|r7c2389|r8c349 => r6c8<>7, r56c9<>7 Base={r13478}, Cover={c489,b27}, fin=r4c79...3..1.7.5.8.......5..6...42..5......8...6.6..9..2..4...2.1...8...439..56....2. +------------------+----------------+---------------------+ |    9    26    48 |   24    3  *67 |    5      1    *278 | |    7    16     5 |   24    8   16 |   49     34    2349 | |  138   123   348 |    5 *179 *179 |    6   *478   *2478 | +------------------+----------------+---------------------+ |  138     4     2 | *137    6    5 | *789   *378     139 | |    5  1379   139 |    8  147    2 |   47      6    -137 | |    6   137  1378 |    9  147  137 |    2 -34578 -134578 | +------------------+----------------+---------------------+ |    4  *379  *379 |   36    2   38 |    1   *578    *567 | |    2     8   *17 | *167    5    4 |    3      9     *67 | |   13     5     6 |  137  179  389 |  478      2      47 | +------------------+----------------+---------------------+ #5 Constraint Squirmbag: r35678c1|r1367c3|r367c5|r1235c6|r57c9 => r7c2<>5 Base={c13569}, Cover={c567,b12}, fin=r8c13..8...296...7.....7......8....2...4..9.1..7....7..3.2......1....1.86...8...92.43 +----------------------+-----------------+---------------+ |      3    145    *45 |    8    6  *145 |    7    2   9 | |      6    289     28 |   29    7  *345 |   45   35   1 | | *12459      7   *245 |   29 *345 *1345 |  456  356   8 | +----------------------+-----------------+---------------+ |      7    135     36 |   56    2     8 |    9  156   4 | |   *245     24      9 |  346    1  *345 |    8    7 *56 | |    *15   4568  *4568 |    7  *45     9 |    3  156   2 | +----------------------+-----------------+---------------+ |  *2459 -23569 *23456 |   34 *345     7 |    1    8 *56 | |    *45    345      1 |  345    8     6 |    2    9   7 | |      8     56      7 |    1    9     2 |   56    4   3 | +----------------------+-----------------+---------------+ #6 Constraint Squirmbag: r467c3|r12347c4|r1346c5|r234c8|r12378c9 => r7c7<>1 Base={c34589}, Cover={r467,b23}, fin=r8c9..6....2...4.3.8....5...3.......3......96..7..3.2...5..4...8...9....726.2.359...4 +--------------------+---------------------+--------------------+ |      3   1789    6 |  *1478 *1578   1459 |  14579    2  *1579 | |     17   1279    4 |   *167     3  12569 |      8  *19 *15679 | |    178  12789    5 | *14678  *178   1269 |      3 *149  *1679 | +--------------------+---------------------+--------------------+ |  14567    167 *179 |  *1478 *1578      3 |   1469 *149      2 | |   1458    158    2 |      9     6    145 |     14    7      3 | |   1467      3 *179 |      2   *17     14 |    469    5      8 | +--------------------+---------------------+--------------------+ |   1567      4  *17 |    *16     2      8 |  -1579    3  *1579 | |      9     15    8 |      3     4      7 |      2    6    *15 | |      2    167    3 |      5     9     16 |     17    8      4 | +--------------------+---------------------+--------------------+ #7 Constraint Squirmbag: r1c239|r4c358|r5c24|r6c57|r9c129 => r7c3<>3,r8c2<>3 Base={r14569}, Cover={c239,b56}, fin=r9c19..1.765..8......7.....3.1.1....89..4.5.9..7....5....2...9.....7...2...6..4.7..9. +------------------+------------------+-----------------+ |     9  *234  *23 |    1    48     7 |    6     5 *348 | |   356     8    1 |  246    45     9 |  234    23    7 | |    56   457   67 |   26  4568     3 |  248     1    9 | +------------------+------------------+-----------------+ |     1    26 *236 |    7  *346     8 |    9   *34    5 | |     4   *36    5 |  *36     9     2 |   18     7   18 | |     8    79   79 |    5  *134    14 |  *34     6    2 | +------------------+------------------+-----------------+ |  2356   156 -368 |    9   134  1456 |    7  2348  134 | |     7 -1359   89 |   34     2   145 |  145   348    6 | | *2356 *1356    4 |    8     7   156 |  125     9  *13 | +------------------+------------------+-----------------+ #8 Constraint Squirmbag: r1c3489|r2c458|r5c356|r7c57|r8c49 => r4c5<>3Base={r12578}, Cover={c345,b39}, fin=r5c6Dual Base={c26,b6}, Dual Cover={r346}, fin=r5c6.....62....8..4......52.6..5.....9.29......57..1......4.59...7.....6..1.37.......+--------------+----------------+----------------+|  1    5 *349 |  *38    7    6 |   2 *3489 *348 ||  6    2    8 |  *13 *139    4 |   7   *39    5 ||  7   34  349 |    5    2  389 |   6  3489    1 |+--------------+----------------+----------------+|  5  348    7 |    6 -134   13 |   9   348    2 ||  9    6  *34 |    2 *348  *38 |   1     5    7 ||  2  348    1 |    7   59   59 |  34     6  348 |+--------------+----------------+----------------+|  4    1    5 |    9  *38    2 | *38     7    6 ||  8    9    2 |  *34    6    7 |   5     1  *34 ||  3    7    6 |  148  158  158 |  48     2    9 |+--------------+----------------+----------------+`
Last edited by Mike Barker on Sat Aug 05, 2006 3:05 pm, edited 8 times in total.
Mike Barker

Posts: 458
Joined: 22 January 2006

Well done indeed, Mike.

According to my way of thinking all your fish target three boxes in the sense that there is potential for eliminations in three boxes. It would be helpful to know which columns and boxes you see as targets for elimination in, say, the first example.

Apart from examples 5 and 6, all are based on five rows and target three columns as well as three boxes. Their duals based on five columns. So m + m* (= fish base + dual base) = 5 + 5 = 10, equalling Havard’s record. As to the exceptions:

Example 5

Base columns: 1, 3, 5, 6, and 9
Target rows: 5, 6 and 7
Target boxes: 1, 2 and 7
Dual fish
Base rows: 1, 2, 3, 4, 8, and 9
Target columns: 2, 4, 7 and 8
Target boxes: 1, 2 and 7

Example 6

Base columns: 3, 4, 5, 8 and 9
Target rows: 2, 3 and 9
Target boxes: 4, 6 and 7
Dual fish
Base rows: 1, 2, 3, 5, 8 and 9
Target columns: 1, 2, 6 and 7
Target boxes: 4, 6 and 7

In these two cases m + m* = 5 + 6 = 11. I cannot find a smaller fish within either so to the best of my belief this establishes a new benchmark of the gargantuan on a 9x9 grid. Congratulations!

Steve
Steve R

Posts: 74
Joined: 03 April 2006

Steve R wrote:Well done indeed, Mike.

Absolutely well done.

Steve R wrote:As to the exceptions:

Example 5

Base columns: 1, 3, 5, 6, and 9
Target rows: 5, 6 and 7
Target boxes: 1, 2 and 7
Dual fish
Base rows: 1, 2, 3, 4, 8, and 9
Target columns: 2, 4, 7 and 8
Target boxes: 1, 2 and 7

Example 6

Base columns: 3, 4, 5, 8 and 9
Target rows: 2, 3 and 9
Target boxes: 4, 6 and 7
Dual fish
Base rows: 1, 2, 3, 5, 8 and 9
Target columns: 1, 2, 6 and 7
Target boxes: 4, 6 and 7

In these two cases m + m* = 5 + 6 = 11. I cannot find a smaller fish within either so to the best of my belief this establishes a new benchmark of the gargantuan on a 9x9 grid.

As long we insist on having only rows or only columns in the base, we won't get to the true dual count M = 9 - P - N ... where P is the number of placements. I see these two puzzles as:

Example 5

Base: columns 1, 3, 5, 6, and 9
Target: rows 5, 6 and 7 AND boxes 1 and 2
Fin: r8c1
Dual fish
Base: rows 4, 8, and 9 AND box 3
Target: columns 2, 4, 7 and 8
Fin: r8c1

Example 6

Base: columns 3, 4, 5, 8 and 9
Target: rows 4, 6 and 7 AND boxes 2 and 3
Fin: r8c9
Dual fish
Base: rows 5, 8 and 9 AND box 1
Target: columns 1, 2, 6 and 7
Fin: r8c9

There are no placements in either puzzle ... and M + N = 9.
ronk
2012 Supporter

Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

ronk wrote:
Example 5
Base: columns 1, 3, 5, 6, and 9
Target: rows 5, 6 and 7 AND boxes 1 and 2
Fin: r8c1

Example 6
Base: columns 3, 4, 5, 8 and 9
Target: rows 4, 6 and 7 AND boxes 2 and 3
Fin: r8c9

This is the same way as I see it. All the squirmbags Mike posted has this "three lines, two boxes, one fin" - structure.

Havard
Havard

Posts: 377
Joined: 25 December 2005

Mike Barker, when you're bored to tears with nothing to do would you consider editing your "almost squirmbag" post to number the puzzles?

And thanks for posting them, Ron
ronk
2012 Supporter

Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Mike Barker wrote:Here ... if a fish with a big fin appears to be missing a row (column), a so called skinny fish, other reductions are possible. The dashes indicate cells without the candidate (in this case because of Box/Box eliminations):
Code: Select all
` . . . | * X * | X X -    . . . | * X X | X X *    . . . | . . . | X X * . . . | * X * | X X -    . . . | * X X | X X *    * X * | * X * | * * * . . . | * X * | X X -    . . . | * X X | X X *    . | . | . | . | X X *-------+---|---+-|-|---  -------+---|-|-+-|-|---  ---|---+---|---+-|-|--- . . . | . | . | | | -    . . . | . | | | | | .    . | . | . | . | | | . * * * | * * * | X X -    * * * | * X X | X X *    * X * | * X * | X X * . . . | . | . | | | -    . . . | . | | | | | .    . | . | . | . | | | .-------+---|---+-|-|---  -------+---|-|-+-|-|---  ---|---+---|---+-|-|--- . . . | . | . | | | .    . . . | . | | | | | .    . | . | . | . | | | . . . . | . | . | | | .    . . . | . | | | | | .    . | . | . | . | | | . . . . | . | . | | | .    * * * | * X X | X X *    * X * | * X * | X X *`

Illustrating degenerate cases always seems to be problematic. To be consistent with the other two diagrams, however, I recommend replacing the first with ...
Code: Select all
` . . . | * X * | X X * . . . | * X * | X X * . . . | * X * | X X *-------+---|---+-|-|--- . . . | . | . | | | . * * * | * X * | X X * . . . | . | . | | | .-------+---|---+-|-|--- . . . | . | . | | | . . . . | . | . | | | . . . . | . | . | | | .`

... along with the caveat, since the pattern is degenerate, those same exclusions (and a couple more) may be made with box/box exclusions in stack 3, followed by locked candidate exclusions in box 6 and then box 2.
ronk
2012 Supporter

Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Even though I posted this elsewhere, I thought it might be worthwhile to add it to this tank...

Michael Mephem's 4th extreme puzzle has an interesting biggish fish...
Code: Select all
` *-----------* |..5|3..|6..| |.2.|.7.|.4.| |...|.1.|..8| |---+---+---| |3..|4..|..1| |.6.|251|.8.| |2..|..8|..4| |---+---+---| |4..|.2.|...| |.7.|.4.|.9.| |..1|..3|4..| *-----------*`

Basic methods will take you here...
Code: Select all
` *-----------------------------------------------------------------------------* | 179     489     5       | 3       89      24      | 6       127     279     | | 1689    2       3       | 5689    7       569     | 159     4       59      | | 679     49      679     | 569     1       24      | 2579    3       8       | |-------------------------+-------------------------+-------------------------| | 3       5       8       | 4       69      679     | 279     267     1       | | 79      6       4       | 2       5       1       | 379     8       379     | | 2       1       79      | 679     3       8       | 579     567     4       | |-------------------------+-------------------------+-------------------------| | 4       3       69      | 156789  2       5679    | 1578    157     567     | | 568     7       2       | 1568    4       56      | 1358    9       356     | | 569     89      1       | 5679    689     3       | 4       257     2567    | *-----------------------------------------------------------------------------*`

Filtering on the sevens we have a swordfish with two distinct fins...
Code: Select all
` +-----------+-----------+-----------+ |*7   .   . | .   .   . | .  *7  *7 | | .   .   . | .   7   . | .   .   . | | 7   .   7 | .   .   . | 7   .   . | +-----------+-----------+-----------+ | .   .   . | .   .  A7 | 7  -7   . | |*7   .   . | .   .   . |#7  *.  *7 | | .   .   7 |a7   .   . | 7   7   . | +-----------+-----------+-----------+ | .   .   . | 7   .  a7 | 7   7   7 | | .   7   . | .   .   . | .   .   . | |*.   .   . |#7   .   . | .  *7  *7 | +-----------+-----------+-----------+`

Either the r159c189 swordfish is true, or the fin in r5c7 is true, or the fin in r9c4 is true, which with a little weak then strong link extension would imply A (r4c6) contains a 7. In all three possible cases, seven can be removed from r4c8.

I thought this was an interesting case of an almost finned swordfish.
Myth Jellies

Posts: 593
Joined: 19 September 2005

PreviousNext