True quantified Boolean formula

Put another way, it asks whether a quantified sentential form over a set of Boolean variables is true or false.

For example, the following is an instance of QBF: QBF is the canonical complete problem for PSPACE, the class of problems solvable by a deterministic or nondeterministic Turing machine in polynomial space and unlimited time.

Such an algorithm uses space proportional to the height of the tree, which is linear in the worst case, but uses time exponential in the number of quantifiers.

Provided that MA ⊊ PSPACE, which is widely believed, QBF cannot be solved, nor can a given solution even be verified, in either deterministic or probabilistic polynomial time (in fact, unlike the satisfiability problem, there's no known way to specify a solution succinctly).

It can be solved using an alternating Turing machine in linear time, since AP = PSPACE, where AP is the class of problems alternating machines can solve in polynomial time.

[2] When the seminal result IP = PSPACE was shown (see interactive proof system), it was done by exhibiting an interactive proof system that could solve QBF by solving a particular arithmetization of the problem.

By introducing dummy variables, any formula in prenex normal form can be converted into a sentence where existential and universal quantifiers alternate.

Assuming fully quantified Boolean formulas to be in prenex normal form is a frequent feature of proofs.

There is a simple recursive algorithm for determining whether a QBF is in TQBF (i.e. is true).

For every quantifier in the initial QBF, the algorithm makes two recursive calls on only a linearly smaller subproblem.

Within each invocation of the algorithm, it needs to store the intermediate results of computing A and B.

Formulas that lack quantifiers can be evaluated in space logarithmic in the number of variables.

This makes the TQBF language part of the PSPACE complexity class.

[citation needed] Despite the PSPACE-completeness of QBF, many solvers have been developed to solve these instances.

[7][weasel words] The QBF solver competition QBFEVAL has been running more-or-less annually since 2004;[5][6] solvers are required to read instances in QDIMACS format and either the QCIR or QAIGER formats.

[9][weasel words] Some prominent QBF solvers include: QBF solvers can be applied to planning (in artificial intelligence), including safe planning; the latter is critical in applications of robotics.

This makes QBFs suitable for encoding reactive synthesis problems.

For example, QBF solvers can be used to find winning strategies for games of geography, which can then be automatically played interactively.

[15] QBF solvers can be used for formal equivalence checking, and can also be used to synthesize Boolean functions.

[14] Other types of problems that can be encoded as QBFs include: In QBFEVAL 2020, a "DQBF Track" was introduced where instances were allowed to have Henkin quantifiers (expressed in DQDIMACS format).

[8] The TQBF language serves in complexity theory as the canonical PSPACE-complete problem.

is in TQBF, for some function f that is required to run in polynomial time (relative to the length of the input).

Symbolically, Proving that TQBF is PSPACE-hard, requires specification of f. So, suppose that L is a PSPACE language.

This means that L can be decided by a polynomial space deterministic Turing machine (DTM).

, which represent two possible configurations of the DTM for L, and a natural number t, in constructing a QBF

We know that T = O(exp(nk)) for some k, where n is the length of the input, because this bounds the total number of possible configurations of the relevant DTM.

Since the Turing Machine that our formula represents is deterministic, this presents no problem.

Additionally, each recursive layer virtually doubles the length of the formula.

), which prevents the length of the formula from expanding due to recursive layers.

The universally quantified ordered pair simply tells us that whichever choice of