Methods to Solve Sudoku

A number game (Sudoku) is a puzzle in which missing numbers are to be filled into a 9 by 9 grid of squares
which are subdivided into 3 by 3 boxes so that every row, every column, and every box contains the numbers 1 through 9.
Methods to solve Sudoku puzzles (or Create Sudoku puzzles) include but not limited to:

Basic Solving Sudoku Methods

OneChoice
a.k.a Sole Candidate, or
Only Candidate, or
Naked Single.
Elimination
a.k.a Hidden Single,
or Loner.

Basic solving sudoku methods do not need you to write down the candidate values for empty squares.
Usually very easy or easy Sudoku puzzles can be solved by using basic solving methods.

Advanced Solving Sudoku Methods

Subset2
a.k.a Pair
or Naked Pair,
or Naked Twins.

SubsetPosition2
a.k.a Hidden Pair
or Hidden Twins

Interaction
a.k.a Box/Row Claim
or Intersection,
or Locked Candidates.



Advanced solving sudoku methods need you to
write down the candidate values for
blank/empty squares.
Usually medium, hard, and very hard Sudoku puzzles
need to be solved using both basic
and advanced solving sudoku methods.

Solve Sudoku  Last Resort

Guessing or Exhaustive Search
a.k.a. Guessandcheck, nishio (Japanese name),
or ConflictElimination & Exhaustive Search ,
or Brute Force

Guessing method needs you to write down the
candidate values for blank/empty squares.
Usually very hard Sudoku puzzles need to be solved
using basic, advanced solving sudoku methods,
and guessing method.

Our solver applies methods in the following order:

OneChoice

RowElimination, ColumnElimination, BoxElimination

Subset2Row, Subset2Col, Subset2Box

SubsetPosition2Row, SubsetPosition2Col, SubsetPosition2Box

InteractionRowBox, InteractionColBox, InteractionBoxRow, InteractionBoxCol

Subset3Row, Subset3Col, Subset3Box, SubsetPosition3Row

SubsetPosition3Col, SubsetPosition3Box

Subset4Row,
Subset4Col, Subset4Box

SubsetPosition4Row, SubsetPosition4Col, SubsetPosition4Box

DoubleRowsOneDigitCheck(XWing), DoubleColsOneDigitCheck(XWing)

TripleRowsOneDigitCheck, TripleColsOneDigitCheck

QuadrRowsOneDigitCheck, QuadrColsOneDigitCheck

XYWingRowBox, XYWingColBox, XYWingRowCol

XYZWing
RowBox, XYZWingRowBox

ConflictElimination, Exhaustive Search


