An open API service indexing awesome lists of open source software.

https://github.com/limo1996/programverification1

Boolean formula to CNF conversion, DPLL and CDCL SAT solving algorithms
https://github.com/limo1996/programverification1

cdcl-algorithm cnf cnf-clauses dpll-algorithm ethz sat-solver

Last synced: about 2 months ago
JSON representation

Boolean formula to CNF conversion, DPLL and CDCL SAT solving algorithms

Awesome Lists containing this project

README

          

# Program Verification: Project 1

[![build status](/../badges/master/build.svg)](/../commits/master)

Structure of the repository:

+ `SatSolverProject` – the directory that contains the initial files
of the project.
+ `scala-smtlib` – the directory that contains the library for parsing
input files in the SMTLIB format.
+ `docker` – the definition of the Docker image used by the GitLab
build. It is provided for those who would like to reproduce the
build environment on their computers. You can safely ignore this
folder.

Quick start (assuming you have SBT installed):

1. Run all tests:

```
cd SatSolverProject
sbt
test
```

2. Run a specific configuration of your solver on a `smt2` file:

```
cd SatSolverProject
sbt
run DPLLBaseline src/test/resources/test.smt2
```

Here, `DPLLBaseline` is the configuration name that is parsed by
the `SolverFactory.getConfigurationFromString` method.

3. Run a specific configuration of your solver on a `cnf` file:

```
cd SatSolverProject
sbt
run DPLLBaseline src/test/resources/test.cnf --cnf
```