James Donald writes:
In principle it should be possible to create poker playing software where the server cannot cheat, but it is not obvious to me how this can be done.
Does anyone know of a cheat proof algorithm?
Sure, there are any number of poker algoerithms which prevent the server from cheating. See the many literature references on Mental Poker. One recent protocol is Kurosawa et al, IEICE Transactions on Fundamentals, Vol E00-A, No. 1, January 1997. It is available from citeseer. The problem is that although you can stop the server from cheating, you can't stop players from colluding outside the scope of the game protocols. Two players could communicate by phone, revealing their cards to each other and influencing the betting. This kind of cheating can't be prevented, and it can be significant in an n-player poker game.