Skip to content

Forcing Nets

ExtremeClassic + KillerStep 37 of 384 min read

Forcing Nets, the general form of forcing chains in Sudoku, 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 follows one such line for every option of the starting cell or unit, and in the general case a line can split again: 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". Checking all the options 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 Almost Locked Sets. 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

Starting from a cell

  1. Easier techniques are used up. Look at H1, which can only be 1, 5 or 7.

  2. H1 must be 1, 5 or 7. Try each value in turn and watch the 7 in C1.

  3. Branch 1: H1 = 7. C1 shares column 1 with H1, so it cannot be 7.

  4. Branch 2: H1 = 1. Then A1 cannot be 1, so A1 is 7, and C1 cannot be 7 (column 1 again).

  5. Branch 3: H1 = 5. E1 loses 5 (column 1), so F3 is the only place for 5 in box 4.

    With F3 = 5, F8 is the only place for 8 in row F. Then C8 cannot be 8, so C1 is the only 8 in row C.

    C1 = 8, so C1 is not 7.

  6. The trial values are cleared. All three branches end with C1 not being 7.

    7 removed from C1 because every value of H1 rules it out.

Easier techniques are used up. Look at H1, which can only be 1, 5 or 7.

H1 holds , and the target is the 7 in C1. Each value of H1 is followed in turn:

  • H1 = 7: C1 shares column 1 with H1, so it is not 7.
  • H1 = 1: A1 cannot be 1, so A1 is 7, and C1 is not 7 for the same column reason.
  • H1 = 5: E1 loses its 5, so F3 is the only 5 in box 4. Then F8 is the only 8 in row F, C8 cannot be 8, and C1 is the only 8 left in row C. C1 = 8, so C1 is not 7.

All three branches end with C1 not being 7, so C1 loses its 7. You never learn what H1 is: the branches did their work and were thrown away.

Starting from a digit in a unit

  1. Easier techniques are used up. Look at the 7s in box 7.

  2. Box 7 needs a 7, and it can only go in G2, H2 or J3. Try each place and watch the 7 in A2.

  3. Branches 1 and 2: if the 7 is in G2 or in H2, A2 cannot be 7, because all three cells are in column 2.

  4. Branch 3: J3 = 7. Then J3 is not 5, and A3 becomes the only place for 5 in column 3.

    With A3 = 5, A2 is the only place for 1 in row A. A2 = 1, so it is not 7.

  5. The trial values are cleared. Wherever box 7 puts its 7, A2 ends up without a 7.

    7 removed from A2.

Easier techniques are used up. Look at the 7s in box 7.

Box 7 needs a 7, and it can go only in G2, H2 or J3. The target is the 7 in A2:

  • 7 in G2 or H2: A2 shares column 2 with both cells, so it is not 7.
  • 7 in J3: J3 is then not 5, so A3 is the only 5 in column 3. With A3 = 5, A2 is the only 1 in row A, so A2 = 1 and is not 7.

Wherever box 7 puts its 7, A2 has no 7, so A2 loses it.

In both boards every branch reaches the same result, which is the whole argument. Real nets can also branch further inside a branch, and there a conclusion may need two earlier deductions at once.

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.

Ready to play?

Play Sudoku!