Basic Fish
Basic Fish
What Are Fish Patterns in Sudoku?
Fish patterns are a family of single-digit techniques that exploit how a digit's candidates align across rows and columns. Every fish pattern works the same way: you find a set of rows (or columns) where a particular digit's candidates are confined to a limited number of columns (or rows), and then you eliminate candidates elsewhere.
Each fish pattern focuses on exactly one digit at a time. You look at the distribution of a single digit across the entire grid. All four basic fish share a single underlying algorithm. They differ only in size.
The Core Principle: Pigeonhole Logic on Rows and Columns
For a single digit, if you can find N rows where that digit's candidates are confined to no more than N columns, then those columns can only receive that digit from the selected rows. If the union is fewer than N columns, the rows already contain a contradiction, so a valid fish effectively uses exactly N cover columns.
Each of the N rows must place the digit exactly once. The digit in each row must go into one of the cover columns. Since there are N rows and N usable cover columns, the cover columns are fully accounted for by the base rows. Any candidate for that digit outside the base rows but inside the cover columns can be removed.
The same logic works in reverse with columns as the base and rows as the cover. You should check both directions when scanning.
X-Wing: The 2x2 Fish Pattern
The X-Wing uses N=2: two rows mapping to two columns. An X-Wing for a digit occurs when exactly two rows each contain that digit as a candidate in the same two columns. The four cells form a rectangle. The digit can be eliminated from all other cells in those two columns.
The same pattern works column-based. X-Wing is classified at difficulty Level 4 (Moderate).
Swordfish: The 3x3 Fish Pattern
Swordfish extends the fish logic to N=3: three rows mapping to three columns. Not every row needs candidates in all three columns. The requirement is only that the union of all candidate columns totals exactly three.
Swordfish is rated at Level 4 (Moderate), the same as X-Wing. The underlying logic is identical.
Jellyfish: The 4x4 Fish Pattern
Jellyfish uses N=4: four rows mapping to four columns. Individual rows may have candidates in only two, three, or four of the four columns.
Jellyfish is classified at Level 7 (Very Hard). It appears infrequently because the specific alignment of four rows into exactly four columns is uncommon. There are 126 ways to choose 4 rows from 9, so a systematic manual search requires patience.
Squirmbag: The 5x5 Fish Pattern
The Squirmbag uses N=5: five rows mapping to five columns. Rated at Level 9 (Master), it is extraordinarily rare in practice.
A Squirmbag has a complementary Jellyfish in the rows and columns not used by the 5-fish. Because the complementary Jellyfish is smaller, most solvers and many solving engines will report the Jellyfish first when both explanations are available. That makes Squirmbag more useful as a theoretical extension than as a practical hand-solving target.
This complementarity principle extends further: a 6-fish complements a Swordfish, a 7-fish complements an X-Wing, and an 8-fish complements a hidden single. N=5 is the practical maximum for named basic fish.
How to Find Fish Patterns in a Puzzle
Step 1: Choose a digit that still has multiple unsolved positions.
Step 2: Map candidate positions by row. For your chosen digit, list which columns contain it in each row. Rows with only 2 or 3 positions are the most promising.
Step 3: Look for column overlap. Check whether any combination of N rows has candidates spanning exactly N columns.
Step 4: Verify eliminations exist in the cover columns.
Step 5: Repeat for column-based fish.
Focus on digits where several rows have exactly two candidate positions. A row with two candidates is the building block of fish patterns.
Difficulty Progression of Fish Patterns
X-Wing: N=2, Level 4, Moderate
Swordfish: N=3, Level 4, Moderate
Jellyfish: N=4, Level 7, Very Hard
Squirmbag: N=5, Level 9, Master
The jump from Swordfish (Level 4) to Jellyfish (Level 7) reflects the significant increase in difficulty for human solvers.
Relationship to Advanced Fish Variants
The basic fish are "unfinned" or "standard" fish. Advanced variants include:
Finned Fish: An extra candidate (the "fin") exists outside the expected columns. Finned variants exist for all sizes at Levels 7-9.
Sashimi Fish: A finned fish where removing the fin would leave a hidden single rather than a fish. Levels 7-9.
Franken Fish: Blocks serve as defining houses alongside rows and columns. Levels 10-11.
Mutant Fish: Any combination of houses can serve as base and cover sets. The most general form.
The core principle -- N houses confining a digit to N cross-houses -- remains the same across all variants.
Summary
The basic fish family -- X-Wing, Swordfish, Jellyfish, and Squirmbag -- is built on a single principle: N rows confining a digit to N columns implies eliminations in those columns. These four techniques scale from the accessible X-Wing to the rarely seen Squirmbag and form the foundation for finned fish, sashimi fish, and Franken fish.
All fish patterns are the same technique at different scales. If you understand why an X-Wing works, you understand why a Squirmbag works.