The square-root sum problem (SRS) is a computational
decision problem
In computability theory and computational complexity theory, a decision problem is a computational problem that can be posed as a yes–no question on a set of input values. An example of a decision problem is deciding whether a given natura ...
from the field of
numerical analysis
Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic computation, symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of ...
, with applications to
computational geometry.
Definitions
SRS is defined as follows:
Given positive integers and an integer ''t'', decide whether .
An alternative definition is:
Given positive integers and , decide whether .
The problem was posed in 1981, and likely earlier.
Run-time complexity
SRS can be solved in polynomial time in the
Real RAM model. However, its run-time complexity in the Turing machine model is open, as of 1997.
The main difficulty is that, in order to solve the problem, the square-roots should be computed to a high accuracy, which may require a large number of bits. The problem is mentioned in the Open Problems Garden.
Blomer presents a polynomial-time
Monte Carlo algorithm
In computing, a Monte Carlo algorithm is a randomized algorithm whose output may be incorrect with a certain (typically small) probability. Two examples of such algorithms are the Karger–Stein algorithm and the Monte Carlo algorithm for mini ...
for deciding whether a sum of square roots equals zero. The algorithm applies more generally, to any
sum of radicals In mathematics, a sum of radicals is defined as a finite linear combination of th roots:
:\sum_^n k_i\sqrt _i
where n, r_i are natural numbers and k_i, x_i are real numbers.
A particular special case arising in computational complexity theory is ...
.
Allender, Burgisser, Pedersen and Miltersen prove that SRS lies in the
counting hierarchy (which is contained in
PSPACE
In computational complexity theory, PSPACE is the set of all decision problems that can be solved by a Turing machine using a polynomial amount of space.
Formal definition
If we denote by SPACE(''f''(''n'')), the set of all problems that can ...
).
Separation bounds
One way to solve SRS is to prove a lower bound on the absolute difference
or
. Such lower bound is called a "separation bound" since it separates between the difference and 0. For example, if the absolute difference is at least 2
−''d'', it means that we can round all numbers to ''d'' bits of accuracy, and solve SRS in time polynomial in ''d''.
This leads to the mathematical problem of proving bounds on this difference. Define ''r''(''n'',''k'') as the smallest positive value of the difference
, where ''a
i'' and ''b
i'' are integers between 1 and ''n''; define ''R''(''n'',''k'') is defined as -log ''r''(''n'',''k''), which is the number of accuracy digits required to solve SRS. Computing ''r''(''n'',''k'') is open problem 33 in the open problem project.
In particular, it is interesting whether r(''n'',''k'') is in O(poly(''k'',log(''n'')). A positive answer would imply that SRS can be solved in polynomial time in the Turing Machine model. Some currently known bounds are:
* Qian and Wang prove by an explicit construction that, for any ''k'' and ''n'',
, so
. This number is optimal for ''k''=2, and also for a wide range of integers.
* Burnikel, Fleischer,
Mehlhorn and Schirra proved an upper bound on the number of digits:
.
* Cheng, Meng, Sun and Chen showed that
.
* Cheng and Li showed that
. This implies an that SRS can be solved in time
, as long as ''n'' is in o(''k'' log ''k''). They also present an algorithm to compute ''r''(''n'',''k'') in time
.
* Eisenbrand, Haeberle and Singer prove that
, where gamma is a constant that depends on the inputs ''a''
1,...,''a
n'', and steps from the
Subspace theorem. This improves the previous bound
.
Applications
SRS is important in
computational geometry, as Euclidean distances are given by square-roots, and many geometric problems (e.g.
Minimum spanning tree
A minimum spanning tree (MST) or minimum weight spanning tree is a subset of the edges of a connected, edge-weighted undirected graph that connects all the vertices together, without any cycles and with the minimum possible total edge weight. ...
in the plane and
Euclidean traveling salesman problem) require to compute sums of distances.
Etessami and Yannakakis show a reduction from SRS to the problem of termination of recursive concurrent
stochastic games.
Relation to semidefinite programming
SRS also has a theoretic importance, as it is a simple special case of a
semidefinite programming
Semidefinite programming (SDP) is a subfield of mathematical programming concerned with the optimization of a linear objective function (a user-specified function that the user wants to minimize or maximize)
over the intersection of the cone of po ...
feasibility problem. Consider the matrix
. This matrix is
positive semidefinite iff
, iff
. Therefore, to solve SRS, we can construct a feasibility problem with ''n'' constraints of the form
, and additional linear constraints
. The resulting SDP is feasible if and only if SRS is feasible. As the runtime complexity of SRS in the Turing machine model is open, the same is true for SDP feasibility (as of 1997).
Extensions
Kayal and Saha
extend the problem from integers to
polynomials
In mathematics, a polynomial is a mathematical expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication and exponentiation to nonnegative int ...
. Their results imply a solution to SRS for a special class of integers.
References
{{Reflist
Numerical analysis
Computational problems