Existential theory of the reals

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

In mathematical logic, computational complexity theory, and computer science, the existential theory of the reals is the set of all true sentences of the form

 \exists X_1 \cdots \exists X_n \, F(X_1,\dots, X_n), \,

where F(X_1,\dots X_n) is a quantifier-free formula involving equalities and inequalities of real polynomials.[1]

The decision problem for the existential theory of the reals is the problem of finding an algorithm that decides, for each such formula, whether it is true or false. Equivalently, it is the problem of testing whether a given semialgebraic set is non-empty.[1] This decision problem is NP-hard and lies in PSPACE.[2] Thus it has significantly lower complexity than Alfred Tarski's quantifier elimination procedure for deciding statements in the first-order theory of the reals without the restriction to existential quantifiers.[1] However, in practice, general methods for the first-order theory remain the preferred choice for solving these problems.[3]

Many natural problems in geometric graph theory, especially problems of recognizing geometric intersection graphs and straightening the edges of graph drawings with crossings, may be solved by translating them into instances of the existential theory of the reals, and are complete for this theory. The complexity class \exists\mathbb{R}, which lies between NP and PSPACE, has been defined to describe this class of problems.[4]

Background

In mathematical logic, a theory is a formal language consisting of a set of sentences written using a fixed set of symbols. The first-order theory of real closed fields has the following symbols:[5]

  • the constants 0 and 1,
  • a countable collection of variables X_i,
  • the addition, subtraction, multiplication, and (optionally) division operations,
  • symbols <, ≤, =, ≥, >, and ≠ for comparisons of real values,
  • the logical connectives ∧, ∨, ¬, and ⇔,
  • parentheses, and
  • the universal quantifier ∀ and the existential quantifier

A sequence of these symbols forms a sentence that belongs to the first-order theory of the reals if it is grammatically well formed, all its variables are properly quantified, and (when interpreted as a mathematical statement about the real numbers) it is a true statement. As Tarski showed, this theory can be described by an axiom schema and a decision procedure that is complete and effective: for every fully quantified and grammatical sentence, either the sentence or its negation (but not both) can be derived from the axioms. The same theory describes every real closed field, not just the real numbers.[6] However, there are other number systems that are not accurately described by these axioms; in particular, the theory defined in the same way for integers instead of real numbers is undecidable, even for existential sentences (Diophantine equations) by Matiyasevich's theorem.[5][7]

The existential theory of the reals is the subset of the first-order theory consisting of sentences in which all the quantifiers are existential and they appear before any of the other symbols. That is, it is the set of all true sentences of the form

 \exists X_1 \cdots \exists X_n \, F(X_1,\dots, X_n), \,

where F(X_1,\dots X_n) is a quantifier-free formula involving equalities and inequalities of real polynomials. The decision problem for the existential theory of the reals is the algorithmic problem of testing whether a given sentence belongs to this theory; equivalently, for strings that pass the basic syntactical checks (it uses the correct symbols with the correct syntax, and has no unquantified variables) it is the problem of testing whether the sentence is a true statement about the real numbers. The set of n-tuples of real numbers (X_1,\dots X_n) for which F(X_1,\dots X_n) is true is called a semialgebraic set, so the decision problem for the existential theory of the reals can equivalently be rephrased as testing whether a given semialgebraic set is nonempty.[1]

In determining the time complexity of algorithms for the decision problem for the existential theory of the reals, it is important to have a measure of the size of the input. The simplest measure of this type is the length of a sentence: that is, the number of symbols it contains.[5] However, in order to achieve a more precise analysis of the behavior of algorithms for this problem, it is convenient to break down the input size into several variables, separating out the number of variables to be quantified, the number of polynomials within the sentence, and the degree of these polynomials.[8]

Examples

The golden ratio \varphi may be defined as the root of the polynomial x^2-x-1. This polynomial has two roots, only one of which (the golden ratio) is greater than one. Thus, the existence of the golden ratio may be expressed by the sentence

\exists X_1(  X_1 > 1 \wedge X_1\times X_1 - X_1 - 1 = 0).

