Induction relies on finding a base case in which a statement is true and proving that if the statement holds for the nth item in a sequence, it holds for the successor.

In this case, the prisoner is finding a base case, then proving that the (n-1)th case is true. This is not so much the flaw. To attack the prisoner's argument, we must either attack his base-case, or his successor rule. His base case is sound, as I see it.

His successor rule is flawed: it is not inductive, but particular; that is, it is not a rule that works in general, for all pairs of successive items, but rather it only works for that instance. While, if not executed on the morning of the 30th, he knows he is done for the next morning, on the 29th he does not know which of the following days he will be executed: the 29th or 30th, and he may be executed on that day, without knowing that he will be executed that morning. Thus, the induction is broken. As time is not symmetric forwards and backwards, and the statement is that he will not have foreknowledge, to start from the future, then work back to the past is an invalid step. I could, of course, prove this using situation calculus, but that is for another day, if not another node.