The Ultimate FISH Guide

Advanced methods and approaches for solving Sudoku puzzles

Re: The Ultimate FISH Guide

Postby ronk » Thu Aug 08, 2013 2:05 pm

The basics

Theorem: Either the de-finned N\N fish is true or at least one of its fin cells is true.

Corollary: When the de-finned N\N fish is false, each of its fin cells must "see" the same eventual exclusion cell.


There is no requirement for any one fin cell to see an exclusion cell more than once. Again, there is no requirement for any one fin cell to see an exclusion cell more than once.


Moreover, the arithmetic for UFG algorithm is not the only workable plausible algorithm to find a finned N\N fish, and notation for an exclusion may or may not be indicative of the algorithm used.

I personally dislike and do not use Obi-Wahn's arithmetic for UFG, but I do understand it. Lastly, could we please try to use less space in this thread for posts about the arithmetic for UFG topic?
ronk
2012 Supporter
 
Posts: 4764
Joined: 02 November 2005
Location: Southeastern USA

Re: The Ultimate FISH Guide

Postby jb681131 » Sun Jun 21, 2015 11:18 am

Your guide is incredible.

But you are missing one shape/type : the Siamese Fish.
Hodoku has an exemple : http://hodoku.sourceforge.net/en/tech_fishc.php

Also a little theorem you could add : for any fish bigger than size 5, a complementary smaller one exists.
jb681131
 
Posts: 1
Joined: 21 June 2015

Re: The Ultimate FISH Guide

Postby StrmCkr » Mon Jun 22, 2015 2:59 am

Code: Select all
Also a little theorem you could add : for any fish bigger than size 5, a complementary smaller one exist

not completely true, there is size 7 fish that do not have complementary smaller fish for the same elimination, as covered by nxn fish

as for the Siamese fish, they are found as individual eliminations as covered by nxn rules. {2 moves instead of one, as outlined by hobiwan and on his solver page}

edit: retracted parts of this post
Last edited by StrmCkr on Thu Jun 25, 2015 1:18 am, edited 1 time in total.
Some do, some teach, the rest look it up.
stormdoku
User avatar
StrmCkr
 
Posts: 1433
Joined: 05 September 2006

Postby Pat » Mon Jun 22, 2015 11:51 am

jb681131 wrote:

    a little theorem you could add:
      for any fish bigger than size 5,
      a complementary smaller one exists.

    you probably meant,
    size 5-or-larger.
      ( with an un-stated assumption that the box-size is 3x3. )
    this was true as long as we only knew the simple fish
    ( one type of house in the base,
    likewise in the cover
    );
    and no longer true
    now that we've discovered complex fish
    ( base may mix 2-or-more types of houses,
    cover likewise
    ).
User avatar
Pat
 
Posts: 4056
Joined: 18 July 2005

Re: The Ultimate FISH Guide

Postby blue » Mon Jun 22, 2015 5:16 pm

StrmCkr wrote:as for the Siamese fish, they are found as individual eliminations as covered by nxn rules. {2 moves instead of one, as outlined by hobiwan and on his solver page}

however, if your using nxn+k fish will solve both variations at the same time..

so they aren't exactly missed either.

I'm not sure about that.
You could convince me, by showing that it's true for a skyscraper.

The only way I know, that handles "both at the same time", involves the idea of finned n x (n-1-m) fish ... i.e. fish with more base than cover sectors. There, the idea is that it's impossible to satisfy the constraints for an n x (n -1-m) fish, without at least one of the fin candidates being true, and that as a result, any candidate that can see all of the fins, can be eliminated.

Note: "PE" cells/candidates, don't play a role in that treatment, and that seems to be essential.
They don't play a role, for n x (n+k) fish either, but for "siamese" fish, I think you still need different choices for the n+k cover sectors, for different eliminations. The (different) cover sector lists, overlap, of course ... but I don't think one list can handle every elimination.
blue
 
Posts: 1052
Joined: 11 March 2013

Re: The Ultimate FISH Guide

Postby StrmCkr » Wed Jun 24, 2015 10:13 pm

