Pure functions vs. in wallet code

In this example, since it is a two player game, if {10} was signed by B then A can challenge B on-chain by calling forceMove with {10} and {11}. If, {11} was isFinal then he would call conclude.