Ready to play?

Play Sudoku!

Forcing Nets

ExtremeClassic + KillerStep 36 of 373 min read

Forcing Nets are the last technique that is still pure logic. You take every candidate of one cell in turn, follow its consequences as far as they go, and look for something all the branches agree on. Whatever they agree on is true, because one of those candidates is the real value. No guessing is involved — you simply examine all the cases instead of one.

What the pattern is

A chain follows a single line of implications. A net does the same but allows branches to split and merge: a conclusion can need two earlier deductions at once, such as "this cell is 4 and that cell is 9, therefore the box has only one place left for 7". That branching is what makes nets stronger than chains, and slower to check.

There are two ways to start, and two ways to finish:

Start fromYou followIt proves
A cell with k candidatesone branch per candidateanything all branches share
A digit with k places in one unitone branch per placeanything all branches share

If every branch produces the same placement, that placement is true. If every branch removes the same candidate, that candidate is dead. And if a single branch runs into a contradiction — a digit twice in one unit, or a cell with nothing left — then that one candidate is false on its own, without needing the others.

When to look for it

Only when everything cheaper has failed: singles, locked sets, fish, wings, chains and locked-set techniques. Nets are expensive to trace and easy to get wrong, so they are a deliberate last logical step, not a habit. Choose a starting cell with two candidates and plenty of bivalue neighbours; the branches stay short and the whole thing stays checkable.

How to apply it, step by step

  1. Refresh all pencil marks. A net built on a stale candidate proves nothing.
  2. Pick a cell with two candidates, or a digit with two places in a unit.
  3. Assume the first option and write out only the placements that are actually forced.
  4. Undo it completely, then do the same for the second option.
  5. Compare the branches. Keep any placement or elimination they share.
  6. If a branch contradicts itself, discard that candidate immediately.

A worked example

Example
r1c1 {2,5}   r1c4 {2,7}   r9c1 {5,7}   r9c4 {1,7,9}

branch 1:  r1c1=2 -> r1c4 not 2 -> r1c4=7 -> r9c4 not 7   (column 4)
branch 2:  r1c1=5 -> r9c1 not 5 -> r9c1=7 -> r9c4 not 7   (row 9)

The cell r1c1 has to be 2 or 5, and both roads end in the same place, so r9c4 loses its 7 and is left with {1,9}. Notice that you never learn what r1c1 is. The branches did their work and were thrown away; only the shared conclusion is kept.

Real nets are longer than this and their branches usually merge — one branch may need two placements to combine before it moves on — but the shape of the argument never changes.

Common mistakes

  • Leaving marks from one branch on the grid when you start the next. Every branch must begin from the same untouched position.
  • Following a "probably" instead of a forced placement. Only singles and locked eliminations may be written.
  • Missing a candidate of the starting cell. Skip one branch and the agreement is worthless.
  • Reading a contradiction in one branch as proof of the other branches' conclusions.

Where you meet it

Forcing Nets are what our hardest grids are built to demand. Expect them in Legendary puzzles, and only after chain techniques like 3D Medusa have been tried. Anything that a net solves, a shorter technique could in principle solve too — the net is what you use when you cannot find that shorter technique.