If $g:\mathbb{N}\to\mathbb{N}$ is primitive recursive and $f:\mathbb{N}\to\mathbb{N}$ is computable such that $f(n) \leq g(n)$ for all $n\in \mathbb{N}$, does this imply that $f$ is primitive recursive?

# Is the collection of primitive recursive functions a lower set in the poset of computable functions?

No. Let $g$ be the constant function 1.

Let $\{h_n\}$ be a computable list of all primitive recursive functions and let $f_n(x)=\min(h_n(x),1)$.

So $\{f_n\}$ is a computable list of all primitive recursive functions bounded by 1.

Now let $F(n)=1-f_n(n)$. Then $F$ is another computable function bounded by 1, distinct from all the $f_n$, so $F$ is not primitive recursive.

No, as Bjørn explained in his answer, but it is a lower set in the class of functions with primitive recursive graphs. Specifically, if $f:\mathbb{N}^k\to\mathbb{N}$ is such that

- The function $g:\mathbb{N}^{k+1}\to\{0,1\}$ such that $g(x_1,\ldots,x_k,y) = 1 \iff f(x_1,\ldots,x_k) = y$ is primitive recursive, and
- There is a primitive recursive function $h:\mathbb{N}^k\to\mathbb{N}$ such that $f(x_1,\ldots,x_k) \leq h(x_1,\ldots,x_k)$,

then $f$ is primitive recursive.

The reason is that we can recover $f$ by bounded search: $$f(x_1,\ldots,x_k) = \mu y \leq h(x_1,\ldots,x_k)\,[g(x_1,\ldots,x_k,y) = 1].$$

Note that there are many functions that are not primitive recursive but whose graphs are primitive recursive, for example the Ackermann function has a primitive recursive graph. This fact is useful to show that the inverse Ackermann function is primitive recursive, for example.