Tell me more ×
Theoretical Computer Science Stack Exchange is a question and answer site for theoretical computer scientists and researchers in related fields. It's 100% free, no registration required.

Deciding whether a Nash equilibrium exists is easy (it always does); however, actually finding one is believed to be difficult (it is PPAD-Complete).

What are some other examples of problems where the decision version is easy but the search version is relatively difficult (compared the the decision version)?

I would be particularly interested in problems where the decision version is non-trival (unlike the case with Nash equilibrium).

share|improve this question
Should probably be community wiki: meta.cstheory.stackexchange.com/questions/225/… – Dave Clarke Oct 1 '10 at 14:04
@supercooldave done, thanks. – Travis Service Oct 1 '10 at 14:07
1  
@supercooldave: I wouldn't hurry with CW in this case. It may turn out that there are very few natural problems with a non-trivial but easy decision version and hard search version. This is not necessarily a "big-list". – Jukka Suomela Oct 1 '10 at 14:09
1  
I went with the heuristic that big list = community wiki. – Dave Clarke Oct 1 '10 at 14:16
3  
So this raises the question "what is the natural decision problem to be associated with a search problem?". I think existence of NE is not the natural decision problem associate with NE. – Kaveh Oct 1 '10 at 14:56
show 4 more comments

9 Answers

Given an integer, does it have a non-trivial factor? -> Non-trivially in P.

Given an integer, find a non-trivial factor, if there is one -> Not known to be in FP.

share|improve this answer

If you give the following the same "leeway" that you do for Nash equilibria, then:

  • Integer factorization, where the decision problem is "Is there a factorized representation of this integer?" (trivially, yes), and the search problem is to output it

A number of lattice problems could conceivably fit here with the same type of generous allowance for defining the decision problem:

  • Shortest Vector Problem (SVP) -- decide if there's a shortest vector vs finding it
  • Closest Vector Problem (CVP) -- decide if there's a closest vector vs finding it