Code: Select all
I'm not sure about that.

I'm going to agree with you blue, i just cross checked the siamess jelly puzzle with my nxn+k and id didn't detect dual eliminations, and needed multiple 4 size fish to hit both sides

{unlike the skyscraper examples which do show both eliminations directly unlike when they are expressed as finned x-wing notation which requires 2 nxn fish to get both eliminations}

ill have to look at this example closer.
Some do, some teach, the rest look it up.
stormdoku
User avatar
StrmCkr
 
Posts: 1433
Joined: 05 September 2006

Re: The Ultimate FISH Guide

Postby daj95376 » Wed Jun 24, 2015 11:27 pm

I would not recommend this as a solution, but it does perform both eliminations at the same time using a Fish pattern.

Code: Select all
 HoDoKu example for a Dual/Siamese Swordfish
 +-----------------------+
 | . . . | 1 . 7 | . . . |
 | . . . | 9 . 5 | . . . |
 | . . 3 | . 8 . | 5 . . |
 |-------+-------+-------|
 | . 9 . | . . . | . 7 . |
 | . . 5 | 2 . 6 | 4 . . |
 | 1 . . | . . . | . . 8 |
 |-------+-------+-------|
 | 7 . . | . . . | . . 9 |
 | . . 6 | . 4 . | 3 . . |
 | . 2 . | . . . | . 1 . |
 +-----------------------+

 HoDoKu:  Dual/Siamese Swordfish r358\c29+5|6  =>  -1 r4c6,r7c5

 +--------------------------------------------------------------------------------+
 |  245689  4568    2489    |  1       236     7       |  2689    234689  2346    |
 |  2468   *14678  #12478   |  9       236     5       | #12678   23468  *123467  |
 |  269    *17      3       |  46      8       24      |  5       269    *17      |
 |--------------------------+--------------------------+--------------------------|
 |  2346    9       24      |  3458    15     ~1348    |  126     7       12356   |
 |  38      378     5       |  2      *179     6       |  4       39     *13      |
 |  1       3467    247     |  3457    579     349     |  269     23569   8       |
 |--------------------------+--------------------------+--------------------------|
 |  7       13458   148     |  3568   ~1256    1238    |  268     24568   9       |
 |  589    *158     6       |  578     4      *1289    |  3       258     257     |
 |  34589   2       489     |  35678   5679    389     |  678     1       4567    |
 +--------------------------------------------------------------------------------+
 # 154 eliminations remain

     Jellyfish r2358\c2569 w/remote fin cells r2c37

 1:  r2c3 - r2c79 = r3c9 - r5c8 = r5c5  =>  -1 r4c6,r7c5

 1:  r2c7 - r2c23 = r3c2 - r8c2 = r8c6  =>  -1 r4c6,r7c5


Note: I once became embroiled in a highly opinioned discussion on the suitability of using "Siamese" as a qualifier. Political Correctness is everywhere!

_
daj95376
2014 Supporter
 
Posts: 2624
Joined: 15 May 2006

Re: The Ultimate FISH Guide

Postby StrmCkr » Thu Jun 25, 2015 1:14 am

Code: Select all
(8) 4x4+1       Base: 7,8,22,23,    Cover: 5,11,15,25,27,  Eliminations: 74,
(8) 4x4+1       Base: 7,8,11,23,    Cover: 5,15,22,25,27,  Eliminations: 37,


this is the interesting stuff i dug up from the jelly fish example

swamping base 11-22 for cover 22-11 still balances the equations resulting in 2 different eliminations, now if both 11-22 are directly equal they should be removable and still produce an elimination

Code: Select all
(8) 3x3+1       Base: 7,8,23,    Cover: 5,10,15,27,  Eliminations: 37,
and it dose, but why not 74?
because cell 37
prevents a 1 fish for base 22 with cover 11 eliminating cell 74

to me, it looks like daisy chaining a 1 fish and a 3 fish together, to make a "twinned" 4 fish.
Some do, some teach, the rest look it up.
stormdoku
User avatar
StrmCkr
 
