Sudoku Assistenten Forum Forum Index Sudoku Assistenten Forum

 
Home | | | Download | | | Links | | | Forum
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Covering Sectors Technique (or "fish")

 
Post new topic   Reply to topic    Sudoku Assistenten Forum Forum Index -> Solving techniques
View previous topic :: View next topic  
Author Message
Håvard
KING
KING


Joined: 28 Sep 2005
Posts: 407

PostPosted: Thu 03. Aug 2006 01:04    Post subject: Covering Sectors Technique (or "fish") Reply with quote

I thougth I better try and explain my "fishing technique"... :)

The main principle is this: Find a numbers of rows or columns and try and "cover" them with other sectors...

First some terminology to ease the explanation... There are three types of "sectors": rows, columns and boxes. So when I talk of the "other two sectors" while talking about rows, this means columns and boxes... :)

The collection of candidates made up by the intial rows or columns is called "the fish"!

So the idea is that if you have three rows of candidates, you have to try and "cover" these three rows with "the other two sectors", hence boxes and columns.

The amount of initial sectors decides what the name of the fish are. These are known as:
2 - x-wing
3 - swordfish
4 - jellyfish
5 - squirmbag
6- whale
7 - (not named, your suggestion?)
8 - kraken

Now there are a set of rules that my "fishing-kit" uses: These are:

Covering rules:
1. always try to apply the "other sector" that will cover the most canidates.
2. if two sectors compete for the same amount of candidates to cover, uses boxes last!

Elimination rules:
1. If the amount of sectors used to cover "the fish" is equal to the amount of sectors gone into making it, you can eliminate any other candidates in the sectors used to cover it!
2. If, when having used the same amount of covering sectors as there are lines in the fish, there is one candidate left, you can eliminate any candidates common to that candidate and any of the covering sectors.
3. If, in the same scenario as 2, instead are several candidates "left", you can eliminate any candidates common to these candidates and the covering sectors!


And that's it! Some examples might be handy now... :)

let's start with a simple swordfish, and see how things can progress:
Code:

. . . | . . . | . . .
. X . | . X . | . X .
. | . | . | . | . | .
--|---+---|---+---|--
. | . | . | . | . | .
. X . | . X . | . X .
. | . | . | . | . | .
--|---+---|---+---|--
. | . | . | . | . | .
. X . | . X . | . X .
. . . | . . . | . . .


so this one can be covered completely by three rows like this:

Code:

. . . | . . . | . . .
. 1 . | . 1 . | . 1 .
. | . | . | . | . | .
--|---+---|---+---|--
. | . | . | . | . | .
. 2 . | . 2 . | . 2 .
. | . | . | . | . | .
--|---+---|---+---|--
. | . | . | . | . | .
. 3 . | . 3 . | . 3 .
. . . | . . . | . . .

(the numbers shows what sectors get overlayed in what order)

and hence you can eliminate any other candidates in those three rows...

now with an extra candidate:
Code:

. . . | . . . | . . .
. X . | . X . | . X .
. | . | . | . | . X .
--|---+---|---+---|--
. | . | . | . | . | .
. X . | . X . | . X .
. | . | . | . | . | .
--|---+---|---+---|--
. | . | . | . | . | .
. X . | . X . | . X .
. . . | . . . | . . .


you get:
Code:

. . . | . . . | . . .
. 1 . | . 1 . | . 1 .
. | . | . | . | . 4 .
--|---+---|---+---|--
. | . | . | . | . | .
. 2 . | . 2 . | . 2 .
. | . | . | . | . | .
--|---+---|---+---|--
. | . | . | . | . | .
. 3 . | . 3 . | . 3 .
. . . | . . . | . . .

1=row 2
2=row 5
3=row 7
4= single
where 4 now is our "leftover", which we then can eliminate any cells common to both one of our sectors, and itself, in other words:
Code:

. . . | . . . | . . .
. 1 . | . 1 . | * 1 *
. | . | . | . | . 4 .
--|---+---|---+---|--
. | . | . | . | . | .
. 2 . | . 2 . | . 2 .
. | . | . | . | . | .
--|---+---|---+---|--
. | . | . | . | . | .
. 3 . | . 3 . | . 3 .
. . . | . | . | . . .


