HoDoKu Finned Jellyfish

Finned Jellyfish: row 1, row 5, row 6, row 8 and col B, col C, col E, col I on 3 (E4-3)

All the possible positions of the value 3 in four base rows are in the same four cover cols; except row 5 and row 6 which have extra fins D5-3, D6-3, F5-3, but each elimination sees all of the fins.

Hence if any of the fins were 3 then E4-3 still could not be 3, and 3 must either be in the fish or in one of the fins, so either way we can remove 3 from covers except bases that see all of the fins.

Therefore we can remove E4-3.

Explanation

Finned fish increase the utility of the Fish concept by expanding the number of hints produced, at the cost of limited eliminations. A prima facea look at fins says it breaks the core Fish covenant: N bases have only N places for value, hence the value is "locked into" these bases, but adding the restriction that each elimination sees all of the fins props-up the whole deal, so it's logically valid, it's just a bit slow Redge.

Note that BasicFisherman is S__TLOADS faster than ComplexFisherman coz it's much simpler. A genius would work-out how to find finned fish efficiently. I'm just a stupid programmer. This is the best I can do: A bit s__t; and it only gets worse from here, in terms of complexity, if not time.