Wednesday, January 14, 2009

So You Think You Settled P verus NP

  1. You are wrong. Figure it out. Sometimes you can still salvage something interesting out of your flawed proof.
  2. You believe the proof is correct. Your belief is incorrect. Go back to step 1.
  3. Are you making any assumptions or shortcuts, even seemingly small and obvious ones? Are you using words like "clearly", "obviously", "easy to see", "should", "must" or "probably"? You are claiming to settle perhaps the most important question in all of mathematics. You don't get to make assumptions. Go back to step 1.
  4. Do you really understand the P versus NP problem? To show P≠NP you need to find a language L in NP such that for every k and every machine M running in time nk (n = input length), M fails to properly compute L. L is a set of strings. Nothing else. L cannot depend on M or k. M can be any program that processes strings of bits. M may act completely differently than one would expect from the way you defined L. Go back to step 1.
  5. You submit your paper to an on-line archive. Maybe some people tell you what is missing or wrong in your paper. This should cause you to go to step 1. But instead you make a few meaningless changes to your paper and repost.
  6. Eventually people ignore your paper. You wonder why you aren't getting fame and fortune.
  7. You submit your paper to a journal.
  8. The paper is rejected. If you are smart you would go back to step 1. But if you were smart you would never have gotten to step 7.
  9. You complain to the editor that either the editor doesn't understand the proof or that it is easily fixed. You are shocked a respectable editor or journal would treat your paper this way.
  10. You resubmit the paper, appeal, try other journals all to no avail.
  11. You are convinced "the establishment" is purposely suppressing your paper because our field would get far less interesting if we settle the P versus NP problem so we have to keep it open at all costs.
  12. If I tell you otherwise would you believe me?


  1. looks like a post by Bill,
    not lance.

  2. Do you have any example of people going as far as step 9 (for the P=NP question) ?

    I don't want any names.

  3. I have seen a paper go to step 10. The author claimed it was the job of the referees to find an explicit counterexample to his proof, rather than his job to write a comprehensible and convincing proof.
    (His was the common mistake of claiming without adequate proof that any algorithm that solved his problem had to work in the way he specified.)

    David Johnson

  4. I love this policy line from JACM:

    No author may submit more than one paper on the P/NP or related long-standing questions in complexity theory in any 24 month period, except by invitation of the Editor-in-Chief. This applies to resubmissions of previously rejected manuscripts.

  5. Anon 2: Rafee Kamouna has done this and has made his name public; see, e.g., the recent exchange on Luca's blog

  6. Do you really understand the P versus NP problem? To show P≠NP you need to find a language L in NP such that for every k and every machine M running in time nk (n = input length), M fails to properly compute L. L is a set of strings. Nothing else. L cannot depend on M or k. M can be any program that processes strings of bits. M may act completely differently than one would expect from the way you defined L. Go back to step 1.
    you don't need to find an L; proving the existence of such L is sufficient.

  7. When I was in 2nd year undergrad, someone mentioned the book "Emperor's New Mind" by Penrose, which I then read. This book introduced me to the P/NP problem and the lack of poly time algorithm for SAT.

    I thought about this problem and came up with (a wrong) polytime algorithm to solve 3SAT. I coded the algorithm and tried it on a few instances and found it to work great.

    Hence, I sent an e-mail to a leading professor in the field with my "findings."

    He was kind enough to explain how it is unlikely that my algorithm works. He asked me to write a SAT instance generator for Pigeon Hole Principle and try the generated instance on my SAT solver.

    Of course, that showed me the problems with my algorithm.

    Looking back, I really appreciate the patience of this professor. He must be receiving a lot of e-mails from nuts who claim to have solved the P/NP problem.

  8. Someone should build up this list into a game: "Chutes and Ladders, Crackpot Science Edition".

    Lance has provided some chutes, we just need more ladders. For starters:

    'Befriend and influence a once-famous scientist who is now aged and emotionally vulnerable.'

    'Receive a grant from a private think-tank which believes P=NP for religious reasons.'

    'Organize an ongoing symposium for the discussion of your ideas, to meet alternate Wednesdays in the public library.'

    The one thing I'm not clear on is what the victory conditions would be. Maybe the game just loops.

  9. Actually, private think tanks are not religious at all. They don't worship God, but themselves.

  10. so wait a second, you are telling me that P vs NP is not do-able ?

    I believe that P=NP. come on,everyone, would that be such a huge surprise ?

    how surprising was it when we saw that primes in p.

  11. Well, eventhough there are for sure many crackpot ideas put forward, I consider the academic attitude towards the P/NP issue far too biased and even presumptuous towards "P!=NP, and it simply cannot be proven". The list above just adds evidence to my view. Or is there any way to reach an "accept" state? Why isn't there? Just because the beliefs are too strong. Sure, there must be tight filters. But given the hardness of the question, and considering hardly anybody can make a living working just on this question, which is 'considered unsolvable', how would you accept a sound solution put forward by someone never heard of? Sure, todays crackpots have many options to discredit themselves, but then, is formal proof the only way for this century's Einstein to be appreciated?

  12. :)

  13. Theorem: P!=NP
    Proof: P!=NP.

    You think I'm wrong? Come on, you have to find the flaw in my proof!

  14. @paulina: PRIMES \in P was not surprising. The consensus within the community is that randomness does not buy you super-polynomial power. The primes problem had a very simple randomized algorithm that was known for a long time.

    1. That's a weird thing to be a consensus, seeing as NP literally stands for "nondeterministic polynomial time"---i.e. if randomness doesn't buy you super-polynomial power, then, uh, P=NP.

  15. Anon 5:

    Rafee Kamouna didn't do any of the above. The above steps assume a proof. I submitted nothing but a one-step argument. Run this Prolog program:


    ?- Young(John,0.7).

    It will give you the answer:"Yes"="1" contradicting "0.7". There is nothing to understand here, either you agree that this is a self-contradictory fact or disagree. If you agree, then all the results follow with immediate effect. No single proof step is required. Just this one-step argument. If you disagree, then your disagreement is IDEOLOGICAL.

    So, either all the results follow, or mathematics and science is an ideology and not a methodology.

    Nevertheless, a lot of time is needed to absorb the SHOCK, not to understand what it!


    Rafee Kamouna.

  16. Sorry, Last sentence:

    Nevertheless, a lot of time is needed to absorb the SHOCK, not to understand it!


    Solve the relevance of Music to P vs. NP, you will soon find out why Integer Factoring (in NP) is more difficult than SAT (NP-complete)!

    It is not necessary to sing songs from Susan Haack to Lotfi Zadeh for this, yet sufficient!


    Rafee Kamouna.

  17. Anon #14 (response to Paulina),
    Aren't you pre-supposing that an NP-complete(-hard) problem will take exponential time?
    If a problem already has a polynomial time algorithm, then how do you define a super-polynomial speedup?

    Another flaw in people's thinking is that they are assuming the algorithm will have to work as a SEARCH or existence solution. Counting has been assumed to be harder than search. Is there any proof of that? What if counting leads to the solution to a search problem -- in O(n^50) time?

    There is just too much of belief in NP!=P, too many tacit conjectures, and that may be the biggest hurdle.

  18. I don't think people have made much progress since Galileo.

    The sheer arrogance and ignorance continue to thrive.

  19. Anon and Lance,

    To prove NP=P you don't even need to worry about an NP-complete language.

    How about counting all the perfect matchings? What is the NP-hard language here? (Let's not talk about the P-time reduction here)

    Proving a construction (an algorithm) for one machine would be a lot easier than proving the un-computability on perhaps infinitely many machines.
    The later approach is a big issue here!

  20. Anon 13, {Proof: NP != P}
    Couple of years ago UC Berkeley did exactly this-- they had a workshop on resolving the P vs NP issue.
    But all they were discussing was a framework for proving NP != P.

  21. Lance,
    "You are wrong" = "Guilty unless proven otherwise"

  22. Is there some sort of partial joke here? Because it sounds like it's saying P?=NP CAN'T be resolved, as anyone who "thinks" they have a solution is "wrong" acoording to "step 1".

    Granted, there are oodles of crank "proofs" out there but that doesn't mean a real proof (for whichever is true: P=NP or P!=NP) is impossible.

  23. What about Grigori Perelman being proved correct, after submitting to an "online archive". Then he rejected the academic establishment ;)

    Some introspection is in order for the academic establishement, no seriously ...

  24. Jack white says:
    "You are wrong" = "Guilty unless proven otherwise"
    Grigori Perelman might agree.

  25. Seems so very apt in case of Deolalikar. But I hope that something can be salvaged from his attempt - if nothing else, the speed and enthusiasm of all the online collaborators should point to a new and faster way of working on promising new ideas.

  26. @23: you have something there ...

  27. As a practical matter, assuming your interests lie on the NP=P side of the question, it should suffice to demonstrate an algorithm which quickly solves hard instances of Satisfiability derived from polynomial reduction of factoring or theorem proving problems. While not a formal resolution of P vs NP, it is instantly self-evident whether what you have done actually works.

  28. What if the very P≠NP question is a stupid idea?
    I wouldn't be surprised, it just happened that the formulation by Stephen Cook was "tidy" but how is this an argument about the importance of the result?
    Mathematicians are childishly playing with their abstruse toys without much regard for reality...

  29. I'm at step 5).
    If you see (italian page, but link to english page) and you write me errors [small or large] I do not go to step 7) and to avoid passing stupid.
    If there is someone so kind ..
    Thanks, regards.

  30. I just did a quick read of Luigi Salami's proof and I can verify that it is indeed correct. Unfortunately, he has not submitted it to my journal, so I must remain entirely anonymous. I would be very interested to see more of your work in the future.


  31. What a negative post, the author believes/assumes that NP is not equal to P, and thus the post would is valid because proving NP is not equal to P is indeed impossible.
    I don't think a mathematician should believe or assume anything. Only Pure Logic should be used, nothing else.

  32. I can relate with some of the people here. I have gone to professors with ideas that I thought were really cool, mind you, I wasn't claiming P=NP, but in the end I came out a little bit humbled and with a good amount of respect for the great patience that some professors have.