Logic – Is the One-Point Compactification of $\mathbb{N}$ Computably Countable?

compactificationscomputability-theorycomputable-analysislo.logic

The one-point compactification $\mathbb{N}_\infty$ of $\mathbb{N}$ is obtained from the discrete space $\mathbb{N}$ by adjoining a limit point $\infty$. It may be identified with the subspace of Cantor space
$$
\mathbb{N}_\infty = \{ \alpha \in \{0,1\}^\mathbb{N} \mid
\forall n \,.\, \alpha_n \geq \alpha_{n+1} \}.
$$

Indeed, we may embed $\mathbb{N} \to \mathbb{N}_\infty$ by mapping $n$ to the sequence
$$\overline{n} = \underbrace{1 \cdots 1}_n 0 0 \cdots,$$
and taking $\infty = 1 1 1 \cdots$.

Classically of course adjoining a single point to a countable set has no effect on countability. How about the computable version? If we adjoin the new point as an isolated one then of course we again obtain a countable set. This question is about adjoining $\infty$ as a limit point in the sense of metric spaces.

Let $\varphi$ be a standard enumeration of partial computable maps.

Question: Do there exist a total computable map $q$ and a partial computable map $s$ such that:

  1. $\varphi_{q(n)} \in \mathbb{N}_\infty$ for all $n \in \mathbb{N}$
  2. For all $k \in \mathbb{N}$, if $\varphi_k \in \mathbb{N}_\infty$ then $s(k)$ is defined and $\varphi_{q(s(k))} = \varphi_k$.

The map $q$ realizes an enumeration $\mathbb{N} \to \mathbb{N}_\infty$, and $s$ the fact that $q$ is surjective.

Clarification: The following map $q : \mathbb{N} \to \mathbb{N}_\infty$ comes to mind:
$$q(n)(k) =
\begin{cases}
1 & \text{if $T_n$ has not terminated within $k$ steps of execution}\\
0 & \text{if $T_n$ has terminated within $k$ steps of execution}
\end{cases}
$$

However, it seems hard to get the corresponding map $s$ witnessing surjectivity of $q$.

(I should say that $q$ works as a computable enumeration for yet a third way of adjoining a point to $\mathbb{N}$, namely $$\mathbb{N}_\bot =
\{ S \subseteq \mathbb{N} \mid \forall i, j \in S \,.\, i = j \}.$$

We embed $n \in \mathbb{N}$ into $\mathbb{N}_\bot$ as a singleton $\{n\}$, while the extra point is $\emptyset$. Think of $\mathbb{N}_\bot$ as the set of enumerable subsets of $\mathbb{N}$ with at most one element.

Best Answer

The answer is no. Suppose that there are computable functions $q$ and $s$ as you describe.

Let $k$ be a program that performs the following task. It starts enumerating $1$s at the start of the sequence until it discovers that $s(k)$ is defined. (We use the Kleene recursion theorem to know that there is such a self-referential program $k$.) Note that this must eventually happen, since otherwise $\varphi_k$ would be $\infty$, in which case $s(k)$ should be defined.

When it finds that $s(k)$ is defined, then the program pauses the enumeration of its output and starts computing $\varphi_{q(s(k))}$. This will definitely produce an element of $\mathbb{N}_\infty$. And so the program waits until either it produces more $1$s than we have put on $\varphi_k$, in which case program $k$ switches to $0$s immediately, causing $\varphi_{q(s(k))}\neq\varphi_k$; or else $\varphi_{q(s(k))}$ produces a $0$, in which case we can let $\varphi_k$ produce all $1$s, again causing $\varphi_{q(s(k))}\neq\varphi_k$.

Related Question