### - Art Gallery -

In computability theory and mathematical logic the Tarski–Kuratowski algorithm is a non-deterministic algorithm which produces an upper bound for the complexity of a given formula in the arithmetical hierarchy and analytical hierarchy.

The algorithm is named after Alfred Tarski and Kazimierz Kuratowski.
Algorithm

The Tarski–Kuratowski algorithm for the arithmetical hierarchy consists of the following steps:

Convert the formula to prenex normal form. (This is the non-deterministic part of the algorithm, as there may be more than one valid prenex normal form for the given formula.)
If the formula is quantifier-free, it is in $$\Sigma^0_0 and Π 0 0 {\displaystyle \Pi _{0}^{0}} \Pi^0_0.$$
Otherwise, count the number of alternations of quantifiers; call this k.
If the first quantifier is ∃, the formula is in $${\displaystyle \Sigma _{k+1}^{0}}.$$
If the first quantifier is ∀, the formula is in $${\displaystyle \Pi _{k+1}^{0}}.$$

References

Rogers, H. The Theory of Recursive Functions and Effective Computability, MIT Press. ISBN 0-262-68052-1; ISBN 0-07-053522-1