This repository is a SAT Solver implemented in Java, developed as a coursework project for City University's Algorithms module (IN1002).
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- Java JDK 19 or above (Prior versions may work, but have not been tested).
- Clone the repository using:
git clone https://github.com/Supermarcel10/JavaSATSolver.git
- Navigate to the project directory:
cd JavaSATSolver
- Compile the Java files:
javac *.java
To run the SAT Solver, execute the following command:
java Main
This SAT Solver utilises the Davis–Putnam–Logemann–Loveland (DPLL) algorithm to determine the satisfiability of a propositional logic formula.
Feel free to fork the project and submit your contributions via pull requests. This project is nowhere near the best efficiency it could be, so feel free to improve it!
This project is licensed under the MIT Licence.