Because the golden ratio does exist, this is a true sentence, and belongs to the existential theory of the reals. The answer to the decision problem for the existential theory of the reals, given this sentence as input, is the Boolean value true.

The inequality of arithmetic and geometric means states that, for every two non-negative numbers x and y, the following inequality holds:

\frac{x+y}{2}\ge \sqrt{xy}.

As stated above, it is a first-order sentence about the real numbers, but one with universal rather than existential quantifiers, and one that uses extra symbols for division, square roots, and the number 2 that are not allowed in the first-order theory of the reals. However, by squaring both sides it can be transformed into the following existential statement that can be interpreted as asking whether the inequality has any counterexamples:

\exists X_1 \exists X_2 \bigl( X_1\ge 0\wedge X_2\ge 0\wedge (X_1+X_2)\times (X_1+X_2)< (1+1+1+1)\times X_1\times X_2\bigr).

The answer to the decision problem for the existential theory of the reals, given this sentence as input, is the Boolean value false: there are no counterexamples. Therefore, this sentence does not belong to the existential theory of the reals, despite being of the correct grammatical form.

Algorithms

Alfred Tarski's method of quantifier elimination (1948) showed the existential theory of the reals (and more generally the first order theory of the reals) to be algorithmically solvable, but without an elementary bound on its complexity.[9][6] The method of cylindrical algebraic decomposition, by George E. Collins (1975), improved the time dependence to doubly exponential,[9][10] of the form

L^3 (md)^{2^{O(n)}}

where L is the number of bits needed to represent the coefficients in the sentence whose value is to be determined, m is the number of polynomials in the sentence, d is their total degree, and n is the number of variables.[8] By 1988, Dima Grigoriev and Nicolai Vorobjov had shown the complexity to be exponential in a polynomial of n,[8][11][12]

L(md)^{n^2}

and in a sequence of papers published in 1992 James Renegar improved this to a singly exponential dependence on n,[8][13][14][15]

L\log L\log\log L(md)^{O(n)}.

In the meantime, in 1988, John Canny described another algorithm that also has exponential time dependence, but only polynomial space complexity; that is, he showed that the problem could be solved in PSPACE.[2][9]

The asymptotic computational complexity of these algorithms may be misleading, because they can only be run on inputs of very small size. In a 1991 comparison, Hoon Hong estimated that Collins' doubly exponential procedure would be able to solve a problem whose size is described by setting all the above parameters to 2, in less than a second, whereas the algorithms of Grigoriev, Vorbjov, and Renegar would instead take more than a million years.[8] In 1993, Joos, Roy, and Solernó suggested that it should be possible to make small modifications to the exponential-time procedures to make them faster in practice than cylindrical algebraic decision, as well as faster in theory.[16] However, as of 2009, it was still the case that general methods for the first-order theory of the reals remained superior in practice to the singly exponential algorithms specialized to the existential theory of the reals.[3]

Complete problems

Several problems in computational complexity and geometric graph theory may be classified as complete for the existential theory of the reals. That is, every problem in the existential theory of the reals has a polynomial-time many-one reduction to an instance of one of these problems, and in turn these problems are reducible to the existential theory of the reals.[4][17]

A number of problems of this type concern the recognition of intersection graphs of a certain type. In these problems, the input is an undirected graph; the goal is to determine whether geometric shapes from a certain class of shapes can be associated with the vertices of the graph in such a way that two vertices are adjacent in the graph if and only if their associated shapes have a non-empty intersection. Problems of this type that are complete for the existential theory of the reals include recognition of intersection graphs of line segments in the plane,[4][18][5] recognition of unit disk graphs,[19] and recognition of intersection graphs of convex sets in the plane.[4]

For graphs drawn in the plane without crossings, Fáry's theorem states that one gets the same class of planar graphs regardless of whether the edges of the graph are drawn as straight line segments or as arbitrary curves. But this equivalence does not hold true for other types of drawing. For instance, although the crossing number of a graph (the minimum number of crossings in a drawing with arbitrarily curved edges) may be determined in NP, it is complete for the existential theory of the reals to determine whether there exists a drawing achieving a given bound on the rectilinear crossing number (the minimum number of pairs of edges that cross in any drawing with edges drawn as straight line segments in the plane).[4][20] It is also complete for the existential theory of the reals to test whether a given graph can be drawn in the plane with straight line edges and with a given set of edge pairs as its crossings, or equivalently, whether a curved drawing with crossings can be straightened in a way that preserves its crossings.[21]

