《计算模型导引》第一章习题¶
13¶
习题1.13
设 f:\mathbb{N}\rightarrow\mathbb{N} 满足 $$ \begin{align} f(0) &= 1, \\ f(1) &= 1, \\ f(x+2) &= f(x)+f(x+1), \end{align} $$ 证明:
(1) f\in\mathcal{PRF};
(2) f\in\mathcal{EF}.
证:
(1)
令 F(n)=\langle f(n),f(n+1) \rangle,从而 F(0)=\langle f(0), f(1)\rangle=2\cdot 3=6。
$$ \begin{align} F(n+1) &= \langle f(n+1), f(n+2) \rangle \\ &= \langle \text{ep}_1(F(n)), \text{ep}_1(F(n))+\text{ep}_0(F(n)) \rangle \\ &= H(F(n)) \end{align} $$ 其中 H(x)=\langle\text{ep}_1(x),\text{ep}_1(x)+\text{ep}_0(x)\rangle 为初等函数。
所以 F(n)是原始递归函数,f(x)=\text{ep}_0(F(x))为原始递归函数。
(2)
证法一:
提示
参考定理1.31的证明
首先为 f(n)找上界。用数学归纳法易证 f(n)\leq 2^n. 令 g(n)=2^n,易见 g\in\mathcal{EF}.
令 F(n)=\langle f(n),f(n+1) \rangle,G(n)=\langle g(n), g(n+1) \rangle. 显然 F(n)\leq G(n).
令 H(n)=\langle F(0), F(1),\cdots,F(n)\rangle, B(n)=\langle G(0),G(1),\cdots,G(n)\rangle. 显然 H(n)\leq B(n).
根据 G\ddot{o}del 编码定义有
$$ B(n)=\prod^n_{i=0}[P_i^{G(i)}] $$ 显然 B(n)\in\mathcal{EF}.
因为 \text{ep}_0(H(n))=F(0),且 \forall 0\leq i< y,有 $$ \begin{align} \text{ep}_{i+1}(H(n))&=F(i+1) \\ &=\langle \text{ep}_1(F(i)), \text{ep}_1(F(i))+\text{ep}_0(F(i)) \rangle\\ &=\langle \text{ep}_1(\text{ep}_i(H(n))), \text{ep}_1(\text{ep}_i(H(n)))+\text{ep}_0(\text{ep}_i(H(n))) \rangle\\ &=A(\text{ep}_i(H(n))) \end{align} $$ 其中 A(x)=\langle\text{ep}_1(x),\text{ep}_1(x)+\text{ep}_0(x)\rangle 为初等函数。
所以
根据引理1.17-1.19可知,H(n)\in\mathcal{EF}.
因为 f(n)=\text{ep}_0(F(n))=\text{ep}_0(\text{ep}_n(H(n))),所以 f(n)\in\mathcal{EF}.
证法二:
提示
\sqrt{x}\not\in\mathcal{EF},命题1.24仅证明了 \lfloor \sqrt[y]{x}\rfloor\in\mathcal{EF}.
其中倒数第二个等号成立是因为求和项不为零时 i为奇数,故\frac{i-1}{2}=\lfloor\frac{i-1}{2}\rfloor。最后一个等号成立是因为结果一定是整数,故分式可以整除。
14¶
习题1.14
设数论谓词 Q(x,y,z,v) 定义为 $$ Q(x,y,z,v)\equiv p(\langle x,y,z \rangle) | v, $$ 其中 p(n)表示第 n 个素数, \langle x, y, z \rangle是 x,y,z的 G\ddot{o}del编码。证明:Q(x,y,z,v)是初等的。
证:
Q(x,y,z,v)的特征函数为 N^2(\text{rs}(v,p(\langle x,y,z \rangle))),故是初等的。
15¶
习题1.15
设 f:\mathbb{N}\rightarrow\mathbb{N} 满足 $$ \begin{align} f(0) &= 1, \\ f(1) &= 4, \\ f(2) &= 6, \\ f(x+3) &= f(x)+(f(x+1))^2+(f(x+2))^3, \end{align} $$ 证明:f\in\mathcal{PRF}
证:
令 F(x)=\langle f(x),f(x+1),f(x+2)\rangle,故 f(x)=\text{ep}_0(F(x))。
F(0)=\langle 1,4,6\rangle,且
其中 A(x)=\langle \text{ep}_1(x),\text{ep}_2(x),\text{ep}_0(x)+(\text{ep}_1(x))^2+(\text{ep}_2(x))^3\rangle\in\mathcal{PRF}.
故F(x)\in\mathcal{PRF},f(x)\in\mathcal{PRF}。
16¶
习题1.16
设 f:\mathbb{N}\rightarrow\mathbb{N} 满足 $$ \begin{align} f(0) &= 0, \\ f(1) &= 1, \\ f(2) &= 2^2, \\ f(3) &= 3^{3^3}, \\ \cdots & \cdots \\ f(n) &= \underbrace{n^{\cdot^{\cdot^{\cdot^n}}}}_{n个n}, \end{align} $$ 证明:f\in\mathcal{PRF}-\mathcal{EF}
证:
首先证明 f\in\mathcal{PRF}。
令 g(m,n)=\underbrace{n^{\cdot^{\cdot^{\cdot^n}}}}_{m个n},则
故 g(m,n)\in\mathcal{PRF},f(n)=g(n,n)\in\mathcal{PRF}
下面证明 f\not\in\mathcal{EF}.
反设 f\in\mathcal{EF},则存在 k,对于任意 x,有 f(x)<\underbrace{2^{2^{\cdot^{\cdot^{\cdot^{2^x}}}}}}_{k个2}.
令 x=k+2,从而 \underbrace{(k+2)^{\cdot^{\cdot^{\cdot^{(k+2)}}}}}_{k+2个k+2}<\underbrace{2^{2^{\cdot^{\cdot^{\cdot^{2^{k+2}}}}}}}_{k个2}. 矛盾。
17¶
习题1.17
设 g:\mathbb{N}\rightarrow\mathbb{N}\in\mathcal{PRF},f:\mathbb{N}^2\rightarrow\mathbb{N}, 满足 $$ \begin{align} f(x,0) &= g(x), \\ f(x,y+1) &= f(f(\cdots f(f(x,y),y-1),\cdots ),0), \end{align} $$ 证明:f\in\mathcal{PRF}
证:
首先证明 f(x,y) 呈形 g^{a(y)}(x).
当 y=0 时, f(x,y)=f(x,0)=g(x). 即 a(0)=1.
假设 f(x,y)=g^{a(y)}(x),
故
易见 a(y)\in\mathcal{PRF}, f(x,y)=g^{a(y)}(x).
令 h(x,y)=g^y(x),则 \begin{cases}h(x,0)&=x\,,\\ h(x,y+1) &=g(h(x,y))\,.\end{cases}
故 h\in\mathcal{PRF}, f(x,y)=h(x,a(y))\in\mathcal{PRF}.
18¶
习题1.18
设 k\in\mathbb{N}^+,函数 f:\mathbb{N}^k\rightarrow\mathbb{N} 和 g:\mathbb{N}^k\rightarrow\mathbb{N} 仅在有穷个点取不同值,证明:f为递归函数当且仅当 g为递归函数。
证:
由 f,g 仅在有穷个点不同,故存在 k\in\mathbb{N},当 x>k 时,f(x)=g(x).
从而 f(x)=\begin{cases}f(x), &x\leq k\,,\\ g(x), &x>k\,.\end{cases}
令f'(x)=\begin{cases}f(x), &x\leq k\,,\\ 0, &x>k\,.\end{cases}
易见 f'\in\mathcal{PRF}. 实际上,f'(x)=f(0)N(x\ddot-0)+f(1)N(x\ddot-1)+\cdots+f(k)N(x\ddot-k)\in\mathcal{EF}.
故f(x)=f'(x)N(x\dot-k)+g(x)N^2(x\dot-k).
故g\in\mathcal{PRF}\Rightarrow f\in\mathcal{PRF}.
同理f\in\mathcal{PRF}\Rightarrow g\in\mathcal{PRF}.
19¶
习题1.19
证明: $$ f(n)=\left\lfloor \left(\frac{\sqrt{5}+1}{2}\right)n\right\rfloor $$ 为初等函数。
证:
故 f(n) \in\mathcal{EF}
习题1.19(修改)
证明: $$ f(n)=\left\lfloor \left(\frac{\sqrt{5}+1}{2}\right)^n\right\rfloor $$ 为初等函数。
证:
使用牛顿二项式展开 (\sqrt{5}+1)^n.
令 g(n) = \sum_{k=0}^n C_n^k 5^{\lfloor \frac{k}{2}\rfloor} N^2(rs(k, 2)), h(n) = \sum_{k=0}^n C_n^k 5^{\lfloor \frac{k}{2}\rfloor} N(rs(k, 2)).
易见 g(n), h(n) \in\mathcal{EF}.
故
故 f(n) \in\mathcal{EF}
20¶
习题1.20
证明:\text{Ack}(4,n)=\mathcal{PRF}-\mathcal{EF},其中 \text{Ack}(x,y) 是Ackermann函数。
证:
令 f(n)=\text{Ack}(4,n),故
令 g(n)=f(n)+3,则 g(0)=16=2^{2^{2}},g(n+1)=2^{g(n)},g(n)=\underbrace{2^{\cdot^{\cdot^{\cdot^2}}}}_{n+3个2}.
从而 \text{Ack}(4,n)=\underbrace{2^{\cdot^{\cdot^{\cdot^2}}}}_{n+3个2}\dot-3\in\mathcal{PRF}.
由于 \lim_{n\rightarrow \infty}\frac{\underbrace{2^{\cdot^{\cdot^{\cdot^2}}}}_{k个2}}{g(n)}=0,故g\not\in\mathcal{EF},f\not\in\mathcal{EF}.