Posts: 1433
Joined: 05 September 2006

Re: The Ultimate FISH Guide

Postby daj95376 » Thu Jun 25, 2015 3:46 am

The HoDoKu Siamese Jellyfish is a poor example. Either elimination can be obtained from a variety of 2-Fish patterns.

Code: Select all
 +-----------------------+
 | . 3 . | 8 . . | . 7 . |
 | . 4 8 | . . . | 1 . . |
 | . . 7 | 4 5 . | . 6 9 |
 |-------+-------+-------|
 | . . . | 7 4 . | 9 5 1 |
 | . . 4 | . . . | . . . |
 | 7 . . | . 2 . | . . . |
 |-------+-------+-------|
 | . . . | . 1 . | . . . |
 | . 2 5 | . 7 . | . . 3 |
 | 6 . . | . . . | 7 . . |
 +-----------------------+

 +-----------------------------------------------------------------------+
 |  5      3      6      |  8      9      1      |  24     7      24     |
 |  9      4      8      |  2      6      7      |  1      3      5      |
 |  2      1      7      |  4      5      3      |  8      6      9      |
 |-----------------------+-----------------------+-----------------------|
 |  3      68     2      |  7      4      68     |  9      5      1      |
 |  1-8    5689   4      |  13569  38     5689   |  236    28     7      |
 |  7      5689   19     |  13569  2      5689   |  346    48     468    |
 |-----------------------+-----------------------+-----------------------|
 |  48     7      39     |  369    1      24689  |  5      2489   2468   |
 |  148    2      5      |  69     7      4689   |  46     1489   3      |
 |  6      9-8    139    |  359    38     24589  |  7      12489  248    |
 +-----------------------------------------------------------------------+
 # 75 eliminations remain

2-Fish c25\r59                  f  020\200  -8  r5c1
2-Fish c25\r9b4                 fF 020\101  -8  r5c1
2-Fish c5b7\r59                 fF 011\200  -8  r5c1
2-Fish c5b7\r9c1                fm 011\110  -8  r5c1

2-Fish c15\r59                  f  020\200  -8  r9c2
2-Fish c15\r5b7                 fF 020\101  -8  r9c2
2-Fish c5b4\r59                 fF 011\200  -8  r9c2
2-Fish c5b4\r5c2                fm 011\110  -8  r9c2
2-Fish r4b8\c26                 fF 101\020  -8  r9c2
2-Fish r4b8\r9c6                fm 101\110  -8  r9c2
2-Fish r4c5\c2b5                fm 110\011  -8  r9c2
2-Fish r4c5\r9b5                fm 110\101  -8  r9c2

Once one elimination is performed, the second elimination follows from a Locked Candidate pattern.

_
daj95376
2014 Supporter
 
Posts: 2624
Joined: 15 May 2006

Re: The Ultimate FISH Guide

Postby blue » Thu Jun 25, 2015 5:56 am

daj95376 wrote:I would not recommend this as a solution, but it does perform both eliminations at the same time using a Fish pattern.

Code: Select all
 HoDoKu example for a Dual/Siamese Swordfish
 +-----------------------+
 | . . . | 1 . 7 | . . . |
 | . . . | 9 . 5 | . . . |
 | . . 3 | . 8 . | 5 . . |
 |-------+-------+-------|
 | . 9 . | . . . | . 7 . |
 | . . 5 | 2 . 6 | 4 . . |
 | 1 . . | . . . | . . 8 |
 |-------+-------+-------|
 | 7 . . | . . . | . . 9 |
 | . . 6 | . 4 . | 3 . . |
 | . 2 . | . . . | . 1 . |
 +-----------------------+

 HoDoKu:  Dual/Siamese Swordfish r358\c29+5|6  =>  -1 r4c6,r7c5

 +--------------------------------------------------------------------------------+
 |  245689  4568    2489    |  1       236     7       |  2689    234689  2346    |
 |  2468   *14678  #12478   |  9       236     5       | #12678   23468  *123467  |
 |  269    *17      3       |  46      8       24      |  5       269    *17      |
 |--------------------------+--------------------------+--------------------------|
 |  2346    9       24      |  3458    15     ~1348    |  126     7       12356   |
 |  38      378     5       |  2      *179     6       |  4       39     *13      |
 |  1       3467    247     |  3457    579     349     |  269     23569   8       |
 |--------------------------+--------------------------+--------------------------|
 |  7       13458   148     |  3568   ~1256    1238    |  268     24568   9       |
 |  589    *158     6       |  578     4      *1289    |  3       258     257     |
 |  34589   2       489     |  35678   5679    389     |  678     1       4567    |
 +--------------------------------------------------------------------------------+
 # 154 eliminations remain

     Jellyfish r2358\c2569 w/remote fin cells r2c37

 1:  r2c3 - r2c79 = r3c9 - r5c8 = r5c5  =>  -1 r4c6,r7c5

 1:  r2c7 - r2c23 = r3c2 - r8c2 = r8c6  =>  -1 r4c6,r7c5

