# Implications of proving NP=RP on complexity theory

Edit: As indicated below by Mahdi Cheraghchi and in the comments, the paper has been withdrawn. Thanks for the multiple excellent answers on the implications of this claim. I, and hopefully others, have benefited from them. It would probably be unfair to accept just one one answer in this case.

I apologise if this is off topic. In the paper just uploaded today (Edit: the paper is now withdrawn due to a flaw, see the comments below)

https://arxiv.org/abs/2008.00601

A. Farago claims to prove that NP=RP. From the abstract:

We (claim to) prove the extremely surprising fact that NP=RP. It is achieved by creating a Fully Polynomial-Time Randomized Approximation Scheme (FPRAS) for approximately counting the number of independent sets in bounded degree graphs, with any fixed degree bound, which is known to imply NP=RP. While our method is rooted in the well known Markov Chain Monte Carlo (MCMC) approach, we overcome the notorious problem of slow mixing by a new idea for generating a random sample from among the independent sets.

I am not an expert in the complexity hierarchies, why is this thought to be so surprising?

And what are the implications, if the claim is correct?

• The paper does not pass the most basic smell test: it does not even mention relativization, let alone explain in credible detail how it overcomes this barrier. Aug 5, 2020 at 7:48
• @VS. Relativization applies equally well to proofs of NP = RP as to proofs of $\mathrm{NP\ne RP}$. Aug 5, 2020 at 8:43
• Counterexample of Theorem 1 at the end of this thread: m.facebook.com/…. Aug 5, 2020 at 16:03
– usul
Aug 5, 2020 at 16:25
• @usul user Yuval Peres said "I think Theorem 1 on p. 7 is false. The following counterexample uses the notation of the Theorem and is a modification of an example the author gives on p. 6. Take S={1,2,3} and H={1.2}. Let k=7 and let A be a sequence of T=n^k symbols that are IID 1 or 2, equally likely. Let B consist of T IID symbols that are 1 or 3, equally likely. Let X be either A or B with probability ½ each. Then H is ½- robust and \pi_H(2)=⅓, but \alpha(2) tends to ¼ as n tends to infinity.", and then "I wrote to the author as have several others. He told me he is withdrawing the paper." Aug 5, 2020 at 17:03

Prelude: the below is just one consequence of $$\mathsf{RP}=\mathsf{NP}$$ and probably not the most important, e.g. compared to collapse of the polynomial hierarchy. There was a great and more comprehensive answer than this, but its author removed it for some reason. Hopefully the question can continue to get more answers.

$$\mathsf{P}/\mathsf{poly}$$ is the set of decision problems solvable by polynomial-size circuits. We know $$\mathsf{RP} \subseteq \mathsf{BPP}$$ and, by Adleman's theorem, $$\mathsf{BPP} \subseteq \mathsf{P}/\mathsf{poly}$$. So among the only mildly shocking implications of $$\mathsf{RP}=\mathsf{NP}$$ would be $$\mathsf{NP} \subseteq \mathsf{P}/\mathsf{poly}$$.

Another way to put it is that instead of each "yes" instance of an $$\mathsf{NP}$$ problem having its own witness, there would exist for each $$n$$ a single witness string that can be used to verify, in polynomial time, membership of any instance of size $$n$$.

• Note that $NP \subseteq P/poly$ obviously implies that $NP \subseteq coNP/poly$, which is often assumed to not hold to prove kernelization lower bounds in parameterized complexity. $NP\subseteq coNP/poly$ is known to cause the polynomial hierarchy to collapse to the third level (which may be considered surprising). Aug 5, 2020 at 10:12
• @VS I do not know, it would imply failure of ETH but that is all I found. Maybe it warrants asking a seperate question? Aug 8, 2020 at 17:20

A simple answer is that we're "pretty sure" that $$\mathsf{P} \neq \mathsf{NP}$$, and we're "pretty sure" that $$\mathsf{P} = \mathsf{RP}$$, so we're "pretty sure" that $$\mathsf{NP} \neq \mathsf{RP}$$".

• Yes, and more -- P != NP is conceptually interpreted as "the things we can efficently compute (P) do not include all NP problems". But conceptually RP and BPP also capture "things we can efficiently compute". So even if 'on a technicality' P != RP, we'd still say RP != NP has basically the same justifications as P != NP.
– usul
Aug 5, 2020 at 16:39

The implication that PH collapses to BPP, and is therefore effectively tractable, is very distressing, but fortunately appears to be based on a confusion of randomized complexity classes. Zachos names a class R for which a supermajority of paths of a NP machine accept if the input is a member of the language, and all paths reject if not. The class RP in Sinclair's book, and hence for which their principal result might hold, is such that a bare majority of paths accept if the input is a member of the language, and all reject if not.

These two are not necessarily (or likely) to be the same class. Zachos' R is trivially contained in BPP, but as far as I can tell Sinclair's RP is not. So NP=RP (not R) would not imply NP contained in BPP.

• Yes, these are the same. You get the same class of languages if the $1/2$ in the definition of RP is replaced by any other constant strictly between $0$ and $1$ (such as $3/4$, or whatever it is that "supermajority" means for you). See any textbook. Aug 5, 2020 at 18:42
• That is incorrect. Any constant greater than ½, e.g. ⅔, can be replaced by another such constant, e.g. ¾, but ½ cannot. A bare majority could mean ½ + 2^(-n²), which cannot be amplified to an arbitrary threshold of probability in only polynomially many iterations. Aug 5, 2020 at 18:48
• This difference between bare majority and supermajority is the difference between PP and BPP. Aug 5, 2020 at 18:49
• You’re mistaken. What you say would be true for BPP, but for RP, an arbitrarily small positive constant is enough. Do see a textbook, as I already mentioned. Aug 5, 2020 at 18:54
• Thank you, I get it now. Cunningham's Law works again! Aug 5, 2020 at 19:10