An improved version of the sat solver I wrote for my end of year project at Swansea University.
swanseaSat path/to/cnf/file.cnf
solve a sat problem encoded in a cnf fileswanseaSat --benchmark path/to/folder/with/cnfs/
solve all cnf in a given directory and save the results to a txt file
- works with standard DIMACS CNF format
- makes use of avariable occurance table to speet up unit propagation and pure literal elimination.
- variable occurance based huristic for variable selection.
- implemented a variable occurance table greatly improving the eficiency of the solver.
- generally improved code quality.
- migrated the project to CMAKE from a visual studio solution
- improved the testing (although its still not as thorough as id like)
- fixed some bugs that i found when i improved the testing.
these are some further improvements id like to make to the solver int the future although this will most likley be done in a rewrite.
- more complete CLI interface.
- more eficient memory management.
- a range of variable selection huristics.
- clause learning.
- back jumping.