Name | Modified | Size | Downloads / Week |
---|---|---|---|
readme.txt | 2011-01-20 | 1.8 kB | |
solver_1.1.pl | 2011-01-20 | 21.6 kB | |
cnf_generator_1.1.pl | 2011-01-20 | 2.7 kB | |
solver_notes_1.1.txt | 2011-01-20 | 1.8 kB | |
solver_notes_1.0.txt | 2011-01-20 | 1.8 kB | |
solver_1.0.pl | 2010-12-31 | 15.7 kB | |
cnf_generator.pl | 2010-12-31 | 2.5 kB | |
Totals: 7 Items | 47.9 kB | 0 |
Code to generate large 3 CNF equations Code to solve large 3 CNF equations Solving does not employ VSAT, but VSAT is optional at the end to check the solution L - # of 3CNF clauses N - # of terms R - L/N - ratio of clauses to terms T - run time N R T R T R T R T R T R T 2^8 1 .016s 2 .034s 4 .070s 4.2 -- 4.25 .054 5 - 2^10 1 .030s 2 .114s 4 ----- 4.2 -- 4.25 -- 5 - 2^12 1 .086s 2 .122s 4 ------ 4.2 2.830s 4.25 -- 5 - 2^14 1 .404s 2 .526s 4 ------ 2^16 1 1.711s 2 7.679s 4 ------ 2^18 1 6.162s 2 42.825s 2^20 1 29.515s different times come from different equations, but order of magnitude remains the same. times to beat (based on Sat09 competition) N R T 2000 4.2 .08s 4000 4.2 1.8s 10000 4.2 5s 12000 4.2 20s 14000 4.2 20s 16000 4.2 20s The equations are stored in files so that the generation time does impact the solving time. The bottlenecks so far are: loading the file, GSAT-like selections (especially in large equations). Linear performance has been acheived for large (2^16+) equations but it is slow linear performance. Previously, fruitless entailments posed a problem. I greatly restricted this by reducing the entailment queue based on the literals' 2CNF membership. I also add a threshold value that imposes further limits and increases when entailment increases so as to dampen it (severely after 8000). To do: add stack features to climb up tree farther off to do: convert file format to a binary file to save space and speed load time write this in C++ (ugh)