A non-branching sudoku-solver using "transitive-chain analysis"