# Tennenbaum's theorem without overspill

While trying to clean up Wikipedia's proof sketch for Tennenbaum's theorem (there is no computable non-standard model of Peano Arithmetic), the following strategy occurred to me. Since it seems to be simpler than the ones presented in Kaye's 2006 paper -- in particular it avoids any reference to the overspill principle -- I think I must have overlooked some subtlety. But what?

Select two recursively enumerable but recursively inseparable disjoint subsets $A, B$ of $\mathbb N$. For concreteness, let's suppose $A$ is the indices of Turing machines that halt in an odd number of steps on an empty tape and $B$ is the indices of Turing machines that halt in an even number of steps.

Then there exist primitive recursive functions $f$ and $g$ such that $A$ is the range of $f$ and $B$ is the range of $g$. Moreover, at least with the above choice, we can choose $f$ and $g$ such that PA proves that the ranges of $f$ and $g$ are disjoint.

Now, given a countable nonstandard model $M$ of PA, choose any nonstandard element $c\in M$, and let $$C = \{ n\in\mathbb N \mid M\vDash {\exists x<c: f(x)=\bar n} \}$$ Then $A\subseteq C \subseteq \mathbb N\setminus B$ because primitive recursive functions give the usual results for standard elements, and the full range of $f$ in $M$ is disjoint from the range of $g$ and so in particular from $B$. Therefore $C$ is not recursive.

However, all of $C$ is encoded by a single element of $M$, namely $a=\prod_{x<c} p_{f(x)}$ where $p_n$ is the $n$th prime. PA proves that this product must exist within $M$ even though it is an "infinite" product when we view it from the outside.

Now, exactly as in Kaye's paper (Threorem 2.8), if addition in $M$ were computable, we could decide $C$ (by dividing $a$ by $p_n$ with remainder in $M$ by brute-force search). But $C$ is not recursive, so $M$'s addition is not computable.

I'm assuming that this doesn't actually work, because Kaye, an expert on the subject, resorts to a more indirect way to argue (top of page 9) that "Tennenbaum-type results can be proved by means other than overspill". But where's the gap?

• How "PA proves that this product must exist within M even though is it an infinite product" ? – Xoff Jan 24 '14 at 9:09
• @Xoff: Since $f$ and $p_n$ are primitive recursive, $\prod_{x<c}p_{f(x)}$ is a primitive recursive function of $c$. And PA proves the totality of any primitive recursive function. – hmakholm left over Monica Jan 24 '14 at 11:23
• Sorry for my dumb questions, but if you're using first order Peano axioms, how can you show that a primitive recursive function is total ? I usually use the fact that we have a well founded order, but in first order, I'm not sure how to do it. – Xoff Jan 24 '14 at 12:38
• @Xoff: If you have a definition of $f$ by primitive recursion, use Gödel's $\beta$ trick and so forth to get a formula $\varphi(x,y)$ that represents $f$ in the sense that $\varphi(x,y)\iff f(x)=y$. You can then prove in PA that $\forall x \exists_1 y : \varphi(x,y)$ by induction on $x$, and also that the function thus defined satisfies the recursion equations for $f$. – hmakholm left over Monica Jan 24 '14 at 13:18
• I believe the main reason for circumventing overspill is to extend Tennenbaum's theorem to theories that do not afford $\Delta_0$-induction. In that setting, there is even trouble using the Gödel $\beta$-function. – Lawrence Wong Jan 24 '14 at 13:58

One issue is that, by using overspill, Kaye is able to avoid all mention of primitive recursive functions. Since these are not in the language of PA, as you know, it requires a substantial amount of work to verify that PA preserves their properties. The proof in the question relies on all this machinery to establish the existence of $a$; the construction of $a$ by overspill only requires the induction scheme that is already in PA.
• Hmm, right. So it might be a question of perspective. When Kaye writes that $A$ is r.e. and therefore $A=\{n\in\mathbb N\mid\mathbb N\vDash\exists x\phi(x,n)\}$ for some $\phi$, I tend to think "it is? Oh yes, because $\phi$ can be chosen as $f(x)=n$ for some appropriate p.r. function $f$, which I know PA can represent" -- so from my point of view he's already implicitly using primitive recursion. However, if he's writing for an audience whose first intuitive thought at "recursively enumerable" is "something defined by a $\Sigma_1$ formula", then he doesn't need primitive recursion. – hmakholm left over Monica Jan 25 '14 at 14:32