「‍」 Lingenic

Satisfiability Modulo Theories

(⤓.md ◇.md); γ ≜ [2026-07-17T120407.600, 2026-07-17T135416.643] ∧ |γ| = 3

Satisfiability Modulo Theories

Origin. SMT emerged from combining SAT solvers with decision procedures (2000s). Extends propositional satisfiability to first-order theories. Nelson-Oppen combination (1979). DPLL(T) architecture (Nieuwenhuis et al., 2006). Tools: Z3, CVC, Yices. Workhorse of modern verification.

Models. SAT solving with theory reasoning. SAT: is propositional formula satisfiable? SMT: is formula satisfiable in a theory? Theories: arithmetic, arrays, bit-vectors, strings. Combines efficient Boolean reasoning with theory-specific procedures. Practical decidability for useful fragments.

Formalism.

SMT problem: Given formula φ in theory T, is φ T-satisfiable?

Theories:

  • QF_LIA: quantifier-free linear integer arithmetic
  • QF_LRA: quantifier-free linear real arithmetic
  • QF_BV: quantifier-free bit-vectors
  • QF_A: quantifier-free arrays (read/write)
  • QF_UF: quantifier-free uninterpreted functions

DPLL(T) architecture:

  1. SAT solver proposes Boolean assignment
  2. Theory solver checks consistency
  3. If conflict, theory explains (theory lemma)
  4. SAT solver backtracks using lemma
  5. Repeat until SAT or UNSAT

Theory combination (Nelson-Oppen): Combine theories T₁, T₂ if:

  • Signatures disjoint (share only =)
  • Both stably infinite
  • Exchange equalities on shared variables

Example: (x + 2 = y) ∧ (read(write(a, x, 3), y - 2) = 3) Combines linear arithmetic and array theory.

Quantifiers: E-matching: instantiate ∀ with relevant terms. MBQI: model-based quantifier instantiation. Generally undecidable with quantifiers.

Symbols.

SymbolUnicodeNameMeaning
⊨_TT-satisfiableSatisfiable in T
¬, ∧, ∨BooleanPropositional
=EqualityIn theory
read, writeArraySelect, store
+ , ≤ArithmeticLinear ops
bvadd, bvandBit-vectorBV operations

Metatheory. QF_LRA decidable (polynomial). QF_LIA decidable (NP-complete). QF_BV decidable (NP-complete). Array theory decidable for quantifier-free. Combination: if T₁, T₂ decidable and compatible, T₁ ∪ T₂ decidable. Quantified theories often undecidable.

Applies to. Software verification (Dafny, F*, Why3). Hardware verification (bit-vectors). Symbolic execution. Test generation. Constraint solving. Type checking (refinement types). Security analysis. Compiler optimization verification.

Limitations. Performance varies by problem structure. Quantifiers cause incompleteness/divergence. Non-linear arithmetic limited (undecidable in general). Model generation may be large. Theory combination has restrictions. Tuning solver options requires expertise.

© 2026 Lingenic LLC