https://github.com/davidgonmar/sat-ts
A DPLL-based SAT solver written in TypeScript, powered by Bun.
https://github.com/davidgonmar/sat-ts
ai bun dpll-algorithm dpll-solver logic typescript
Last synced: 14 days ago
JSON representation
A DPLL-based SAT solver written in TypeScript, powered by Bun.
- Host: GitHub
- URL: https://github.com/davidgonmar/sat-ts
- Owner: davidgonmar
- License: mit
- Created: 2023-12-03T18:44:19.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-04T01:27:11.000Z (over 2 years ago)
- Last Synced: 2025-03-25T23:18:43.255Z (about 1 year ago)
- Topics: ai, bun, dpll-algorithm, dpll-solver, logic, typescript
- Language: TypeScript
- Homepage:
- Size: 1.67 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 💡sat-ts
## Introduction
A DPLL-based SAT solver written in TypeScript, powered by Bun.
## Usage
### Requirements
You need to have Bun installed on your system. You can find more information at https://bun.sh/.
### Running the solver
First, clone the repository and install dependencies:
```bash
git clone https://github.com/davidgonmar/sat-ts.git
cd sat-ts
bun install
```
Then, you can run the solver with:
```bash
bun sat-ts
```
The program accepts CNF files in the DIMACS format.
### Example
```bash
bun sat-ts path/to/file.cnf
# Example output
Finished with result: SAT
Parsed in: 0.123 seconds
Solved in: 0.456 seconds
Total time: 0.579 seconds
```
### Testing
Tests can be run with:
```bash
bun test
```
Tests for the solver use example .cnf files from the [SATLIB Benchmark Problems](https://www.cs.ubc.ca/~hoos/SATLIB/benchm.html) mainly.
### Linting and formatting
The project uses ESLint for linting. It can be run with:
```bash
bun lint
bun format
```
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.