Boolean satisfiability problem facts for kids
The Boolean satisfiability problem is a kind of problem in math-based logic. In propositional logic, a formula is satisfiable if the variables it uses can be given values so that it becomes true. If however for a given formula, no values exist so that the formula becomes true and the formula will always be false no matter what values its variables have it is called "unsatisfiable".
This problem is also known as Boolean or propositional satisfiability. Computer scientists usually call it SAT. Complexity theory believes that the formula should be in a special form, known as conjunctive normal form. A formula that is in this form has clauses. Clauses are joined by a "logical and". Each clause has several literals. They are joined by a "logical or". A literal and its complement cannot appear in the same clause. The problem may also have other names. The names depend on what the logical formula looks like. The names also depend on how many variables are used per clause.
A formula that satisfies 3SAT looks like the following:
- (A1 OR B1 OR C1) AND
- (A2 OR B2 OR C2) AND
- (A3 OR B3 OR C3) AND ...
In this case (A1 OR B1 OR C1) is an example for a clause, and B1 is one of the literals of this clause.
At the beginning of the 1970s, Stephen Cook and Leonid Levin showed that the problem is NP-complete. This is known as the Cook–Levin theorem.
The problem 3SAT uses three variables per clause. It is one of the 21 NP-complete problems. They were defined by Richard Karp in 1972.
Images for kids
-
Left: Schaefer's reduction of a 3-SAT clause x ∨ y ∨ z. The result of R is TRUE (1) if exactly one of its arguments is TRUE, and FALSE (0) otherwise. All 8 combinations of values for x,y,z are examined, one per line. The fresh variables a,...,f can be chosen to satisfy all clauses (exactly one green argument for each R) in all lines except the first, where x ∨ y ∨ z is FALSE. Right: A simpler reduction with the same properties.
See also
In Spanish: Problema de satisfacibilidad booleana para niños