Gini Save

A fast SAT solver

Project README

⊧ Gini: A fast SAT solver.

The Gini sat solver is a fast, clean SAT solver written in Go. It is to our knowledge the first ever performant pure-Go SAT solver made available.

GoDoc

Google Group

This solver is fully open source, originally developped at IRI France.

Build/Install

For the impatient:

go install github.com/go-air/gini/...@latest

I recommend however building the package github.com/go-air/gini/internal/xo with bounds checking turned off. This package is all about anything-goes performance and is the workhorse behind most of the gini sat solver. It is also extensively tested and well benchmarked, so it should not pose any safety threat to client code. This makes a signficant speed difference (maybe 10%) on long running problems.

The SAT problem in 5 minutes

The SAT Problem

Usage

Our user guide shows how to solve SAT problems, circuits, do Boolean optimisation, use concurrency, using our distributed CRISP protocol, and more.

Citing Gini

Zenodo DOI based citations and download: DOI

BibText:

@misc{scott_cotton_2019_2553490,
  author       = {Scott  Cotton},
  title        = {go-air/gini: Sapeur},
  month        = jan,
  year         = 2019,
  doi          = {10.5281/zenodo.2553490},
  url          = {https://doi.org/10.5281/zenodo.2553490}
}
Open Source Agenda is not affiliated with "Gini" Project. README Source: go-air/gini

Open Source Agenda Badge

Open Source Agenda Rating