Fagin's theorem is the oldest result of descriptive complexity theory, a branch of computational complexity theory that characterizes complexity classes in terms of logic-based descriptions of their problems rather than by the behavior of algorithms for solving those problems. The theorem states that the set of all properties expressible in existential second-order logic is precisely the complexity class NP.

It was proven by Ronald Fagin in 1973 in his doctoral thesis, and appears in his 1974 paper.[1] The arity required by the second-order formula was improved (in one direction) by James Lynch in 1981,[2] and several results of Étienne Grandjean have provided tighter bounds on nondeterministic random-access machines.[3]

Proof edit

In addition to Fagin's 1974 paper,[1] the 1999 textbook by Immerman provides a detailed proof of the theorem.[4] It is straightforward to show that every existential second-order formula can be recognized in NP, by nondeterministically choosing the value of all existentially-qualified variables, so the main part of the proof is to show that every language in NP can be described by an existential second-order formula. To do so, one can use second-order existential quantifiers to arbitrarily choose a computation tableau. In more detail, for every timestep of an execution trace of a non-deterministic Turing machine, this tableau encodes the state of the Turing machine, its position in the tape, the contents of every tape cell, and which nondeterministic choice the machine makes at that step. A first-order formula can constrain this encoded information so that it describes a valid execution trace, one in which the tape contents and Turing machine state and position at each timestep follow from the previous timestep.

A key lemma used in the proof is that it is possible to encode a linear order of length   (such as the linear orders of timesteps and tape contents at any timestep) as a  -ary relation   on a universe   of size  . One way to achieve this is to choose a linear ordering   of   and then define   to be the lexicographical ordering of  -tuples from   with respect to  .

See also edit

Notes edit

References edit

  • Fagin, Ronald (1974). "Generalized first-order spectra and polynomial-time recognizable sets". In Karp, Richard M. (ed.). Complexity of Computation: Proceedings of a Symposium in Applied Mathematics of the American Mathematical Society and the Society for industrial and Applied Mathematics held in New York City, April 18–19, 1973. SIAM–AMS Proceedings. Vol. 7. American Mathematical Society. pp. 43–73. ISBN 978-0-8218-1327-0. MR 0371622.
  • Grandjean, Étienne (1985). "Universal quantifiers and time complexity of random access machines". Mathematical Systems Theory. 18 (2): 171–187. doi:10.1007/BF01699468. MR 0797194.
  • Grandjean, Étienne; Olive, Frédéric (1998). "Monadic logical definability of nondeterministic linear time". Computational Complexity. 7 (1): 54–97. doi:10.1007/PL00001594. MR 1628153.
  • Immerman, Neil (1999). Descriptive Complexity. New York: Springer-Verlag. pp. 113–119. ISBN 0-387-98600-6.
  • Lynch, James (December 1981). "Complexity classes and theories of finite models". Mathematical Systems Theory. 15: 127–144. doi:10.1007/BF01786976. S2CID 496247.
  • Grädel, Erich; Kolaitis, Phokion G.; Libkin, Leonid; Marx, Maarten; Spencer, Joel; Vardi, Moshe Y.; Venema, Yde; Weinstein, Scott (2007). Finite model theory and its applications. Texts in Theoretical Computer Science. An EATCS Series. Berlin: Springer-Verlag. ISBN 978-3-540-00428-8. Zbl 1133.03001.