Of course, these are all cases where the decision version I've mentioned isn't very interesting (because it's trivially the case). One problem that's not quite as trivial:

  • Planar graph $k$-colorability for $k \ge 4$

The decision problem of planar graph 4-colorability is in P. But obtaining the lexicographically first such solution is NP-hard (Khuller/Vazirani).

Note that the property you're really interested in is self-reducibility (or rather, non-self-reducibility). In the planar graph coloring problem, the essential issue is that the method of self-reducing the general case of $k$-colorability will destroy planarity in a graph.

share|improve this answer

Here is another example: Given a cubic graph G and a hamiltonian cycle H in G, find a different hamiltonian cycle in G. Such a cycle exists (by Smith's theorem) but, as far as I know, it is open whether it can be computed in polynomial time.

share|improve this answer

Let $G=G(n,1/2)$, the random graph on $1,\ldots,n$, in which each edge is independently present with probability $1/2$. Choose $n^{1/3}$ vertices of $G$ uniformly at random and add all edges between them; call the resulting graph $H$. Then $H$ has a clique of size $n^{1/3}$.

Search problem: find a clique of size at least $10\log n$.

share|improve this answer
Very neat! Is there a relevant paper about this? – András Salamon Oct 2 '10 at 23:05
@András: To give a bit more background, this is called the "hidden clique problem". If the hidden clique that's planted is on Omega(sqrt(n log n)) vertices, one can easily see that the vertices of the clique are those with the highest degree, almost surely. [Alon-Krivelevic-Sudakov] (tau.ac.il/~nogaa/PDFS/clique3.pdf) improve this to Omega(sqrt(n)) using spectral techniques. For hidden cliques of smaller size, such as O(log n), nothing non-trivial is known. – arnab Oct 2 '10 at 23:55
Another related intriguing problem, posed by Karp, is to find a clique of size (1+c)log(n) in G(n,1/2), for any constant 0<c<1. It's known that there exists a clique of size 2log(n) almost surely in G(n,1/2). The only polynomial time algorithms known (such as the greedy one) find cliques of size (1+o(1))log(n). – arnab Oct 2 '10 at 23:59
@arnab: Feige and Ron recently simplified the AKS result (see reference at my question cstheory.stackexchange.com/questions/1406/… ). My question to @Louigi was really about the $10\log n$ question: what motivates the particular constant, and has this question been asked in a paper one can cite? – András Salamon Oct 3 '10 at 8:00

Another number theory example, similar to the ones above. It's known by Bertrand's postulate that for every positive integer $n$, there's a prime between $n$ and $2n$. But we have no polynomial time algorithm currently to find such a prime, given $n$. (The desired algorithm must run in polylog($n$) time.) One can easily come up with polynomial time randomized algorithms because of the prime number theorem, and one can derandomize them by assuming some standard number theoretic conjectures (such as Cramer's conjecture), but no unconditionally polynomial time deterministic algorithm is known. Related work was recently done in the Polymath4 project; Tao's blog post on the project is a good summary of it.

share|improve this answer
1  
Even without Bertrand's postulate, you have a deterministic algorithm with expected polynomial runtime due to the Prime Number Theorem and the AKS primality test. – Joe Fitzsimons Oct 4 '10 at 14:52

Finding Tverberg partitions is of unknown complexity:

Theorem: Let $x_1,x_2,\dots, x_m$ be points in $R^d$, $m \ge (r-1)(d+1)+1$. Then there is a partition $S_1,S_2,\dots, S_r$ of ${1,2,\dots,m}$ such that $\cap _{j=1}^r \text{conv} (x_i: i \in S_j) \ne \emptyset$.

Like with Nash equilibria, the partition is guaranteed by the theorem, but it's not known if a polytime algorithm exists to find one.

Gil Kalai wrote a wonderful series of posts on this topic: One, Two and Three.

share|improve this answer
2  
Actually, any problem that falls into TFNP would be a good candidate I think. When an answer is guaranteed to exist by a theorem -- then, define some apparently-harder-than-P search problem over the possible solutions to accompany it. – Daniel Apon Oct 1 '10 at 18:40

At the risk of being slightly off-topic, let me give a simple and natural example of a theory C answer: Eulerian cycles and distributed algorithms.

The decision problem is not completely trivial, in the sense that there are are both Eulerian and non-Eulerian graphs.

There is, however, a fast and simple distributed algorithm that solves the decision problem (in the sense that for yes-instances all nodes output "1" and for no-instances at least one node outputs "0"): each node just checks the parity of its own degree and outputs 0 or 1 accordingly.

But if you would like to find a Eulerian cycle (in the sense that each node outputs the structure of the cycle in its own neighbourhood), then we need essentially global information on the graph. It shouldn't be hard to come up with a pair of examples that shows that the problem requires $\Omega(n)$ communication rounds; on the other hand, $O(n)$ rounds is enough to solve any problem (assuming unique IDs).

In summary: $O(1)$-time decision problem, $\Theta(n)$-time search problem, and this is the worst possible gap.


Edit: This implicitly assumes that the graph is connected (or, equivalently, that we want to find an Eulerian cycle in each connected component).

share|improve this answer
This might be a stupid question (because I know almost nothing about distributed computing), but is there a promise that the graph is connected, or is the connectedness easy to check efficiently in a distributed way? – Tsuyoshi Ito Oct 2 '10 at 22:19
Thanks, not a stupid question at all. I clarified my answer, I had forgotten to add the assumption that we deal with connected graphs here. (Usually there is little point in studying disconnected graphs from the perspective of distributed algorithms, as by definition there is no way to transmit information between the connected components, but of course this should be made explicit.) – Jukka Suomela Oct 2 '10 at 22:43
Thanks! After reading your answer, I think that it should have been obvious that the graph (= network topology) was assumed to be connected. :) – Tsuyoshi Ito Oct 4 '10 at 13:51

One more example; The Subset-sums equality: Given $a_1,a_2,a_3,...,,a_n$ natural numbers with $\sum_1^n{a_i} \lt 2^n -1$. The pigeon-hole principle guarantees the existence of two subsets $I, J$ in ${1,2,..., n}$ such that $\sum_{i\in I} a_i=\sum_{j \in J} a_j$ (since the are more subsets than possible sums). The existence of polynomial time algorithm for finding sets $I$ and $J$ is a famous open problem.

Subset-sums equality (pigeonhole version)

share|improve this answer

In all the examples above the decision problem is in P and the search problem is not known to be in P but not known to be NP-hard either. I want to point out that it is possible to have an NP-hard search problem whose decision version is easy.

Consider the generalized satisfiability problem for given relations $R_1,\ldots,R_k$ over Boolean domain $\{0,1\}$. An instance is an expression of the form $$ R_{i_1}(t_{11},\ldots,t_{1r_1}) \wedge \cdots \wedge R_{i_m}(t_{m1},\ldots,t_{mr_m}) $$ where the $t_{ij}$'s are either variables or constants in ${0,1}$, and $r_1,\ldots,r_m$ are the arities of $R_1,\ldots,R_k$ (this is the same framework as in Schaeffer's dichotomy theorem with constants, in case you know what it is). The search problem is: given such an expression, find a lexicographically minimal solution, if there is one.

It was shown by Reith and Vollmer here that there exists a choice of relations $R_1,\ldots,R_k$ that make this problem NP-hard (actually OptP-complete) but keep the satisfiability problem easy (quite trivial actually). An example given in the paper is $R = \{(1,0,0),(0,1,0),(1,1,1)\}$ (here $k = 1$). Once the satisfiability problem is solvable in polynomial-time, the question whether there exists a lexicographically minimal satisfying assignment is trivial.

See Corollary 13 and the example following it in the paper above (at least in this on-line version).

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.