Zeckendorf's theorem
定理
任何正整数都可以唯一表示成不连续的Fibonacci数列和
相关
Finonacci数列, 以1,2开始, 每一项=前两项之和
proof
可表示性
对于任意自然数n
有唯一i使得 $fib(i) <= n < fib(i+1)$
说明 $fib(i) > n/2 $ 否则 $fib(i+1) = fib(i)+fib(i-1) < fib(i)+fib(i) = 2fib(i) <= n$ 矛盾
$n-fib(i) < n/2$
$n-fib(i) < fib(i-1)$, 否则 $n >= fib(i)+fib(i-1) = fib(i+1)$,保证了非连续
说明$f(n)$ 的表示通过拆除fib(i)方案数与 $f(n-fib(i))$ 一致,
所有都是唯一可递归下降,f(0) 唯一表示为空
所以所有都可以表示
下面证明唯一表示
上面我们每次取得都是不大于n的最大的fib(i), 这种情况下非连续且可表示
下面证明如果不这样操作,则不可表示,就能证明其唯一性
$fib(i) <= n < fib(i+1)$
证明$fib(i-1)+fib(i-3)+fib(i-5)+… < fib(i) < n$
$1 + fib(i-1)+fib(i-3)+fib(i-5)+… = fib(i) $
$fib(i-1)+fib(i-3)+fib(i-5)+… = fib(i) - 1 < fib(i) = n$
得到 如果不取$fib(i)$,那么最大的非连续和无法构成n,则唯一性得证