MathLabs

第6题

函数 f(x,y)f(x,y) 对所有非负整数 x,yx,y 满足 f(0,y)=y+1,f(0,y) = y+1, f(x+1,0)=f(x,1),f(x+1,0) = f(x,1), f(x+1,y+1)=f(x,f(x+1,y))f(x+1,y+1) = f\big(x, f(x+1,y)\big) 求 f(4,1981)f(4,1981)。
第 4/7 步:求解 x=3x=3 层
通俗地说

递归的每一层都比上一层高一个运算级别:加法变成倍增,倍增又会变成幂塔。

f(3,0)+3=8=23,f(3,y+1)+3=2(f(3,y)+3)  ⟹  f(3,y)+3=2 y+3f(3,0)+3=8=2^{3},\quad f(3,y+1)+3=2\big(f(3,y)+3\big) \implies f(3,y)+3=2^{\,y+3}
详细分析

由规则 (2) 及第 3 步,f(3,0)=f(2,1)=2(1)+3=5f(3,0)=f(2,1)=2(1)+3=5,故 f(3,0)+3=8=23f(3,0)+3=8=2^3。由规则 (3) 及第 3 步,f(3,y+1)=f(2,f(3,y))=2f(3,y)+3f(3,y+1)=f(2,f(3,y))=2f(3,y)+3,故 f(3,y+1)+3=2(f(3,y)+3)f(3,y+1)+3=2(f(3,y)+3);这个从 8=238=2^3 开始的倍增递推给出 f(3,y)+3=2y+3f(3,y)+3=2^{y+3}。