Skip to content

ltentrup/MiniSat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Swift Bindings for MiniSat

A swifty wrapper around the MiniSat SAT solver by Niklas Een and Niklas Sorensson.

Example Usage

import MiniSat

let minisat = MiniSat()
    
let a = minisat.new()
let b = minisat.new()
    
minisat.add(clause: [a, b])
minisat.add(clause: [-b])
minisat.solve() // -> .satisfiable
minisat.value(of: a) // -> .positive
minisat.value(of: b) // -> .negative
    
minisat.assume(literal: b)
minisat.solve() // -> .unsatisfiable
minisat.failed(literal: a) // -> false
minisat.failed(literal: b) // -> true
    
minisat.solve() // -> .satisfiable

Installation

Swift Package Manager

.Package(url: "https://github.com/ltentrup/MiniSat.git", majorVersion: 0, minor: 1)

About

Swift Bindings for MiniSat

Resources

License

Stars

Watchers

Forks

Packages

No packages published