Sudoku-SAT

This is a mostly-Haskell (some Bourne Shell) solver for 9x9 Sudoku instances. It works by encoding the instance as a CNF SAT instance, invoking an off-the-shelf SAT solver, and translating the resulting SAT assignment back into a Sudoku solution.