A simple python code which reduces the Sudoku to SAT and solves it using minisat SAT solver.
- Python 3
- minisat solver from https://github.com/niklasso/minisat
- tkinter with dependencies
Note: Complete installation instructions for MiniSat Solver are mentioned in it's respective repository but in short:
- clone minisat
git clone https://github.com/niklasso/minisat.git
- cd to minisat directory
cd minisat
- install using
sudo make install
The Sudoku is input block wise, the first row of puzzle array contains the first block of Sudoku, and so on. The blanks in Sudoku are replaced by zeros(0).