Other complete problems for the existential theory of the reals include:

  • recognition of unit distance graphs, and testing whether the dimension or Euclidean dimension of a graph is at most a given value.[9]
  • stretchability of pseudolines (that is, given a family of curves in the plane, determining whether they are homeomorphic to a line arrangement);[4][22][23]
  • both weak and strong satisfiability of geometric quantum logic in any fixed dimension >2;[24]
  • the algorithmic Steinitz problem (given a lattice, determine whether it is the face lattice of a convex polytope), even when restricted to 4-dimensional polytopes;[25][26]
  • realization spaces of arrangements of certain convex bodies[27]
  • various properties of Nash equilibria of multi-player games[28]
  • embedding a given abstract complex of triangles and quadrilaterals into three-dimensional Euclidean space;[17]
  • embedding multiple graphs on a shared vertex set into the plane so that all the graphs are drawn without crossings;[17]
  • recognizing the visibility graphs of planar point sets;[17]
  • (projective or non-trivial affine) satisfiability of an equation between two terms over the cross product;[29]
  • testing whether a 4-regular graph whose edges are colored with four colors has a drawing with edges as straight line segments of four slopes, with the slopes representing the colors in the coloring.[30]

Based on this, the complexity class \exists \mathbb{R} has been defined as the set of problems having a polynomial-time many-one reduction to the existential theory of the reals.[4]

References

  1. 1.0 1.1 1.2 1.3 Lua error in package.lua at line 80: module 'strict' not found..
  2. 2.0 2.1 Lua error in package.lua at line 80: module 'strict' not found..
  3. 3.0 3.1 Lua error in package.lua at line 80: module 'strict' not found..
  4. 4.0 4.1 4.2 4.3 4.4 4.5 4.6 Lua error in package.lua at line 80: module 'strict' not found..
  5. 5.0 5.1 5.2 5.3 Lua error in package.lua at line 80: module 'strict' not found.
  6. 6.0 6.1 Lua error in package.lua at line 80: module 'strict' not found..
  7. Lua error in package.lua at line 80: module 'strict' not found..
  8. 8.0 8.1 8.2 8.3 8.4 Lua error in package.lua at line 80: module 'strict' not found..
  9. 9.0 9.1 9.2 9.3 Lua error in package.lua at line 80: module 'strict' not found..
  10. Lua error in package.lua at line 80: module 'strict' not found..
  11. Lua error in package.lua at line 80: module 'strict' not found..
  12. Lua error in package.lua at line 80: module 'strict' not found..
  13. Lua error in package.lua at line 80: module 'strict' not found..
  14. Lua error in package.lua at line 80: module 'strict' not found..
  15. Lua error in package.lua at line 80: module 'strict' not found..
  16. Lua error in package.lua at line 80: module 'strict' not found..
  17. 17.0 17.1 17.2 17.3 Lua error in package.lua at line 80: module 'strict' not found..
  18. Lua error in package.lua at line 80: module 'strict' not found..
  19. Lua error in package.lua at line 80: module 'strict' not found..
  20. Lua error in package.lua at line 80: module 'strict' not found..
  21. Lua error in package.lua at line 80: module 'strict' not found..
  22. Lua error in package.lua at line 80: module 'strict' not found..
  23. Lua error in package.lua at line 80: module 'strict' not found..
  24. Lua error in package.lua at line 80: module 'strict' not found..
  25. Lua error in package.lua at line 80: module 'strict' not found..
  26. Lua error in package.lua at line 80: module 'strict' not found..
  27. Lua error in package.lua at line 80: module 'strict' not found..
  28. Lua error in package.lua at line 80: module 'strict' not found..
  29. Lua error in package.lua at line 80: module 'strict' not found..
  30. Lua error in package.lua at line 80: module 'strict' not found..