Now slightly more interesting:
Code:

. . . | . . . | X X .
. . . | . X . | X X .
. . . | . | . | X X .
------+---|---+-|-|--
. . . | . | . | | | .
. . . | . X . | X X .
. . . | . | . | | | .
------+---|---+-|-|-
. . . | . | . | | | .
. . . | . X . | X X .
. . . | . . . | . . .


following the overlay-rules you get:
Code:

. . . | . . . | 1 1 .
. . . | . 4 . | 1 1 *
. . . | . | . | 1 1 .
------+---|---+-|-|--
. . . | . | . | | | .
. . . | . 2 . | 2 2 .
. . . | . | . | | | .
------+---|---+-|-|-
. . . | . | . | | | .
. . . | . 3 . | 3 3 .
. . . | . . . | . . .

1=box 3
2=row 5
3=row 7
4=single
notice that Box 3 contains 6 candidates, so it get picked first! Now eliminations are what our single 4 can see in any of our sectors, which in this case is in the 1'st sector. (box 3)

A Franken-variation is one that uses two or more boxes as covering sectors. a Frankenswordfish would look like this:
Code:

. . . | . . . | X X .
. . . | . X . | X X .
. . . | . | . | X X .
------+---|---+-|-|--
. . . | . | . | | | .
. . . | . X . | X X .
. . . | . . . | | | .
------+-------+-|-|--
. . . | . . . | X X .
. . . | . . . | X X .
. . . | . . . | X X .

Code:

. . . | . . . | 1 1 .
. . . | . 4 . | 1 1 *
. . . | . | . | 1 1 .
------+---|---+-|-|--
. . . | . | . | | | .
. . . | . 3 . | 3 3 .
. . . | . . . | | | .
------+-------+-|-|--
. . . | . . . | 2 2 .
. . . | . . . | 2 2 .
. . . | . . . | 2 2 .

1=box 3
2=box 9
3=row 6
4=single

Now let's look at how to apply some of this for real!

Let's start with a Jellyfish gotten from Fermions "Freaking tough puzzle":
Code:

Jellyfish in rows: 2 3 5 7
369   369   2     | 1     5     4     | 8     79    37
8     5     19X   | 7     3     2     | 169X  4     16X
7     134X  134X  | 6     8     9     | 13X   5     2
------------------+-------------------+------------------
134   347   8     | 5     147   6     | 2     13    9
146X  2     147X  | 3     9     17X   | 56    8     456
5     3469  1349- | 2     14    8     | 7     13    46
------------------+-------------------+------------------
2     13X   57    | 4     6     13X   | 59    79    8
134   8     13457 | 9     2     137   | 135   6     1357
139   1379  6     | 8     17    5     | 4     2     13

.  .  .  | 1  .  .  | .  .  .
.  .  1X | .  .  .  | 1X .  1X
.  1X 1X | .  .  .  | 1X .  .
---------+----------+---------
1  .  .  | .  1  .  | .  1  .
1X .  1X | .  .  1X | .  .  .
.  .  1- | .  1  .  | .  1  .
---------+----------+---------
.  1X .  | .  .  1X | .  .  .
1  .  1  | .  .  1  | 1  .  1
1  1  .  | .  1  .  | .  .  1


First note that it is called Jellyfish because we are focusing on 4 rows. Now I usually start by looking at the sector that will cover most of the Jellyfish, and here this is Column 3 (3 candidates) and Box 3 (3 candiates):
Code:

.  .  .  | 1  .  .  | .  .  .
.  .  1C | .  .  .  | 1B .  1B
.  1X 1C | .  .  .  | 1B .  .
---------+----------+---------
1  .  .  | .  1  .  | .  1  .
1X .  1C | .  .  1X | .  .  .
.  .  1- | .  1  .  | .  1  .
---------+----------+---------
.  1X .  | .  .  1X | .  .  .
1  .  1  | .  .  1  | 1  .  1
1  1  .  | .  1  .  | .  .  1
covered sectors:
C3, B3