After playing around with that, for a bit ...

If we don't mind base and cover sectors being used multiple times (like in Obi-Wahn fish), then there's a 6x6-fish, r335588\c225699, that can handle both eliminations.
    1) It has r5c5 and r8c6 as "endo fins", since each is in 2 base but only 1 cover sector.
    2) r4c6 and r7c5 are "potential elimination" (PE) candidates that can see the all of the fins.
blue
 
Posts: 1052
Joined: 11 March 2013

Re: The Ultimate FISH Guide

Postby sultan vinegar » Thu Jun 25, 2015 8:11 am

One thing that I think is missing from the exemplars is rank 2 fish eliminations. I remember a while ago coming up with an extended list of fish exemplars; I think I had everything up to jellyfish size, basic, franken, mutant, finned, Siamese (like a skyscraper, not the Hodoku definition) and rank 2 fish. Then I got distracted by exocets. Ironically, my current thinking on exocets has been interrupted by these fish! I'll try and find my exemplars and post them, as I'm sure I would have missed some.
sultan vinegar
 
Posts: 81
Joined: 27 August 2013

Re: The Ultimate FISH Guide

Postby rjamil » Mon Jul 10, 2017 5:18 pm

Hi Tarek, StrmCkr, David P Bird,

I am currently studying advanced Sudoku solving techniques and implementing in to my standard 9x9 Sudoku solver program. My intention is to analyze and code whatever is available in exemplars forms that is easily understandable and program as well.

I recently started studying fishes and, no doubt, your "Ultimate FISH Guide" is comprehensive and easy to understand format/language/material provided.

Just read about Franken X-Wing (exemplar Fig 2B and 2B inverse) in your opening post and according to this site, that it is completely identical/overlap/equivalent with Fig 1A and 1A inverse, i.e., Locked Candidate Type 1 and 2, respectively.

However, there is another Franken X-Wing exemplar shown in above mentioned site (derived from the BB/CC Franken X-Wing), which are, according to your OP style, as follows:
Code: Select all
---------+----------+----------      ---------+----------+----------
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
---------+----------+----------      ---------+----------+----------
 *  X  * |  *  *  * |  X  X  X        /  X  / |  /  /  / |  X  X  X
 .  /  . |  .  .  . |  /  /  /        .  *  . |  .  .  . |  *  *  *
 *  X  * |  *  *  * |  X  X  X        /  X  / |  /  /  / |  X  X  X
---------+----------+----------      ---------+----------+----------
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
---------+----------+----------      ---------+----------+----------
rr\cb

I think that it is not equivalent to any exemplar provided in your OP. Hence need your kind guidance/comments/wordings regarding same.

R. Jamil
rjamil
 
Posts: 784
Joined: 15 October 2014
Location: Karachi, Pakistan

Re: The Ultimate FISH Guide

Postby StrmCkr » Mon Jul 10, 2017 8:09 pm

