11
$\begingroup$

For any given question-my current example is this question-is a computed answer on-topic? Would it be appropriate to show the source code to a computer program that solves it? The source code I would be using is here, although I would change the introductory verbiage to be less technical of course, since this is not a programming community.

$\endgroup$
1
  • 2
    $\begingroup$ Personally, I never upvote computer-generated answers. But then I don't understand them well enough to judge. I certainly don't downvote them just for being computer-generated, and I wouldn't try to pass on my voting practices to anyone else or propose them for site policy. $\endgroup$ Commented Apr 6, 2020 at 15:11

1 Answer 1

13
$\begingroup$

This is one of those "yes, with a but/no, with an if" type scenarios... Further, I'm not sure that any of this is formally codified, and beyond the first bullet point is largely based on my observations of convention, so should be taken with prudent volumes of salt.

As a general rule of thumb a good solution to a puzzle requires the final answer in addition to a set of steps or explanation of logic as to how that answer may be reached. So generally speaking a computer based answer is not a good solution to a puzzle. However, that doesn't mean you shouldn't/can't post computer-based answers...


When you should not use a computer:

  1. The tag – there's an explicit tag that is used in cases where a puzzle would be made trivial by use of computer/calculator/tool. In these instances use of computers is obviously inappropriate.

  2. Implied "no computers" – the above tag is not really used in every case it should be because there's generally an implicit expectation that people don't use a computer to trivialise any puzzle that is clearly intended to be solved using logic. For example, most grid logic puzzles (e.g. sudoku, etc) can be solved instantly by online solvers or a small amount of brute force code. Similarly certain classes of word puzzle can be solved instantly using a one line regular expression to search a word list.


When it is ok to use a computer:

  1. To prove a limit/optimum/edge case – Sometimes questions here are about the limits of some class of puzzle or are a semi-open-ended, but bound, specific puzzle. They'll usually be phrased as "What's the fewest...?", "Is it possible to...?", etc. In these instances, computer based solutions can be useful as brute-force proof (especially if mathematical or logical analysis is inappropriate for whatever reason) that the limit/optimum has been reached.

  2. As a non-answer – Some puzzles are intended to be solved by brain power, but may not have a single specific correct answer. In these instances, sometimes it's useful and/or interesting to see "all" the possible solutions as generated by automated means (or, as above, to prove there's not a "better" solution). In this case, however, it is generally polite to wait until the puzzle has actually been solved by a human first and then post the answer with an explicit statement that it's a supplementary answer to capture alternatives to what's already covered by the given solution.

If you do provide a computer derived answer, you should always include the relevant source code (or at least link to it, if it gets large) in addition to explanatory commentary. It does two things: 1) ensures your answer is complete and self contained, and 2) allows people to verify/understand your methods/proof - you may be surprised by how much the community here overlaps with other purely technical ones.


TL;DR: Don't use computers to trivialise puzzles intended to be solved by logic, but feel free to use them to prove/aid meta puzzle analysis, or as non-answer asides after actual solutions are provided.

$\endgroup$

You must log in to answer this question.

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