Fabien, you mention below that generics would help... I encourage you to 
make a fuller description of why/how generics would help and update this 
wiki page to point to it:
https://github.com/golang/go/wiki/ExperienceReports#generics


On Thursday, December 21, 2017 at 8:25:53 PM UTC-5, Fabien wrote:
>
> Short answer : according to the few tests I ran, they are pretty close. 
> You can use any of them, or, even better, both of them.
>
> Long answer :
>
> I have only compared them on about a dozen industrial problems, so take it 
> with a grain of salt, but it's hard to name a winner. Gini is usually a 
> little faster, but when it is slower, it is way slower than Gophersat. Gini 
> is very good (sometimes even better than state-of-the-art C++ solvers, like 
> glucose) on some very easy problems (those that can be solved in about 10 
> to 50 ms), probably because it has a very good parser and low warmup costs. 
> But it is not as good on harder problems, and it can only deal with pure 
> SAT, CNF problems (and they can be exponentially bigger than their 
> pseudo-boolean counterparts).
>
> So, if you must solve hundreds of easy problems in a second, and if your 
> problem is described as a CNF and you have no control over that, picking 
> gini might be a good choice. If your problem is a little harder, or if you 
> have the possibility to describe it as a pseudo-boolean problem, gophersat 
> will probably be better.
>
> Since they are not efficient on the same kinds of problems, using both of 
> them concurrently might be interesting, too. Making them solve the same 
> problem and stop them when an answer was found.
>
> When solving pure CNF problems, the current version of gophersat suffers 
> from the fact that it can natively deal with cardinality constraints and 
> pseudo-boolean constraints: binary clauses take a lot of space in memory, 
> and a lot of time is spent in the solver figuring out whether we are 
> dealing with a clause or a more complex constraint. In the next future, we 
> will probably include the ability to compile an optimized version of the 
> solver for pure sat problems via build tags. Having generics in the 
> language would solve that issue too ;)
>
> Le jeudi 21 décembre 2017 16:44:24 UTC+1, Damian Gryski a écrit :
>>
>> How does it compare to https://github.com/IRIFrance/gini ?
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to