user3632: Consider a mobile chess app which allows to play correspondence chess.
Some apps, like this one, state that they'll punish someone (e.g., disable their account) if they discover that the person is cheating.
Is it really possible to reliably know if someone is cheating (e.g., uses a chess engine to decide on the next move)?
Are there any heuristics that can exist in the app that will calculate the probability that a player is cheating?

user-1: When someone is playing the computers suggestion 10 moves in a row then I would be convinced that he is cheating. Humans can also detect it since there are true "computer moves" that are nearly impossible to find for humans and that look very artificial. But you also have to consider the case in which the app developers just wrote this as a deterrent.

user3158: As far as I have researched on the aspect of using engine assistance (in live games, let alone correspondence games), I had reached an understanding that it is almost close to impossible to detect it. Except for some moves as mentioned by SomePatzer in his answer, which experts can determine is engine like (with high probability in comparison with the player's level). With the option of Multi-PV in UCI engines, which gives "n" best moves in a given situation, a not so monotonous cheater, would choose the move among these n moves in random. So clearly it cannot be detected.

user3445: The answer is, "Yes." See this article:
http://www.uschess.org/content/view/12677/763
Does your phone application have this capability? Probably no... yes! So don't do it!

3632: <p>Consider a mobile chess app which allows to play correspondence chess.</p>
<p>Some apps, like <a href="http://www.chesspresso.net/faq.jsp#cheats" rel="nofollow noreferrer">this one</a>, state that they'll punish someone (e.g., disable their account) if they discover that the person is cheating.</p>
<p>Is it really possible to reliably know if someone is cheating (e.g., uses a chess engine to decide on the next move)?</p>
<p>Are there any heuristics that can exist in the app that will calculate the probability that a player is cheating?</p>
 -1: <p>When someone is playing the computers suggestion 10 moves in a row then I would be convinced that he is cheating. Humans can also detect it since there are true "<em>computer moves</em>" that are nearly impossible to find for humans and that look very artificial. But you also have to consider the case in which the app developers just wrote this as a deterrent.</p>
 3158: <p>As far as I have researched on the aspect of using engine assistance (in live games, let alone correspondence games), I had reached an understanding that it is almost close to impossible to detect it. Except for some moves as mentioned by SomePatzer in his answer, which experts can determine is engine like (with high probability in comparison with the player's level). With the option of Multi-PV in UCI engines, which gives "n" best moves in a given situation, a not so monotonous cheater, would choose the move among these n moves in random. So clearly it cannot be detected.</p>
 3445: <p>The answer is, "Yes." See this article:</p>

<p><a href="http://www.uschess.org/content/view/12677/763" rel="noreferrer">http://www.uschess.org/content/view/12677/763</a></p>

<p>Does your phone application have this capability? Probably no... yes! So don't do it!</p>
