There is a simple case where the NimSum= 0 and I can make a move where the NimSum is, again, 0. So the logic is flawed.