Skip to content

yugr/sudoku

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

A simple Sudoku solver that I've done to experiment with SAT/SMT solvers. It currently only runs for boards up to 36x36 (k = 6). For anything bigger, MiniSAT chokes anyway.

Build

THIS WAS ONLY TESTED ON CYGWIN!!!

Install Haskell Platform and do

  $ make clean all -j4
  $ make check

To profile, export PROFILE=1 and rebuild.

Investigation TODO

Code TODO

  • pass several lists to CNF instead of one (this should speed things up because we won't copy data when concatting rules)
  • store temp files to separate folder
  • Haskell coding style
  • write Haddocks
  • run for inputs up to 100x100 (k=10); ideas:
    • understand where is all the memory going to
    • generate all rules for each cell in one function
    • use streams

About

A simple Sudoku solver that I've done to experiment with SAT/SMT solvers.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published