The Ackermann function $A(m,n)$ is a binary function on the natural numbers defined by a certain double recursion, famous for exhibiting extremely fast-growing behavior.

One finds various slightly different formulations of the Ackermann function, with slightly different initial conditions. I prefer the following version:

\begin{eqnarray*} A(0,n) &=& n+1 \\ A(m,0) &=& 1, \quad\text{ except for }A(1,0)=2\text{ and }A(2,0)=0\\ A(m+1,n+1) &=& A\bigl(m,A(m+1,n)\bigr). \end{eqnarray*}

I like this version because it has the nice properties that

\begin{eqnarray*} A(0,n) &=& n+1\\ A(1,n) &=& n+2\\ A(2,n) &=& 2n\\ A(3,n) &=& 2^n\\ A(4,n) &=& 2^{2^{\cdot^{\cdot^2}}}{}^{\bigr\}n}\\ \end{eqnarray*}

In this way, the levels of the Ackermann function exhibit increasingly fast-growing behavior.

Each horizontal level of the Ackermann function, the function $A_m(n)=A(m,n)$ considered as a unary function with $m$ fixed, is defined by recursion using the previous level, and consequently all these functions are primitive recursive.

Furthermore, these functions are unbounded in the primitive recursive functions in the sense that every primitive recursive function is eventually bounded by some horizontal level $A_m$ of the Ackermann function. It follows from this that the diagonal of the Ackermann function $n\mapsto A(n,n)$ is not primitive recursive.

My question is about the sections of the Ackermann function taken on the *other* coordinate, the vertical sections of the Ackerman function, the functions $A^n(m)=A(m,n)$, for fixed $n$.

**Question.** Are the vertical sections of the Ackermann function $A^n$ each primitive recursive?

I don't expect the answer to depend on which particular version of the Ackermann function one uses, but just in case, let me mention another standard version, which has a smoother definition, which works better in many of the inductive arguments, even though the level functions are not as nice.

\begin{array}{lcl}\operatorname {A} (0,n)&=&n+1\\\operatorname {A} (m+1,0)&=&\operatorname {A} (m,1)\\\operatorname {A} (m+1,n+1)&=&\operatorname {A} (m,\operatorname {A} (m+1,n))\end{array}