I believe I found a solution to the problem of P vs NP. There is a big chance that my proof attempt is not valid. I want to get help finding my mistake or telling me that there is no one. (We must give a chance for valid proof even if it is extremely small.)

How should I ask my question without violating any rules of this site?

Just for you to know

  • The problem been introduced for the first time 34 years before this post been posted, by Stephen Cook. It considered by many to be the most important open problem in computer science and math.
  • For the day this post been posted there are 7,197,514,362 people leaving in the world.
  • There are 316,364,000 people living in United States in 2013
  • Only 49,562 research doctorates were awarded in United States 2009

If we assume that all the research doctorates in United States stays in same percentage in the world, and the same for the last 34 years, and we assume that they invest at least one year of their life for the study of P vs NP problem. We can say that there is 1 : 411,563,801,461 chances that I will find the solution to P vs NP problem today.

  • 4
    $\begingroup$ Have you not received multiple answers to this questions before? It's still the same: write it up as best you can and publish it (in digestible pieces). I don't see how your "calculation" is related to your question. Also, I don't agree with your assumption "we must give a chance"; why would we have to? (By the way, your "calculation" is naive at best because you assume that every person stands the same chance of finding such a solution, every day.) $\endgroup$
    – Raphael
    Dec 6, 2013 at 12:18
  • $\begingroup$ @Raphael sorry google translate doesn't know how to swallow "indigestible pieces", can you explain what you meant? Also I had asked many related question before on many sites of stack exchange. This question is stands alone and does not related to them. $\endgroup$ Dec 6, 2013 at 13:18
  • $\begingroup$ short, manageable pieces. (cf "to digest") $\endgroup$
    – Raphael
    Dec 6, 2013 at 15:21
  • 1
    $\begingroup$ This is essentially a duplicate of What constitutes an appropriate check-my-proof question?. Also OP has asked essentially the same question on Mathematics Meta, see 1 and 2. $\endgroup$
    – Kaveh
    Dec 6, 2013 at 16:42
  • $\begingroup$ similar question, is there any way to make a question about a P=?NP proof on topic, tcs.se $\endgroup$
    – vzn
    Dec 13, 2013 at 5:26
  • 1
    $\begingroup$ ps your "calculation" of the probability solving P vs NP makes no sense. significant time/effort has indeed been spent by world experts over 4 decades, but there is no way to estimate how that relates to total effort required.... $\endgroup$
    – vzn
    Dec 13, 2013 at 22:53

3 Answers 3


This answer is tailored to the OP; though ofc many of these points can apply to other people asking these types of questions.

For any question related to a touchy topic, to ward off people's automatic-bad-question-alarms (problems):

  • It must be small/simple, most importantly, understandable
    • This is the most important, but possibly the hardest for you to do.
    • Many of your questions included a lot of unnecessary background information; you had a minor question, but it seemed as if you wanted people to solve the whole problem for you; as if, they should see what you are saying and say "ahhh, I get it" and answer "YOU'VE DISCOVERED IT!!". Instead of answering the minor question, they attacked the entire background (which was indeed quite faulty). Therefore, since you might have several faulty parts, don't make your questions big; otherwise people will bug-out on the first fault they find (particularly with P vs NP questions, and particularly with long and tedious questions). Which leads us to:
  • If it is a major result, expect that you are WRONG, especially if you know you are approaching (read: diving into) the subject as an amateur! Which leads us to:
  • Take the assured-ness down a few notches. If you know you might be messing up on your "proofs", don't be so insistent that you are right, be more tentative.
  • If you use the terminology obviously wrong, it is bad, perhaps you should be asking questions about the terminology, or looking it up on wikipedia, or very likely there are previous questions on our very site explaining the terminology.
    • Sometimes, you had some understanding of the terminology, but were using it obviously wrong. This isn't a language-barrier issue; this is a mathematical language barrier: a requirement when conversing in math, to use the mathematical language exactly correctly. At the very least, don't get mad when people don't like the question because you are using terminology so wrong it is impossible to understand. Which leads us to,
  • When framing the question, think about how someone else would read it; think if it is understandable. It is easy to put words out that try to express what you are thinking; it is hard to make those words good input to other peoples minds.
  • Please, don't edit your question a hundred times, to change the meaning, it ruins all the existing answers and makes the question a moving target; keep in mind, that by the time you are editing your question, it is likely almost no one will re-read it again.

