
In mathematical logic, a formula is satisfiable if it is true under some assignment of values to its variables. For example, the formula is satisfiable because it is true when and , while the formula is not satisfiable over the integers. The dual concept to satisfiability is validity; a formula is valid if every assignment of values to its variables makes the formula true. For example, is valid over the integers, but is not.
Formally, satisfiability is studied with respect to a fixed logic defining the syntax of allowed symbols, such as first-order logic, second-order logic or propositional logic. Rather than being syntactic, however, satisfiability is a semantic property because it relates to the meaning of the symbols, for example, the meaning of in a formula such as . Formally, we define an interpretation (or model) to be an assignment of values to the variables and an assignment of meaning to all other non-logical symbols, and a formula is said to be satisfiable if there is some interpretation which makes it true. While this allows non-standard interpretations of symbols such as , one can restrict their meaning by providing additional axioms. The satisfiability modulo theories problem considers satisfiability of a formula with respect to a formal theory, which is a (finite or infinite) set of axioms.
Satisfiability and validity are defined for a single formula, but can be generalized to an arbitrary theory or set of formulas: a theory is satisfiable if at least one interpretation makes every formula in the theory true, and valid if every formula is true in every interpretation. For example, theories of arithmetic such as Peano arithmetic are satisfiable because they are true in the natural numbers. This concept is closely related to the consistency of a theory, and in fact is equivalent to consistency for first-order logic, a result known as Gödel's completeness theorem. The negation of satisfiability is unsatisfiability, and the negation of validity is invalidity. These four concepts are related to each other in a manner exactly analogous to Aristotle's square of opposition.
The problem of determining whether a formula in propositional logic is satisfiable is decidable, and is known as the Boolean satisfiability problem, or SAT. In general, the problem of determining whether a sentence of first-order logic is satisfiable is not decidable. In universal algebra, equational theory, and automated theorem proving, the methods of term rewriting, congruence closure and unification are used to attempt to decide satisfiability. Whether a particular theory is decidable or not depends whether the theory is variable-free and on other conditions.
Reduction of validity to satisfiability
For classical logics with negation, it is generally possible to re-express the question of the validity of a formula to one involving satisfiability, because of the relationships between the concepts expressed in the above square of opposition. In particular φ is valid if and only if ¬φ is unsatisfiable, which is to say it is false that ¬φ is satisfiable. Put another way, φ is satisfiable if and only if ¬φ is invalid.
For logics without negation, such as the positive propositional calculus, the questions of validity and satisfiability may be unrelated. In the case of the positive propositional calculus, the satisfiability problem is trivial, as every formula is satisfiable, while the validity problem is co-NP complete.
Propositional satisfiability for classical logic
In the case of classical propositional logic, satisfiability is decidable for propositional formulae. In particular, satisfiability is an NP-complete problem, and is one of the most intensively studied problems in computational complexity theory.
Satisfiability in first-order logic
For first-order logic (FOL), satisfiability is undecidable. More specifically, it is a co-RE-complete problem and therefore not semidecidable. This fact has to do with the undecidability of the validity problem for FOL. The question of the status of the validity problem was posed firstly by David Hilbert, as the so-called Entscheidungsproblem. The universal validity of a formula is a semi-decidable problem by Gödel's completeness theorem. If satisfiability were also a semi-decidable problem, then the problem of the existence of counter-models would be too (a formula has counter-models iff its negation is satisfiable). So the problem of logical validity would be decidable, which contradicts the Church–Turing theorem, a result stating the negative answer for the Entscheidungsproblem.
Satisfiability in model theory
In model theory, an atomic formula is satisfiable if there is a collection of elements of a structure that render the formula true. If A is a structure, φ is a formula, and a is a collection of elements, taken from the structure, that satisfy φ, then it is commonly written that
- A ⊧ φ [a]
If φ has no free variables, that is, if φ is an atomic sentence, and it is satisfied by A, then one writes
- A ⊧ φ
In this case, one may also say that A is a model for φ, or that φ is true in A. If T is a collection of atomic sentences (a theory) satisfied by A, one writes
- A ⊧ T
Finite satisfiability
A problem related to satisfiability is that of finite satisfiability, which is the question of determining whether a formula admits a finite model that makes it true. For a logic that has the finite model property, the problems of satisfiability and finite satisfiability coincide, as a formula of that logic has a model if and only if it has a finite model. This question is important in the mathematical field of finite model theory.
Finite satisfiability and satisfiability need not coincide in general. For instance, consider the first-order logic formula obtained as the conjunction of the following sentences, where and
are constants:
The resulting formula has the infinite model , but it can be shown that it has no finite model (starting at the fact
and following the chain of
atoms that must exist by the second axiom, the finiteness of a model would require the existence of a loop, which would violate the third and fourth axioms, whether it loops back on
or on a different element).
The computational complexity of deciding satisfiability for an input formula in a given logic may differ from that of deciding finite satisfiability; in fact, for some logics, only one of them is decidable.
For classical first-order logic, finite satisfiability is recursively enumerable (in class RE) and undecidable by Trakhtenbrot's theorem applied to the negation of the formula.
Numerical constraints
Numerical constraints[clarify] often appear in the field of mathematical optimization, where one usually wants to maximize (or minimize) an objective function subject to some constraints. However, leaving aside the objective function, the basic issue of simply deciding whether the constraints are satisfiable can be challenging or undecidable in some settings. The following table summarizes the main cases.
Constraints | over reals | over integers |
---|---|---|
Linear | PTIME (see linear programming) | NP-complete (see integer programming) |
Polynomial | decidable through e.g. Cylindrical algebraic decomposition | undecidable (Hilbert's tenth problem) |
Table source: Bockmayr and Weispfenning.: 754
For linear constraints, a fuller picture is provided by the following table.
Constraints over: | rationals | integers | natural numbers |
---|---|---|---|
Linear equations | PTIME | PTIME | NP-complete |
Linear inequalities | PTIME | NP-complete | NP-complete |
Table source: Bockmayr and Weispfenning.: 755
See also
- 2-satisfiability
- Boolean satisfiability problem
- Circuit satisfiability
- Karp's 21 NP-complete problems
- Validity
- Constraint satisfaction
Notes
- Boolos, Burgess & Jeffrey 2007, p. 120: "A set of sentences [...] is satisfiable if some interpretation [makes it true].".
- Franz Baader; Tobias Nipkow (1998). Term Rewriting and All That. Cambridge University Press. pp. 58–92. ISBN 0-521-77920-0.
- Baier, Christel (2012). "Chapter 1.3 Undecidability of FOL". Lecture Notes — Advanced Logics. Technische Universität Dresden — Institute for Technical Computer Science. pp. 28–32. Archived from the original (PDF) on 14 October 2020. Retrieved 21 July 2012.
- Wilifrid Hodges (1997). A Shorter Model Theory. Cambridge University Press. p. 12. ISBN 0-521-58713-1.
- Alexander Bockmayr; Volker Weispfenning (2001). "Solving Numerical Constraints". In John Alan Robinson; Andrei Voronkov (eds.). Handbook of Automated Reasoning Volume I. Elsevier and MIT Press. ISBN 0-444-82949-0. (Elsevier) (MIT Press).
References
- Boolos, George; Burgess, John; Jeffrey, Richard (2007). Computability and Logic (5th ed.). Cambridge University Press.
Further reading
In mathematical logic a formula is satisfiable if it is true under some assignment of values to its variables For example the formula x 3 y displaystyle x 3 y is satisfiable because it is true when x 3 displaystyle x 3 and y 6 displaystyle y 6 while the formula x 1 x displaystyle x 1 x is not satisfiable over the integers The dual concept to satisfiability is validity a formula is valid if every assignment of values to its variables makes the formula true For example x 3 3 x displaystyle x 3 3 x is valid over the integers but x 3 y displaystyle x 3 y is not Formally satisfiability is studied with respect to a fixed logic defining the syntax of allowed symbols such as first order logic second order logic or propositional logic Rather than being syntactic however satisfiability is a semantic property because it relates to the meaning of the symbols for example the meaning of displaystyle in a formula such as x 1 x displaystyle x 1 x Formally we define an interpretation or model to be an assignment of values to the variables and an assignment of meaning to all other non logical symbols and a formula is said to be satisfiable if there is some interpretation which makes it true While this allows non standard interpretations of symbols such as displaystyle one can restrict their meaning by providing additional axioms The satisfiability modulo theories problem considers satisfiability of a formula with respect to a formal theory which is a finite or infinite set of axioms Satisfiability and validity are defined for a single formula but can be generalized to an arbitrary theory or set of formulas a theory is satisfiable if at least one interpretation makes every formula in the theory true and valid if every formula is true in every interpretation For example theories of arithmetic such as Peano arithmetic are satisfiable because they are true in the natural numbers This concept is closely related to the consistency of a theory and in fact is equivalent to consistency for first order logic a result known as Godel s completeness theorem The negation of satisfiability is unsatisfiability and the negation of validity is invalidity These four concepts are related to each other in a manner exactly analogous to Aristotle s square of opposition The problem of determining whether a formula in propositional logic is satisfiable is decidable and is known as the Boolean satisfiability problem or SAT In general the problem of determining whether a sentence of first order logic is satisfiable is not decidable In universal algebra equational theory and automated theorem proving the methods of term rewriting congruence closure and unification are used to attempt to decide satisfiability Whether a particular theory is decidable or not depends whether the theory is variable free and on other conditions Reduction of validity to satisfiabilityFor classical logics with negation it is generally possible to re express the question of the validity of a formula to one involving satisfiability because of the relationships between the concepts expressed in the above square of opposition In particular f is valid if and only if f is unsatisfiable which is to say it is false that f is satisfiable Put another way f is satisfiable if and only if f is invalid For logics without negation such as the positive propositional calculus the questions of validity and satisfiability may be unrelated In the case of the positive propositional calculus the satisfiability problem is trivial as every formula is satisfiable while the validity problem is co NP complete Propositional satisfiability for classical logicIn the case of classical propositional logic satisfiability is decidable for propositional formulae In particular satisfiability is an NP complete problem and is one of the most intensively studied problems in computational complexity theory Satisfiability in first order logicFor first order logic FOL satisfiability is undecidable More specifically it is a co RE complete problem and therefore not semidecidable This fact has to do with the undecidability of the validity problem for FOL The question of the status of the validity problem was posed firstly by David Hilbert as the so called Entscheidungsproblem The universal validity of a formula is a semi decidable problem by Godel s completeness theorem If satisfiability were also a semi decidable problem then the problem of the existence of counter models would be too a formula has counter models iff its negation is satisfiable So the problem of logical validity would be decidable which contradicts the Church Turing theorem a result stating the negative answer for the Entscheidungsproblem Satisfiability in model theoryIn model theory an atomic formula is satisfiable if there is a collection of elements of a structure that render the formula true If A is a structure f is a formula and a is a collection of elements taken from the structure that satisfy f then it is commonly written that A f a If f has no free variables that is if f is an atomic sentence and it is satisfied by A then one writes A f In this case one may also say that A is a model for f or that f is true in A If T is a collection of atomic sentences a theory satisfied by A one writes A TFinite satisfiabilityA problem related to satisfiability is that of finite satisfiability which is the question of determining whether a formula admits a finite model that makes it true For a logic that has the finite model property the problems of satisfiability and finite satisfiability coincide as a formula of that logic has a model if and only if it has a finite model This question is important in the mathematical field of finite model theory Finite satisfiability and satisfiability need not coincide in general For instance consider the first order logic formula obtained as the conjunction of the following sentences where a0 displaystyle a 0 and a1 displaystyle a 1 are constants R a0 a1 displaystyle R a 0 a 1 xy R x y zR y z displaystyle forall xy R x y rightarrow exists zR y z xyz R y x R z x y z displaystyle forall xyz R y x wedge R z x rightarrow y z x R x a0 displaystyle forall x neg R x a 0 The resulting formula has the infinite model R a0 a1 R a1 a2 displaystyle R a 0 a 1 R a 1 a 2 ldots but it can be shown that it has no finite model starting at the fact R a0 a1 displaystyle R a 0 a 1 and following the chain of R displaystyle R atoms that must exist by the second axiom the finiteness of a model would require the existence of a loop which would violate the third and fourth axioms whether it loops back on a0 displaystyle a 0 or on a different element The computational complexity of deciding satisfiability for an input formula in a given logic may differ from that of deciding finite satisfiability in fact for some logics only one of them is decidable For classical first order logic finite satisfiability is recursively enumerable in class RE and undecidable by Trakhtenbrot s theorem applied to the negation of the formula Numerical constraintsNumerical constraints clarify often appear in the field of mathematical optimization where one usually wants to maximize or minimize an objective function subject to some constraints However leaving aside the objective function the basic issue of simply deciding whether the constraints are satisfiable can be challenging or undecidable in some settings The following table summarizes the main cases Constraints over reals over integersLinear PTIME see linear programming NP complete see integer programming Polynomial decidable through e g Cylindrical algebraic decomposition undecidable Hilbert s tenth problem Table source Bockmayr and Weispfenning 754 For linear constraints a fuller picture is provided by the following table Constraints over rationals integers natural numbersLinear equations PTIME PTIME NP completeLinear inequalities PTIME NP complete NP complete Table source Bockmayr and Weispfenning 755 See also2 satisfiability Boolean satisfiability problem Circuit satisfiability Karp s 21 NP complete problems Validity Constraint satisfactionNotesBoolos Burgess amp Jeffrey 2007 p 120 A set of sentences is satisfiable if some interpretation makes it true Franz Baader Tobias Nipkow 1998 Term Rewriting and All That Cambridge University Press pp 58 92 ISBN 0 521 77920 0 Baier Christel 2012 Chapter 1 3 Undecidability of FOL Lecture Notes Advanced Logics Technische Universitat Dresden Institute for Technical Computer Science pp 28 32 Archived from the original PDF on 14 October 2020 Retrieved 21 July 2012 Wilifrid Hodges 1997 A Shorter Model Theory Cambridge University Press p 12 ISBN 0 521 58713 1 Alexander Bockmayr Volker Weispfenning 2001 Solving Numerical Constraints In John Alan Robinson Andrei Voronkov eds Handbook of Automated Reasoning Volume I Elsevier and MIT Press ISBN 0 444 82949 0 Elsevier MIT Press ReferencesBoolos George Burgess John Jeffrey Richard 2007 Computability and Logic 5th ed Cambridge University Press Further readingDaniel Kroening Ofer Strichman 2008 Decision Procedures An Algorithmic Point of View Springer Science amp Business Media ISBN 978 3 540 74104 6 A Biere M Heule H van Maaren T Walsh eds 2009 Handbook of Satisfiability IOS Press ISBN 978 1 60750 376 7