I still have another two sectors I can cover, and I choose Column 2 and 6 since they both give me 2 candidates:
Code:

.  .  .  | 1  .  .  | .  .  .
.  .  1C | .  .  .  | 1B .  1B
.  1C 1C | .  .  .  | 1B .  .
---------+----------+---------
1  .  .  | .  1  .  | .  1  .
1X .  1C | .  .  1C | .  .  .
.  .  1- | .  1  .  | .  1  .
---------+----------+---------
.  1C .  | .  .  1C | .  .  .
1  .  1  | .  .  1  | 1  .  1
1  1  .  | .  1  .  | .  .  1
covered sectors:
C3, B3, C2, C6

I am now left with a single uncovered candidate in r5c1. I now check if there is any covered sector that has a candidate (not part of the fish) that can also see my single uncovered, and yes there is! r6c3 is my lucky winner, and gets eliminated! :)

let's look at another one:
Code:

1  .  .  | 1X .  .  | .  .  .
.  1X 1  | .  1- .  | .  .  1X
1  1X .  | 1X .  .  | .  1X .
---------+----------+---------
.  1X .  | 1X 1  .  | .  .  .
.  .  .  | .  .  .  | 1  .  .
.  .  1  | .  1  .  | .  .  .
---------+----------+---------
.  .  .  | .  .  1  | .  1X .
1  .  1  | .  .  .  | .  1X 1X
1  .  1  | .  .  1  | .  .  1X

Code:

1  .  .  | 15 .  .  | .  .  .
.  13 1  | .  1- .  | .  .  13
1  12 .  | 12 .  .  | .  12 .
---------+----------+---------
.  14 .  | 14 1  .  | .  .  .
.  .  .  | .  .  .  | 1  .  .
.  .  1  | .  1  .  | .  .  .
---------+----------+---------
.  .  .  | .  .  1  | .  11 .
1  .  1  | .  .  .  | .  11 11
1  .  1  | .  .  1  | .  .  11

1=box 9 (4 candidates)
2=row 3 (3 candidates)
3=row 2 (2 candidates)
4=row 4 (2 candidates)
5=single
and we see that the candidate in r2c5 is part of our 3rd overlay sector, and is also seen by our single!

and this one:
Code:

Cannibalistic Franken-Whale in columns: 3 4 5 6 7 9
19     159    37     | 1368X  1578X  4      | 2      356789 1358X
8      125    37     | 1236X  1257X  9      | 1346X  3567   1345X
129    6      4      | 1238X  1578X  178X   | 1389X  35789  1358X
---------------------+----------------------+---------------------
3      4      128X   | 7      1268X  5      | 168X   268    9
5      7      128X   | 9      4      16X-   | 1368X  2368   138X
129    289    6      | 128X   128X   3      | 5      4      7
---------------------+----------------------+---------------------
4      18     9      | 5      368    168X   | 7      38     2
6      3      128X   | 18X    1789X  278    | 489    589    458
7      28     5      | 4      39     28     | 39     1      6

1   1   .   | 1X  1X  .   | .   .   1X
.   1   .   | 1X  1X  .   | 1X  .   1X
1   .   .   | 1X  1X  1X  | 1X  .   1X
------------+-------------+------------
.   .   1X  | .   1X  .   | 1X  .   .
.   .   1X  | .   .   1X- | 1X  .   1X
1   .   .   | 1X  1X  .   | .   .   .
------------+-------------+------------
.   1   .   | .   .   1X  | .   .   .
.   .   1X  | 1X  1X  .   | .   .   .
.   .   .   | .   .   .   | .   1   .

would look like this:
Code:

1   1   .   | 11  11  .   | .   .   12
.   1   .   | 11  11  .   | 12  .   12
1   .   .   | 11  11  11  | 12  .   12
------------+-------------+------------
.   .   14  | .   14  .   | 14  .   .
.   .   13  | .   .   13- | 13  .   13
1   .   .   | 16  16  .   | .   .   .
------------+-------------+------------
.   1   .   | .   .   17  | .   .   .
.   .   15  | 15  15  .   | .   .   .
.   .   .   | .   .   .   | .   1   .

1=box 2 (7 candidates)
2=box 3 (5 candidates)
3=row 5 (4 candidates)
4=row 4 (3 candidates)
5=row 8 (3 candidates)
6=box 5/row 6 (2 candidates)
7=single

Now why suddenly allow cannibalistic behavior? If the argument was that our single (7) sees our overlay-sector 3, this is not valid, because that candiate is part of the "fish" here. (row 5) However, since we can make the argument hold with sector 6 (box 5) and our single, the elimination is valid after all! So even if the elimination (r5c6) is part of the "fish", it is not part of the fish in our sector 6, and then we can do the elimination anyway!

another one:
Code:
Franken-Squirmbag in columns: 1 2 4 5 7
258X  28X   3     | 6     1458X 14    | 48X   9     7
1     78X   4578  | 58X   9     45    | 6     2     3
6     9     48    | 2     7     3     | 1     48    5
------------------+-------------------+------------------
3     128X  6     | 1458X 2458X 245   | 7     145   9
28X   5     278-  | 147   3     9     | 248X  6     1248
4     1278X 9     | 1578X 258X  6     | 3     15    128
------------------+-------------------+------------------
9     3     1     | 45    245   8     | 245   7     6
7     4     258   | 3     6     125   | 9     18    128
258X  6     258   | 9     1245  7     | 2458X 3     1248

8X 8X .  | .  8X .  | 8X .  .
.  8X 8  | 8X .  .  | .  .  .
.  .  8  | .  .  .  | .  8  .
---------+----------+---------
.  8X .  | 8X 8X .  | .  .  .
8X .  8- | .  .  .  | 8X .  8
.  8X .  | 8X 8X .  | .  .  8
---------+----------+---------
.  .  .  | .  .  8  | .  .  .
.  .  8  | .  .  .  | .  8  8
8X .  8  | .  .  .  | 8X .  8


Code:

81 81 .  | .  81 .  | 81 .  .
.  84 8  | 84 .  .  | .  .  .
.  .  8  | .  .  .  | .  8  .
---------+----------+---------
.  83 .  | 82 82 .  | .  .  .
83 .  8- | .  .  .  | 86 .  8
.  83 .  | 82 82 .  | .  .  8
---------+----------+---------
.  .  .  | .  .  8  | .  .  .
.  .  8  | .  .  .  | .  8  8
85 .  8  | .  .  .  | 85 .  8

1=row 1 (4 candiates)
2=box 5 (4 candidates)
3=box 4 (3 candidates)
4=row 2 (2 candidates)
5=row 9 (2 candidates)
6=single

Here our single interacts with our sector 3 (box 4), and we can do the elimination!

So that's it! The principle picks up on a lot of stuff, and could easily be extended to fish of size 8... I have only ever searched for size 6, but they do seem to pop up...

The rules about choosing rows and columns before boxes, and by picking them after their size is something that I have found generally gives better results. While you could number your sectors any way you like, "wrong" numbering would very often give no eliminations. However, I would not be surprised to find that in some special cases, a better procedure might be chosen!

Have fun with it! :)

Havard
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Mogulmeister
Senior Member
Senior Member


Joined: 10 Jul 2006
Posts: 61

PostPosted: Wed 23. Aug 2006 00:18    Post subject: Very Nice Reply with quote

Beautiful.

Why not call the level 7 fish

LEVIATHAN !

Another sea monster which has taken greater meaning:

Quote:
The term "Leviathan" is often used as a generic term for anything large and all consuming
Back to top
View user's profile Send private message
Håvard
KING
KING


Joined: 28 Sep 2005
Posts: 407

PostPosted: Wed 23. Aug 2006 09:51    Post subject: Reply with quote

sure! Smile Any other suggestions?

Havard
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Sudoku Assistenten Forum Forum Index -> Solving techniques All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group
Protected by Anti-Spam ACP