Skip to main content

SAT Solver

Solve CNF Boolean formulas in the browser and inspect one satisfying assignment when the instance is satisfiable.

Solve a CNF formula

Example symbolic input: `A B` on one line and `!A C` on the next line. Example DIMACS: `1 -2 0`.

Status

-

Assignment

-

How to use this tool

A quick workflow so you can get the result you need without guesswork.

  1. 1

    Enter clauses in CNF using one clause per line, such as `A B` for `(A ∨ B)` and `!A C` for `(!A ∨ C)`.

  2. 2

    Optionally paste DIMACS-style integer clauses ending with `0`; the parser accepts those as well.

  3. 3

    Click Solve Formula to determine whether the formula is satisfiable and inspect one satisfying assignment if it exists.

Useful examples

Practical cases where this utility saves time and reduces mistakes.

Logic coursework

Students can experiment with CNF formulas and see how satisfying assignments change as clauses are added or removed.

Constraint prototyping

Developers can model small Boolean constraints quickly before moving to a heavier solver environment.

Interview and puzzle prep

Use the solver to validate hand-built clauses for puzzle reductions and SAT-style exercises.

Frequently asked questions

Short answers to the most common questions about the calculator above.

What format should I use for the SAT solver?

You can enter one clause per line using symbols like A, !A, B, and C, or use DIMACS-like integer literals ending each clause with 0.

What does the solver return?

It returns either UNSAT if no assignment exists or SAT with one satisfying assignment for the variables it discovered.

Which algorithm does the page use?

It uses a browser-based DPLL approach with unit propagation and pure literal elimination for small and medium CNF examples.

Is this meant for very large industrial SAT instances?

No. It is best suited to educational use, debugging, and lightweight constraint experiments rather than large benchmark instances.

Solve CNF Formulas with a Lightweight Browser-Based SAT Solver

This SAT solver is designed for Boolean satisfiability problems written in conjunctive normal form. You can enter clauses in a simple symbolic format or as DIMACS-style integer literals, then solve the formula directly in your browser. The page returns either UNSAT or a concrete satisfying assignment.

That makes it useful for logic study, SAT reductions, puzzle modeling, and quick constraint experiments. The implementation uses a DPLL-style search with common simplification steps, which is a good fit for interactive educational examples.

Useful for Teaching, Debugging, and Small Constraint Models

If you are learning about satisfiability, it helps to work with formulas you can inspect easily. A small online SAT solver gives you a fast feedback loop for adding or removing clauses and watching the satisfiability result change.

It is also convenient when you want to prototype a Boolean model without leaving the browser or setting up a dedicated solver package first.