4
$\begingroup$

regarding: https://cs.stackexchange.com/questions/32519/equivalence-of-definitions-of-balanced-parentheses-strings

the OP went a long way to write a detailed proof, which he asks us to verify. We end up closing this question.

Let's make a though experiment: Assume the OP asks that questions, and then posts his proof as a self-answer. What would happen then?

I think this could be a nice alternative for closing "check my proof" questions, that may benefit other users.

$\endgroup$
  • 5
    $\begingroup$ But then 1) the question would be a dump and 2) the answer would remain even if nobody checked it. Imho, answers should not be posted without confidence that they are correct. Even though mistakes are made, we don't want to accumulate posts the system suggests as answers to visitors even though they are not such. $\endgroup$ – Raphael Nov 1 '14 at 21:16
  • $\begingroup$ @Raphael it will be checked by voting, as any other answer. The only question we should ask is whether or not it beneficial to future users. In the case of the question I linked to - I believe the answer is yes. $\endgroup$ – Ran G. Nov 1 '14 at 21:25
6
$\begingroup$

I don't think this would work well. The assumption is that answers are posted in the belief that they are correct. In contrast, proofs are best checked by taking the adversarial assumption that they're incorrect and demanding to be convinced by the prover.

The expectation here is that a question is a question in the sense of something that a student would ask a professor and an answer is an expert sharing their knowledge on that topic. The purpose of asking the question is for the asker to find out the answer. This proposal turns the expectation on its head. It invites questions in the sense of examination questions (i.e., something a professor would ask a student) and an answer is an attempt by a non-expert to demonstrate that they understand. The purpose of asking the question has become determining whether the answerer is correct. I think this is a bad idea.

Furthermore, "check by voting" doesn't work because correctness is fundamentally not a matter of democracy. For example, I recently posted an answer that got voted up to something like +8 before somebody pointed out a fatal mistake. I deleted the answer but, if the person who found the error had just downvoted, it would still be at +7 and everyone else would still think it was awesome. But, actually, that one person's "vote" (as I recall, they didn't even downvote, they just commented) invalidated all the +1s.

Problem-dump questions are generally uninteresting so few people will read the answer and actually check it, especially if it's more than a couple of short paragraphs. Is the answer at -1 because somebody didn't like it or because they found an actual error? (Or even because some people object to self-answering and think it's just an attempt to gain rep.) Is it at +2 because two people checked it carefully and found it correct or because one person skimmed it and thought it looked more or less OK and somebody else piled on? Or, as outlined above, because three people thought it was fine and one person found a fundamental error?

$\endgroup$
  • $\begingroup$ David, at first I thought your example is the exception that proves the rule. After reading your answer again, I realize that it actually proves the opposite of your intention - it shows that the voting system does work! At least if we refer to the entire peer-review process as the "voting system", comments included. The fact is that people do read answers, and do verify their correctness and highlight bugs and misses. $\endgroup$ – Ran G. Nov 16 '14 at 2:42
3
$\begingroup$

A major downside of posting a proof for review as an answer is that this leaves comments as the only way of providing feedback. This should only be done when it is expected that the proof is correct and there will be no comment. If the proof is expected to have defect, it can only fit in our question and answers model if the proof is given in the question.

We don't like check-my-proof much here. The problem is not fitting into the Q&A format, so changing the presentation wouldn't affect this. The central issue is that we don't want to debug people's proofs.

Proofs are rather akin to code, so it's instructive to compare Stack Overflow's attitude. There are two different cases:

  • debugging questions: “my code doesn't work, help!” Stack Overflow has an ambivalent attitude to such questions: part of the community wants to see nothing but this (no code → no effort → no answer), another parts hates them (boring).
  • code critique questions: “my code works, how can I make it better?” Stack Overflow rejects these and sends them to Code Review. Note that Core Review insists on code with no known bugs and having been decently tested; code that is known to be defective is rejected there. The “decently tested” part is a problem for proofs (barring the use of a theorem prover, but the case hasn't come up yet).
$\endgroup$

You must log in to answer this question.

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