### Multi Fish

This is a work in progress which was inspired by a landmark post by David Bird
(see here) in which he
describes a simplified method for finding rank zero multi fish with a base set of 4.

For the most common 4 digit base set, the version that I have developed has the following basic steps:

- Select a set of 4 digits.
- Identify the rows and columns that don't contain any of these digits as givens (or solved).
- Count the unsolved cells at the intersection of these rows and columns (=link cells).
- Column links occur in columns containing base set digits, the number of links being 4 minus the number of base set digits in the column.
- Total Links by adding link cells and column links.
- The number of Truths are obtained by multiplying number of rows (in step 2) by 4.
- If Truths == Links then we have a Rank Zero situation
- All non base set digits can then be deleted from the link cells.
- In columns containing base set digits, these can be deleted from cells which can 'see' base set digits in the row.

Similarly, I have coded procedures for base sets of 3 and 5.

This method works just fine for many puzzles posted by Champagne in his data base of potential hardest. Of interest is
that the great majority of puzzles with SK loops is found by this procedure to also have rank zero logic eliminations. The following image
shows the output for the well-known Easter Monster:

(1.......2.9.4...5...6...7...5.9.3.......7.......85..4.7.....6...3...9.8...2.....1;78;tax;Easter-Monster)

Interestingly, after the above eliminations, there follows two naked quads to give the exact same final result as is achieved by
running the SK loop followed by two naked triples.

The following are a small sample of other puzzles that possess rank zero logic as detected by this method

12.3.....4.5...6...7.....2.6..1..3....453.........8..9...45.1.........8......2..7;5;elev;1;G1
1....6.8.......2.....37......1....6.5.6..4..1.3....9...7.9.....8...2......5..8.4.;2542;elev;1699;G1
1.......9.5....2....87...4.2...3......48.5....8.6...7...6..4.5.........1....9.3..;21;elev;11;G1
.....6..94...8.2.....7...1.2.9...8....4.3.9...6.....5.3.8.4.......5......7...1...;31;elev;4;G1
...4......5..8...3..9..2....9..6.3.......4.1...47...2..6....8..8...9...5..1....7.;88;elev;43;G1
...4...8...7..92...6..2.....3.....4...5...9..9....1..2..1..7..5...8...6..4..3....;1968;elev;1819;G1
..3....8.4.........89..31..2...7...6........7..5..8.3....6..3...1...5.9.....4...2;5525;elev;2066;G1
...4...8...6..91......3...42....56...7..4..3...5........1..2...5.....9...8..6...7;49;elev;29;G2
1..........71...6..9..3.4......43..8.....83.....5...2...2....1.5..7......8..6.9..;5406;elev;L543;G2
...4...8...6..91......3...42....56...7..4..3...5........1..2...5.....9...8..6...7;49;elev;29;G2
..3..6.8..5.1.........7.1...7....9.......2..8..8....23.9.5.....6....4.....2....64;5393;elev;2079;G2
..3..67..4...8...6.8.......2......4..9.........6..53....17..6......2..9....6.15..;5410;elev;2086;G2

**Many refinements are required to broaden the scope of this method. The following I have implemented:**

- Not every row that does not contain base set digits has to be counted as a row of Truths.
1......8..5......68.9..21..............57...2..4..8.9.....6...3..1..4.2..7.3.....

- If it turns out that there are 5 link cells in a column, then this is impossible because the five cells would then contain
only 4 digits. Such columns can be changed to a column containing 4 column links.
..34..7...5...9.2.....1....23.....5...1.6.3..8..........469.........8.9....17.6..

- If a row of Truths contains 4 link cells, and a non-link cell in the same row contains only base set digits, then this is impossible
because it would eliminate all digits from that cell. In such a case, this non-link cell can be made a Truth cell, and the row excluded as
a row of Truths.
....5..8...67..1.......3..426.9.............19.7...2...3..4..1......8..5..21..6..
............281.....27.61.......9..5..6.1.8...4.....3...1.7.2..3.......925.....4.
9876.....65....7............4..7..3...89..5.......2..1..58..6......1..2......3..4
..1...5...2.4...6.3....7....6.28........9..2.......4.65.....1...9.8...4...7.....3

- If a base set digit occurs only once in both its row and column, then it can be regarded as a row of Truths, with one less Truth. As such
it will have cell links in its row and column but no column links.
..3.5...9...1..2...8...7.....4....6.3...4...5.7...2.....6.3..9.8......43...8..1..
1....67...5..8......9.....4....9....7....3.2...8...3..3..1...7......261.....4...5

- If a base set digit occurs once in its row and column, but also is the only one in its stack and shute, then then it can be regarded as a
row of Truths, with one less Truth, and with 3 box links for the other 3 base set digits.
98.7.....6.5........7.8.9...7.9..4......3..6......2..1..45..8......6..2......1..3
98.7.....7.6...8....5.6.....6..4.5.....3...9......2..1..4.8.7.....1....3.....9.2.
98.7..6..5...4......3..9.2.7...5.....4.8.......6..1..2..9...23......3..9......8.6
..1.....8.3...7.4.6.....9.........72....15....4.2.3.....9...6...2.3...5.8.......1
..9.....6.1...8.3.2.....7.........1.....73..5.4.8.5.....6.....9.5.3...4.7.....2..

- If two base set digits occur once in their row and column and are in the same box, but also are the only ones in their stack and shute,
then then each can be regarded as a row of Truths, with one less Truth, and with 2 box links for the other 2 base set digits.
..3.....1.2...4.7.6.....8.......7.9....26.....5.3....7..1.....6.9.5...4.8.....3..