Code: Select all
---------+----------+----------      ---------+----------+----------
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
---------+----------+----------      ---------+----------+----------
 *  X  * |  *  *  * |  X  X  X        /  X  / |  /  /  / |  X  X  X
 .  /  . |  .  .  . |  /  /  /        .  *  . |  .  .  . |  *  *  *
 *  X  * |  *  *  * |  X  X  X        /  X  / |  /  /  / |  X  X  X
---------+----------+----------      ---------+----------+----------
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
---------+----------+----------      ---------+----------+----------

Franken X-Wing: 1 c2b6 r46 => r4c13456,r6c13456<>1 {left example} as a N X N fish

Franken X-Wing: 1 r46 c2b6 => r1235789c2,r5c789<>1 {right example} as a NxN fish
which is also:
Finned X-Wing: 1 r46 c27 fr4c8 fr4c9 fr6c8 fr6c9 => r5c7<>1
Finned X-Wing: 1 r46 c28 fr4c7 fr4c9 fr6c7 fr6c9 => r5c8<>1
Finned X-Wing: 1 r46 c29 fr4c7 fr4c8 fr6c7 fr6c8 => r5c9<>1

in the first example on left {for simplicity first} as C/B
box 4 is a 1-fish ( 1 in c2 => r4c13,r5c13,r6c13<>1 ) that would set the ** eliminations below + the other *'s in the box => leaving a franken x-wing as BB/RR eliminating the rest of the *'s

in the 2nd example {for simplicity first}
box 5 is a 1-fish 1 in b5 => r5c123789<>1
OR
row 4/6 is a franken x-wing {RR/BB} that would also set the ** eliminations below. => leaves a 1 fish on B/C eliminating the other *'s on the col


Locked Candidates Type 1 (Pointing): 1 in b5 => r5c123789<>1

Code: Select all
---------+----------+----------      ---------+----------+----------
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
---------+----------+----------      ---------+----------+----------
 *  X  * |  *  *  * |  X  X  X        /  X  / |  /  /  / |  X  X  X
 **  /  ** |  .  .  . |  /  /  /        **  *  ** |  .  .  . |  *  *  *
 *  X  * |  *  *  * |  X  X  X        /  X  / |  /  /  / |  X  X  X
---------+----------+----------      ---------+----------+----------
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
 .  /  . |  .  .  . |  .  .  .        .  *  . |  .  .  . |  .  .  .
---------+----------+----------      ---------+----------+----------


combined view is also valid and the total eliminations are shown in the updated example i present above as a (NxN+k fish)

for nxn+k varation of a nxn fish finding
see here
Some do, some teach, the rest look it up.
stormdoku
User avatar
StrmCkr
 
Posts: 1433
Joined: 05 September 2006

Re: The Ultimate FISH Guide

Postby rjamil » Tue Jul 11, 2017 1:15 am

Hi,

Instead of additional 1-Fish eliminations, how about Locked Candidate in b5 with c2 candidates as Transported (by removing all 1-Fish eliminations)?

Added: Or two locked candidates, first in b4 stack 1 and second in b5 band 2.

Added 2: What I need to know about "Franken X-Wing" is already mentioned here, i.e., "There is no Franken X-Wing." as per Andrew Stuart statement.

R. Jamil
rjamil
 
Posts: 784
Joined: 15 October 2014
Location: Karachi, Pakistan

Re: The Ultimate FISH Guide

Postby StrmCkr » Tue Jul 11, 2017 7:45 pm

franken usually refers to Box sector in the base or cover exclusively with RR,CC,R+C in the opposite

{Andrew is sadly mistaken on that quote, and its pointed out by another user in the first comment on the same page}
to which they are referring to is the following.
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 |  .  .  .
     Fig 2B: cc\bb                        Fig 2B inverse: bb\cc
     rr\bb transpose                      bb\rr transpose
     franken x-wing
     Note Fig 2B is equivalent to Fig 1A.


is an exemplar of a franken x-wing: but they are usually subsumed by the easier 1-fish seen as the "." cells
Some do, some teach, the rest look it up.
stormdoku
User avatar
StrmCkr
 
Posts: 1433
Joined: 05 September 2006

PreviousNext

Return to Advanced solving techniques