Formalizing Moessner's theorem and generalizations in Nuprl

Moessner’s theorem describes a procedure for generating a sequence of n integer sequences that lead unexpectedly to the sequence of nth powers 1, 2, 3, . . . . Several generalizations of Moessner’s theorem exist. Recently, Kozen and Silva gave an algebraic proof of a general theorem that subsumes Moessner’s original theorem and its known generalizations. In this note, we describe the formalization of this theorem that the first author did in Nuprl. To the best of our knowledge, this is the first existing machine formalization. On the one hand, the formalization remains remarkably close to the original proof. On the other hand, it leads to new insights in the proof, pointing to small gaps and ambiguities that would never raise any objections in pen and pencil proofs, but which must be resolved in machine formalization. 1998 ACM Subject Classification F.4.1 Mathematical Logic