As a result of the above (solutions):

  • Break the question down into small easily readable parts. It should be one or two small paragraphs; try limiting yourself to, say, two thousand characters. (the limits don't apply universally ofc, I am merely suggesting a limit that will not cause people's eyes to glaze over, even if there are other issues with the question).
  • Get the question right; look up the terminology, use it correctly.
    • Take your time publishing the question; review it several times, think about it from another perspective, and see if it is understandable. Get the math terminology correct (not addressing the language barrier).
    • If you run into terminology that you do not fully understand, congratulations! You have another question to ask first. Of course see if it was asked already, or answered trivially on the net: The same ideas apply recursively to the new question!
  • Try to make the question itself non-trivial; you can look up trivial stuff directly on wikipedia or elsewhere.
  • If it is anything mentioning "P vs NP", and claiming a result, you are doing it wrong: you should be claiming how your result doesn't make sense, as it would mean a breakthrough, and the question should be to help find the faults. Therefore, always change "check my proof" to "find my error" (and I don't mean just the tags).
  • Ask the question with humility.
  • If you edit the question to fix it up, and it changes the meaning of the question too drastically, ask it again. Of course, if the question is bad in other ways aside from your edit, it might just sink again.
  • 3
    $\begingroup$ This is all good advice for posting material about such questions anywhere. But even if heeded, the resulting questions are likely not a good fit for SE (cf "homework grading" and "check my proof" discussions). $\endgroup$
    – Raphael
    Dec 6, 2013 at 15:23
  • $\begingroup$ @Raphael my response wasn't as much about cs.SE rules as it was about the psychology of people who want to down-vote and close questions. $\endgroup$
    – Realz Slaw
    Dec 6, 2013 at 18:19

I think it has been explained why such posts are not suitable for any SE site. They are not useful to anyone else: questions here are not meant just for the author but also should benefit others. The real intention of such posts is typically not learning anything or solving any actual problem the OP is facing but the real intention is to receive verification for the OP's claims. SE sites should not be abused for proof checking people's attempts to solve open problems.

I think this post demonstrates why we should not allow such posts. Not only the OP is incapable of solving P vs. NP and continues to make simple elementary mistakes, he is incapable of understanding what is wrong with his arguments even after people tell him. It results in long unnecessary discussions that could have been easily avoided if the OP had read an introduction to complexity theory textbook.

I think the appropriate answer in these situations is not telling the OP what is wrong with the argument but to tell the OP to go read an introduction to complexity theory textbook before trying to solve its most famous problem. As they say on SO, "questions must demonstrate a minimal understanding of the problem being solved" which is not the case here.


there is mountains written on the P vs NP problem. its a great/awesome/formidable/worthwhile problem to study. many or even most people working or studying CS have some interest in it. but, many neophytes get interested thinking it might be like other problems they have encountered from their experience. it is deceptive that way. easy to state, very difficult to prove. there are many problems like that in math and computer science. some pros in the field even call them "diseases" for this & related reasons.

its of course impossible to read a large part of all that is written on P vs NP. however, there are many good surveys. there are basics about the problem that even neophytes should be aware of and can learn without too much trouble. it can be approached. one should realize that many basic questions about P vs NP have already been asked in the literature or in these forums. search for the related questions.

questions do not exist here out of a background context. there are a few experts that "hang out" in these forums. they notice who is asking what questions and what their backgrounds are. if you dont follow up on their answers, they will begin to think they are wasting their time answering your questions. this includes reading and familiarizing yourself with the basics on the problem. actually much of it can be found on wikipedia. if you dont read anything outside of what is posted in these forums (esp on an extremely challenging problem of this type), your attitude will be judged as not serious and you will only continue to frustrate yourself & others in their interactions with you & the spirit of generosity in cyberspace will only be degraded over time...

"you have to crawl/walk before you can run" applies in the CS field as in any other field.

for example here are a few basics that one should be able to answer before attempting to work on P vs NP

  1. what is the page on the internet that lists flawed proofs? have you looked at any on this list? how many are on this list? have you found any errors in them? do you think your talent exceeds those who have written them?

  2. answer basic questions about big-oh O(n) notation. for example, explain why if it is known that a program runs in O(n^k) time, it is not guaranteed that one can also run it in O(n^(k-1)) time.

  3. be aware of the cook-levin proof and be able to describe roughly how it works.

stuff like this is all taught in basic undergraduate courses (and what arrogance/narcissism would make anyone think they have anything to contribute on it if they havent even passed an undergraduate CS course...?)


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .