写在前面
最近在看一本很开阔思路的书, 名为《组合证明的艺术(proof that really count: The art of combinatorial proof)》,中译版是机械工业出版社出版的, 里面有一些错漏的地方(如符号等), 建议大家中英文对照着看(如果有兴趣的话).
虽然是写给高中生的书, 但是对我来说还是很受启发, 不得不说组合证明实在是巧妙, 称为一门艺术也不足为奇. 下面主要对这样一个定理作组合意义上的证明 (直接利用通项公式也可证明,但是步骤要繁琐很多).
预备定义
- Fibonacci数:,
- 为方便后述定理, 这里用新记号表示Fibonacci数, 有.
- -平铺: 对于一块长为的地板, 使用长为1或2的砖块铺满整块地板, 所有满足条件的方法数为(直接由尾部砖块为1或2即可得到递推关系).
- 可分隔(breakable): 一个-平铺在单位块可分隔, 即该平铺在第个单位块处为方砖块(长度为1), 若该处是长度为2的砖块, 则不可分隔.
定理
对, 如果, 那么, 事实上, 若, 则.
组合证明
考虑这样一个问题
当时, 存在多少种平铺?
第一种解答: 显然是;
第二种解答:
考虑一个最小的, 使得平铺在第单位块处可分隔, 这样的显然存在且至多为, 因为平铺在单位块处是可分隔的. 考虑下面三种不同位置上的平铺(如下图):
- 给定一个, 则有块长度为2的砖块位于单位块处(因为为最小的可分隔位置), 这些长度为2的砖块的平铺有种方法;
- 对于直到单位块, 有种平铺方法(因为其长度为);
- 对于剩下的个单位块, 有种平铺方法.
综上, 我们得到了: