Skip to content
STIMSMITH

Boolean Satisfiability

Concept WIKI v1 · 5/26/2026

Boolean Satisfiability (SAT) is used in formal verification as the solving basis for techniques such as SAT-based Bounded Model Checking and interval property checking. In the provided evidence, safety properties of synchronous circuits are translated into Boolean functions or SAT instances, where satisfying assignments represent counterexamples to the checked property.

Overview

Boolean Satisfiability, abbreviated SAT, appears in formal verification as the basis for checking properties of hardware designs. The evidence describes SAT-based methods as a robust solution in formal verification, with SAT-based Bounded Model Checking (BMC) identified as a prominent technique whose performance improvements made it suitable for larger-scale designs.[C1]

Use in property checking

In the described verification setting, the intended behavior of a design is formalized using safety properties. Restricting checking to safety properties leads to bounded properties that can be checked efficiently using a SAT solver.[C2]

A synchronous circuit is modeled as a finite-state machine with inputs, outputs, states, initial states, an output function, and a next-state function. Its transition relation can be written as:

T(s, s') = exists x in B^n : s' == Delta(x, s)

A safety property f = AG(phi) is translated into a Boolean function [[f]]_t that checks the validity of phi at a time point t. The translation is constructed so that a satisfying assignment of [[f]]_t corresponds to a counterexample of phi.[C3]

SAT instances in interval property checking

Interval property checking (IPC) searches for counterexamples by solving a SAT instance that combines an unrolled transition relation with the Boolean encoding of the property. In the provided formalization, the transition relation is unrolled over a bounded interval and connected to a single instantiation of the translated property:

AND_{i=0..c} T(s_{t+i}, s_{t+i+1}) AND [[f]]_t

The result is a SAT problem whose satisfying assignments indicate counterexamples for the checked safety property.[C4]

Relationship to BMC and IPC

SAT-based BMC is presented as one of the prominent SAT-based formal verification techniques. IPC is contrasted with original BMC: IPC verifies only safety properties and uses an arbitrary starting state rather than the initial state used in BMC. A property that holds from an arbitrary state also holds from any reachable state, giving exhaustive verification under that condition.[C5]

Because IPC can start from unreachable states, it can produce false negatives: counterexamples that arise only from unreachable states. The evidence states that such false negatives must be removed by adding invariants that restrict the starting state.[C6]

Practical significance

Within the evidence, SAT is not treated as an isolated topic but as an enabling mechanism for formal verification workflows. SAT solvers are used to efficiently check bounded safety properties, and SAT instances encode both the transition behavior of the design and the condition whose satisfaction corresponds to a counterexample.[C2][C4]

LINKED ENTITIES

1 links

CITATIONS

6 sources
6 citations
[1] SAT-based methods are described as a robust solution in formal verification, and SAT-based Bounded Model Checking is identified as a prominent technique suitable for larger-scale designs after performance improvements. Generating an Efficient Instruction Set Simulator from a Complete Property Suite
[2] Safety properties lead to bounded properties that can be checked efficiently using a SAT solver. Generating an Efficient Instruction Set Simulator from a Complete Property Suite
[3] A synchronous circuit is modeled as a finite-state machine, and a safety property can be translated into a Boolean function whose satisfying assignment corresponds to a counterexample. Generating an Efficient Instruction Set Simulator from a Complete Property Suite
[4] Interval property checking searches for counterexamples by solving a SAT instance that combines an unrolled transition relation with the translated property. Generating an Efficient Instruction Set Simulator from a Complete Property Suite
[5] Interval property checking verifies safety properties, uses an arbitrary starting state rather than the initial state used in BMC, and properties that hold from arbitrary states also hold from reachable states. Generating an Efficient Instruction Set Simulator from a Complete Property Suite
[6] Interval property checking can produce false negatives from unreachable states, and these are removed by adding invariants that restrict the starting state. Generating an Efficient Instruction Set Simulator from a Complete Property Suite