The recent breakthrough circuit complexity lower-bound result of Ryan Williams provides a proof technique that uses upper-bound result to prove complexity lower-bounds. Suresh Venkat in his answer to this question, Are there any counter-intuitive results in theoretical computer science?, provided two examples of establishing lower-bounds by proving upper-bounds.

  • What are the other interesting results for proving complexity lower-bounds that was obtained by proving complexity upper-bounds?

  • Is there any upper-bound conjecture that would imply $NP \not\subseteq P/poly$ (or $P \ne NP$)?

  • $\begingroup$ Should this be a CW? $\endgroup$ Nov 21 '10 at 17:59
  • $\begingroup$ I like it as is (not CW), but I believe it is a [soft-question]. $\endgroup$ Nov 21 '10 at 19:32
  • 2
    $\begingroup$ @Sadeq: don't think this is a soft question, this is precise enough to have a clear answer. $\endgroup$
    – Kaveh
    Nov 22 '10 at 2:23
  • $\begingroup$ Meyer's result pointed out by Suresh shows that the existence of polynomial circuits for $EXP$ would prove $P \ne NP$. $\endgroup$ Nov 29 '10 at 4:47

One could turn the question around and ask what lower bounds aren't proved by proving an upper bound. Almost all communication complexity lower bounds (and streaming algorithm lower bound and data structure lower bounds that rely on communication complexity arguments) are proved by showing that a communication protocol can be constructively turned into an encoding scheme, with the length of the encoding depending on the communication complexity of the protocol, and the lower bound for the protocol follows from the fact that you cannot encode all n bit messages using n-1 bits or fewer.

The Razborov-Smolensky circuit lower bounds work by showing how to simulate bounded-depth circuits by low-degree polynomials.

A couple of candidates of lower bounds that are not proved with an upper bound could be the time hierarchy theorem (although, to get the tightest bounds, one needs an efficient universal turing machine, which is a non-trivial algorithmic task) and the proof of AC0 lower bounds using the switching lemma (but the cleanest proof of the switching lemma uses a counting/incompressibility/Kolmogorov-complexity)

  • 1
    $\begingroup$ Interesting, that's a great summary of communication complexity lower bounds! Another (odd?) candidate: Ladner's theorem/diagonalization. The bounds, of course, are not specified (nor even the problem(s)!), but it does show a superpolynomial lower bound for some problem. Of course, this assumes P$\ne$NP, which could conceivably be proved with an upper bound, a la GCT... $\endgroup$ Nov 28 '10 at 21:29

In a weird way, the PCP theorem itself is a good example of proving a lower bound via an upper bound. An "efficient" randomized strategy for verifying a proof using a constant number of probes of the proof and only $\log n$ random bits leads to a lower bound for approximating the number of satisfied clauses in an instance of 3SAT.

  • 10
    $\begingroup$ If you count NP-hardness (as opposed to separation from a class) as lower bounds, you do not need the PCP theorem; reductions are efficient algorithms which prove that some problems are hard. $\endgroup$ Nov 23 '10 at 13:08
  • $\begingroup$ that's a good point, Tsuyoshi. However, NP-hardness reductions are "direct". show that solving an unknown problem solves a known hard problem. Some of the examples given here are more indirect. But this is subjective of course. $\endgroup$ Nov 23 '10 at 17:10
  • 3
    $\begingroup$ The very statement of the PCP theorem is the NP-completeness of Gap-3SAT. Moreover, I do not know what you meant by claiming that the PCP theorem is indirect. It is true that the PCP theorem requires one of the most complicated proofs among NP-completeness results, but is it a good thing? $\endgroup$ Nov 23 '10 at 19:15
  • $\begingroup$ Suresh, Could you please post here, as a new answer, an expanded version of the two examples you referenced in your answer to the other question (Meyer's result and GCT)? $\endgroup$ Nov 29 '10 at 5:27
  • $\begingroup$ any reason why ? I don't have a problem doing so, but is it necessary since you cite it in the question ? $\endgroup$ Nov 29 '10 at 6:51

The incompressibility method is a method based on Kolmogorov complexity to prove lower bounds. One of the first application of this method was to prove that recognizing palindromes on a Turing machine with a single tape requires quadratic time.

Loosely speaking, the idea of this method is to describe a procedure to find an input using the information contained in the run of an algorithm solving the problem we consider on this input. The better is the procedure, the higher is the lower bound on the original problem.

Of course, full details can be found in the textbook of Li and Vitanyi.


For the "lower bound via upper bound" question you asked:

The STOC 2010 paper "How to Compress Interactive Communication" [BBCR10] arrives at an improved direct sum theorem for randomized communication complexity by demonstrating an improved compression protocol for interactive communication.

Specifically, given two parties computing some joint function of their mutual inputs (i.e. an interactive computation scenario), they show that any protocol that communicates $C$ bits and reveals $I$ bits of new information to the parties involved can be simulated by a new protocol using $\tilde O(\sqrt{CI})$ bits -- the improved upper bound.

As a consequence of this improved protocol compression, they show that in the worst case: Given any function $f$ that takes $n$ time to compute individually, computing $k$ copies of $f$ requires at least $\sqrt{k} \cdot n$ time -- the improved lower bound.


This is somehow different from what you asked, but since it is related, I thought I could mention it.

Carter & Wegman (1977) introduced the notion of universal hashing. The notion was used in numerous papers (Sipser (1983), Stockmeyer (1983), Babai (1985), and Goldwasser & Sipser (1986)) to prove approximate lower bounds.

This was until 1987, in which Fortnow made use of the universal hashing to prove approximate upper bounds. (In fact, to provide a protocol for proving approximate upper bounds.)


These are not lower-bound results, but they might be useful anyway:

$\rm{NP} \subset \rm{P/poly} \quad \Rightarrow \quad \rm{PH}=\rm{\Sigma_2^p}=\rm{\Pi_2^p}$

$\rm{NP} \subset \rm{P/poly} \quad \Rightarrow \quad \rm{AM}=\rm{MA}$

$\rm{coNP} \subset \rm{NP/poly} \quad \Rightarrow \quad \rm{PH}=\rm{\Sigma_3^p}=\rm{\Pi_3^p}$


I found a nice example in Dick Lipton's blog, An Approach to P=NP via Descriptive Complexity, He proposes an upper bound conjecture (Hypothesis H) that would imply $P\ne NP$.

Hypothesis H: Suppose that $C$ are Horn clauses $C_{1} \wedge \dots \wedge C_{m}$. If they are satisfiable, then there is a valid assignment for the clauses with description complexity at most polynomial in the description complexity of the clauses.

Theorem: Suppose that Hypothesis H is true. Then, $P \ne NP$


Here is an example from Computational Complexity: A Modern Approach by Arora and Barak (page 128):

If every language in $EXP$ has circuits of size $o(2^{n} /n)$ then $P \ne NP$


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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