minisat-rust icon indicating copy to clipboard operation
minisat-rust copied to clipboard

SAT Competition

Open ahorn opened this issue 8 years ago • 4 comments

Hi,

Out of curiosity, have you considered submitting minisat-rust to the upcoming SAT Competition? If nothing else, it may provide some interesting data points how minisat-rust compares to the C++ implementation of minisat. It might also stir up some more interest in your project, although I don't know for sure of course. Either way, it's just a thought.

All best wishes, A

ahorn avatar Mar 03 '17 04:03 ahorn

It's probably not very interesting to submit it as is because it is designed to generate the same output verbatim as original minisat for same input file and also still lacks a few important implementation details like proper clause allocation (Rust's heap API is still unstable). I actually thought about adding a few features from more modern solvers and submitting it just to show that "Rust can do it too", but, again, clause allocation, and me not being any kind of modern SAT solver expert (my experience with minisat is from my M.Sc. days more than 7 years ago).

mishun avatar Mar 05 '17 22:03 mishun

Looks like the API has stabilized

dralley avatar Aug 08 '19 13:08 dralley

For those interested, clause allocation in Rust is also discussed by @jix in a recent blog post.

ahorn avatar Aug 09 '19 04:08 ahorn

Yeah, I've seen std::alloc. I actually implemented custom allocator that is very similar to original minisat's one just a few days ago: https://github.com/mishun/minisat-rust/blob/master/src/sat/formula/allocator.rs Although, it still takes a few bytes per clause more

mishun avatar Aug 12 '19 00:08 mishun