组合恒等式证明的几种方法
Several Methods for Proving Combinatorial Identities
DOI: 10.12677/PM.2021.116128, PDF, HTML, XML, 下载: 526  浏览: 1,462  国家自然科学基金支持
作者: 郑欢欢, 靳海涛:天津职业技术师范大学理学院,天津
关键词: 二项式系数组合恒等式生成函数机器证明Binomial Coefficients Combinatorial Identities Generating Functions Mechanical Proving
摘要: 通过含有二项式系数的一些恒等式,介绍了组合证明法、积分法、差分法、生成函数法和机器证明法五种常用的恒等式的证明方法。
Abstract: By proving some identities involving binomial coefficients, this paper introduces five well-known methods for proving combinatorial identities, including the methods of combination, integration, finite difference, generating functions and mechanical proving.
文章引用:郑欢欢, 靳海涛. 组合恒等式证明的几种方法[J]. 理论数学, 2021, 11(6): 1137-1145. https://doi.org/10.12677/PM.2021.116128

1. 引言

组合序列的相关和式一直是组合数学研究的热点,特别是含有二项式系数、Stirling数、Catalan数、harmonic数、Euler数、Fibonacci数等的相关恒等式。目前,关于超几何恒等式的研究已经较为成熟,对非超几何恒等式,一个证明思路是将其转化成超几何恒等式进行证明 [1]。本文通过含有二项式系数 [1] [2] 的一些恒等式 [3] 来介绍组合恒等式的常用证明方法:组合证明法 [1] [2]、积分法 [1] [4]、差分法 [1]、生成函数法 [5] 和机器证明法 [6]。

2. 基础知识

定义1 二项式系数 [1]:对非负整数 k ( n k ) = n ! k ! ( n k ) ! = n k _ k ! ,其中 n k _ = n ( n 1 ) ( n k + 1 ) n k

次降阶乘,规定 n 0 _ = 1

定义2 对给定数列 { a n } ,称对应的幂级数 f ( x ) = a 0 + a 1 x + a 2 x 2 + + a n x n + 为其生成函数 [5]。

定义3 Fibonacci数列 [7] [8]: F n + 2 = F n + F n + 1 ,初始条件为 F 0 = 0 , F 1 = 1

定义4 Lucas数列 [9]: L n + 2 = L n + L n + 1 ,初始条件为 L 0 = 2 , L 1 = 1

众所周知,Fibonacci数列可表示成二项式系数的相关和式 [2]。

定理1 对非负整数 n ,有 F n + 1 = i = 0 n 2 ( n i i )

下面我们给出Fibonacci数列和Lucas数列的生成函数,可参考文献 [5]。

定理2 记 F ( x ) L ( x ) 分别为Fibonacci数列和Lucas数列的生成函数,则

F ( x ) = n = 0 + F n x n = x 1 x x 2 , L ( x ) = n = 0 + L n x n = 2 x 1 x x 2 .

3. 组合恒等式证明的常用五种方法

3.1. 组合证明法

组合证明法的思路是对恒等式两端赋予一定的组合意义将其化为计数问题,再通过构造两个计数对象之间的双射,根据双射的一一对应来得到恒等式。下面以两个经典例子进行说明。

例1证明Chu-Vandermonde恒等式 [1] i + j = k ( m i ) ( n j ) = ( m + n k ) (其中 m , k 为非负整数)。

证明由两个集合元素的个数分别为 m , n ,分别在其中找一个大小为 i , j 的子集,其中 i + j = k ,对

所有满足条件的 i , j 求和,即: i + j = k ( m i ) ( n j ) ;另一方面,对集合元素个数为 m + n 的集合,其子集大小为 k 的集合的方法数为: ( m + n k ) ;综上:即有: i + j = k ( m i ) ( n j ) = ( m + n k )

例2证明 k = 0 n ( k m ) = ( n + 1 m + 1 ) [1]。

证明对于等式右边:假设我们抛了 n + 1 次硬币,其中有 m + 1 次正面朝上,方法数为 ( n + 1 m + 1 ) 。对

于等式左边选择 m 个位置,可供选择的位置总数就是求和的变量,如果最后一个正面朝上出现在 k + 1 位置上,那么可能出现的方法数就是在最后一个正面朝上出现之前从 k 个可能的位置中选 m 个位置的方法

数,即 ( k m ) 。综上:即有 k = 0 n ( k m ) = ( n + 1 m + 1 )

3.2. 积分法

积分法的主要思想是将求和项或其一部分利用积分表示出来,通过交换积分与求和次序直接得到等式右端或验证左右两端积分后的结果相同来证明恒等式。下面给出两个例子:

例3 证明 k = 0 n ( n k ) ( x 2 k + 1 x 1 k + 1 ) y n k ( k + 1 ) 2 = 1 n + 1 k = 0 n ( ( x 2 + y ) n + 1 ( x 1 + y ) n + 1 ) y n k k + 1 [1]。

证明令 k = 0 n ( n k ) ( x 2 k + 1 x 1 k + 1 ) y n k k + 1 = ( x 2 + y ) n + 1 ( x 1 + y ) n + 1 n + 1 中的 x 2 = x , x 1 = 0 得到:

k = 0 n ( n k ) x k + 1 y n k k + 1 = ( x + y ) n + 1 y n + 1 n + 1 .

k = 0 n ( n k ) x k + 1 y n k k + 1 = ( x + y ) n + 1 y n + 1 n + 1 两边同时除以 x 得到: k = 0 n ( n k ) x k y n k k + 1 = 1 n + 1 ( x + y ) n + 1 y n + 1 x .

k = 0 n ( n k ) x k y n k k + 1 = 1 n + 1 ( x + y ) n + 1 y n + 1 x 两边同时对 x x 1 x 2 求积分

等式左边得: x 1 x 2 k = 0 n ( n k ) x k y n k k + 1 d x = k = 0 n ( n k ) x k + 1 y n k ( k + 1 ) 2 | x 2 x 1 = k = 0 n ( n k ) ( x 2 k + 1 x 1 k + 1 ) y n k ( k + 1 ) 2 .

等式右边得:

x 1 x 2 1 n + 1 ( x + y ) n + 1 y n + 1 x d x = 1 n + 1 x 1 x 2 ( x + y ) n + 1 y n + 1 x d x = 1 n + 1 x 1 x 2 k = 0 n ( x + y ) k y n k d x = 1 n + 1 k = 0 n ( x + y ) k + 1 y n k k + 1 | x 2 x 1 = 1 n + 1 k = 0 n ( ( x 2 + y ) k +1 ( x 1 + y ) k +1 ) y n k k + 1 .

其中: ( x + y ) n + 1 y n + 1 x = ( x + y y ) k = 0 n ( x + y ) k y n k x = k = 0 n ( x + y ) k y n k .

即: k = 0 n ( n k ) ( x 2 k + 1 x 1 k + 1 ) y n k ( k + 1 ) 2 = 1 n + 1 k = 0 n ( ( x 2 + y ) n + 1 ( x 1 + y ) n + 1 ) y n k k + 1 .

例4证明 n = 0 2 n ( 2 n + 1 ) ( 2 n n ) = π 2 [1]。

证明由Gamma函数的性质 [10] [11] B ( a , b ) = Γ ( a ) Γ ( b ) Γ ( a + b ) B ( a , b ) = 0 1 x a 1 ( 1 x ) b 1 d x

可得: ( 2 n n ) 1 = ( 2 n + 1 ) 0 1 x n ( 1 x ) n d x 以及 ( 2 n n ) = 1 ( 2 n + 1 ) B ( n , n )

由上式可得:

n = 0 2 n ( 2 n + 1 ) ( 2 n n ) = n = 0 2 n ( 2 n + 1 ) ( 2 n + 1 ) 0 1 x n ( 1 x ) n d x = 0 1 n = 0 2 n x n ( 1 x ) n d x = 0 1 1 1 2 x ( 1 x ) d x = 0 1 1 1 2 x + 2 x 2 d x = π 2 .

3.3. 差分法

差分法的基本思想是通过验证左右两端相邻两项的差相等来证明恒等式,即要证明 A ( n ) = B ( n ) ,只需 A ( n + 1 ) A ( n ) = B ( n + 1 ) B ( n ) 和相同的初值即可。

例5证明 k = 1 n ( n k ) ( 1 ) k k = H n ( H n = k = 1 n 1 k ) [14] [15]。

证明设左端和式为 f ( n ) 可得:

f ( n + 1 ) f ( n ) = k = 1 n + 1 ( n + 1 k ) ( 1 ) k k k = 1 n ( n k ) ( 1 ) k k = k = 1 n + 1 ( n k 1 ) ( 1 ) k k = k = 0 n + 1 ( n k ) ( 1 ) k + 1 k + 1 = ( 1 ) k + 1 k = 0 n + 1 ( n + 1 k + 1 ) 1 n + 1 = ( 1 ) k n + 1 k = 1 n + 1 ( n + 1 k ) = ( 1 ) k n + 1 ( k = 0 n + 1 ( n + 1 k ) ( n + 1 0 ) ) = 1 n + 1 ( k = 0 n + 1 ( n + 1 k ) ( 1 ) k ( n + 1 0 ) ) = 0 1 n + 1 = 1 n + 1 .

再利用 f ( 0 ) = 0 可得

k = 1 n ( n k ) ( 1 ) k k = f ( n ) = k = 1 n ( f ( k ) f ( k 1 ) ) = k = 1 n ( 1 k ) = H n .

例6证明 k = 0 m ( n k ) ( 1 ) k k + 1 = 1 n + 1 ( n m + 1 ) ( 1 ) m + 1 n + 1 [1]。

证明令 S ( m ) = 1 n + 1 ( n m + 1 ) ( 1 ) m + 1 n + 1 ,只需证明 S ( m ) S ( m 1 ) = ( n m ) ( 1 ) m m + 1 即可。

S ( m ) S ( m 1 ) = ( 1 n + 1 ( n m + 1 ) ( 1 ) m + 1 n + 1 ) ( 1 n + 1 ( n m ) ( 1 ) m 1 + 1 n + 1 ) = 1 n + 1 ( n m + 1 ) ( 1 ) m + 1 n + 1 ( n m ) ( 1 ) m = 1 n + 1 ( 1 ) m ( ( n m + 1 ) + ( n m ) ) = 1 n + 1 ( 1 ) m ( n + 1 m + 1 ) = 1 n + 1 ( n + 1 ) ! ( m + 1 ) ! ( n m ) ! ( 1 ) m = n ! ( m + 1 ) ! ( n m ) ! ( 1 ) m = 1 m + 1 n ! m ! ( n m ) ! ( 1 ) m = ( n m ) ( 1 ) m m + 1 .

再利用 S ( 0 ) = 1 即可得证。

3.4. 生成函数法

生成函数法的基本思想是将含有组合序列的求和项转化为其对应的生成函数,通过生成函数的操作

得到相应的函数关系式,进一步取系数返回到原和式即可。给定一个含有组合序列的和式 A ( n ) = k = 0 n a k

要证明 A ( n ) = B ( n ) 或求出 A ( n ) 的表达式(也称为闭形式),具体步骤如下 [5]:

1) 将新的求和项 A ( n ) x n 对变量 n 求和,记 S ( x ) = n = 0 A ( n ) x n

2) 通过交换求和次序并利用已知生成函数的解析式得到 S ( x ) 的解析表达式;

3) 要证明 A ( n ) = B ( n ) ,只要证明 B ( n ) 有相同的生成函数即可。

例7 证明 3 F n + 3 + i = 1 n L i = i = 0 n 2 ( n i i ) [12]。

证明 由Lucas数列的性质 L 1 + L 2 + + L n = L n + 2 3 和定理1可知该等式等价于 L n + 2 F n + 3 = F n + 1

利用定理2,不难得到左端的生成函数为:

n = 0 + ( L n + 2 F n +3 ) x n = n = 0 + L n + 2 x n n = 0 + F n +3 x n = x + 3 1 x x 2 x + 2 1 x x 2 = 1 1 x x 2 .

同理,右端生成函数为 n = 0 + F n + 1 x n = 1 1 x x 2

可见两端生成函数相等,于是等式得证。

例8证明 k = 0 n ( n k ) F k = F 2 n [1]。

证明利用定理2以及 n = 0 ( n k ) x n = x k ( 1 x ) k + 1 可得:

对等式左端取其生成函数可得:

n = 0 k = 0 n ( n k ) F k x n = k = 0 F k n = k ( n k ) x n = k = 0 F k x k ( 1 x ) k + 1 = 1 1 x k = 0 F k ( x 1 x ) k = 1 1 x x 1 x 1 x 1 x ( x 1 x ) 2 = x 1 3 x + x 2

对等式右端利用生成函数和换元的思想,具体操作如下:

又由于 F ( x ) = n = 0 + F n x n = x 1 x x 2 ,可得: F ( x ) = x 1 + x x 2

G ( x ) = F ( x ) + F ( x ) 2 = x 2 ( 1 x x 2 ) ( 1 + x x 2 ) ,则令 x = x

可得: G ( x ) = n = 0 F 2 n x n = x 1 3 x + x 2

可见两端生成函数相等,于是等式得证。

3.5. 机器证明方法

机器证明法是近几十年才发展起来的证明恒等式的有力方法。目前,超几何恒等式证明的相关研究已经成熟,下面我们介绍最经典的两个超几何算法及WZ方法。

1) Gosper算法:

Gosper算法完全解决了超几何恒等式不定和问题。

对给定的超几何项 t n ,Gosper算法寻找满足 z n + 1 z n = t n 的超几何项 z n 。一旦得到不定和 z n ,即可求

出和式 s n = k = 0 n 1 t k 的闭形式 s n = z n + 1 z 0 。注意 s n 有可能不是超几何项。

Gosper算法已集成在Maple系统中,通过调用with (SumTools [Hypergeometric])工具包以及Gosper(t(n), n)命令即可求出给定求和项的不定和。这里仅举一例。

例9证明 k = 0 m ( n k ) k ( 1 ) k = ( 1 ) m n ( n 2 m 1 ) [1]。

证明令 t k = ( n k ) k ( 1 ) k ,由Gosper算法可得:则 z k = n ( n 2 k 2 ) ( 1 ) k 1

即: k = 0 m t k = z m + 1 z 0 = ( 1 ) m n ( n 2 m 1 ) 0 = ( 1 ) m n ( n 2 m 1 ) 。得证。

2) Zeilberger算法

Zeilberger算法用来处理定和问题。给定一个双超几何项 F ( n , k ) ,(即关于n和k都是超几何的)。考

虑和式 S ( n ) = k F ( n , k ) 。Zeilberger算法寻找与求和变量k无关的一些多项式 a 0 ( n ) , a 1 ( n ) , , a J ( n ) 及一

个有理函数 R ( n , k ) 使得

j = 0 J a j ( n ) F ( n + j , k ) = G ( n , k + 1 ) G ( n , k )

称该式为斜递推关系,其中 G ( n , k ) = R ( n , k ) F ( n , k ) . 对该式两端对所有整数 k 求和得到和式 S ( n ) 满足的一个递推关系式

j = 0 J a j ( n ) S ( n + j ) = 0.

若要证明恒等式 S ( n ) = T ( n ) ,只需验证 T ( n ) 也满足该递推关系,且与 S ( n ) 具有相同的初值即可。

注意,若能直接求出该递推关系的闭公式,也可直接证明恒等式。

Zeilberger算法也已集成在Maple系统中,通过调用with (SumTools [Hypergeometric])工具包以及Zeilberger (f, n, k, N)命令即可得到斜递推关系。下面我们给出几个例子。

例10证明 k = 0 n ( n k ) ( k m ) = 2 n m ( n m ) [1]。

证明令 S ( n ) = k = 0 n ( n k ) ( k m ) ,用 F ( n , k ) 表示求和项,则由Zeilberger算法可以找到斜递推关系:

( ( n m + 1 ) N 2 n 2 ) F ( n , k ) = G ( n , k + 1 ) G ( n , k ) 上式等式两边对 k 求和,得到:

( m + n + 1 ) S ( n + 1 ) ( 2 n + 2 ) S ( n ) = 0 。于是有 S ( n + 1 ) S ( n ) = 2 ( n + 1 ) m + n + 1 ,其中 S ( m ) = 1

由于当 k < m 之前的项都为0,当 k m 时每一项才不为0,于是可得

S ( n + 1 ) S ( n ) S ( n ) S ( n 1 ) S ( m + 1 ) S ( m ) = 2 n m + 1 ( n + 1 ) ! m ! ( m + n + 1 ) ( m + n ) ( m + m + 1 ) = 2 n m + 1 ( n + 1 ) ! m ! ( m + n + 1 ) ! = 2 n m + 1 ( n + 1 ) ! ( m + n + 1 ) ! m ! = 2 n m + 1 ( n + 1 m )

可得 S ( n + 1 ) = 2 n m + 1 ( n + 1 m ) ;即 S ( n ) = 2 n m ( n m ) 。得证。

例11证明Gould’s 恒等式 k = 0 r r r q k ( r q k k ) ( p + q k n k ) = ( p + r n ) [13]。

证明令 S ( n ) = k = 0 r r r q k ( r q k k ) ( p + q k n k ) ,用 F ( n , k ) 表示求和项,则由Zeilberger算法可以找到

斜递推关系: ( ( n + 1 ) N p r + n ) F ( n , k ) = G ( n , k + 1 ) G ( n , k )

上式等式两边对 k 求和,得到: ( n + 1 ) S ( n + 1 ) ( p + r n ) S ( n ) = 0

即: S ( n + 1 ) S ( n ) = p + r n n + 1 ;其中: S ( 0 ) = 1

则: S ( n + 1 ) S ( n ) S ( n ) S ( n 1 ) S ( m + 1 ) S ( m ) = ( p + r ) n _ ( n + 1 ) ! = ( p + r n + 1 ) = S ( n + 1 ) S ( 0 )

可得: S ( n + 1 ) = ( p + r n + 1 ) ;即: S ( n ) = ( p + r n ) 。得证。

3) WZ方法

WZ方法是基于Zeilberger算法一个证明超几何恒等式的有效工具。对超几何恒等式

k t ( n , k ) = r h s ( n ) ,由于 r h s ( n ) 也是超几何的,可将其等价于 k F ( n , k ) = 1 ,其中 F ( n , k ) = t ( n , k ) r h s ( n ) 。在

绝大多数情况下,对新的求和项,Zeilberger算法可得到有理满足 R ( n , k ) 使得:

F ( n + 1 , k ) F ( n , k ) = G ( n , k + 1 ) G ( n , k ) ,其中 G ( n , k ) = R ( n , k ) F ( n , k ) 。对所有整数 k 求和,可得

k F ( n + 1 , k ) = k F ( n , k ) ,即和式为一常数。再通过验证 k F ( 0 , k ) = 1 即可证明该恒等式。

例12证明 k ( 1 ) k ( n k ) x k + x = 1 ( x + n n ) [6]。

证明利用WZ方法,令 t ( n , k ) = ( 1 ) k ( n k ) x k + x r h s = 1 ( x + n n )

恒等式两边同除以等式右边得到新的恒等式: k F ( n , k ) = 1

其中 F ( n , k ) = t ( n , k ) r h s ( n ) = ( 1 ) k ( x + n ) ! k ! ( n k ) ! ( x 1 ) ! ( k + x )

由Zeilberger 算法可得到有理函数 R ( n , k ) = k ( k + 1 ) ( n + 1 ) ( k n 1 )

G ( n , k ) = R ( n , k ) F ( n , k ) ,则得到 F ( n + 1 , k ) F ( n , k ) = G ( n , k + 1 ) G ( n , k )

对所有整数 k 求和,则可得到 k = 0 n F ( n + 1 , k ) = k = 0 n F ( n , k ) ;再验证 k = 0 n F ( 0 , k ) = 1 即可得证。

例13证明 k ( x + 1 2 k + 1 ) ( x 2 k n k ) 2 2 k + 1 = ( 2 x + 2 2 n + 1 ) [6]。

证明利用WZ方法,令 t ( n , k ) = ( x + 1 2 k + 1 ) ( x 2 k n k ) 2 2 k + 1 r h s ( n ) = ( 2 x + 2 2 n + 1 )

恒等式两边同时除以等式右边,得到新的恒等式: k F ( n , k ) = 1

其中 F ( n , k ) = t ( n , k ) r h s ( n ) = 2 2 k + 1 ( x + 1 ) ( x 2 k ) ! ( 2 n + 1 ) ! ( 2 x + 1 2 n ) ! ( 2 k + 1 ) ! ( x 2 k ) ! ( n k ) ! ( x k n ) ! ( 2 x + 2 ) !

由Zeilberger算法可得有理函数 R ( n , k ) = k ( 2 k + 1 ) ( x 2 n 1 ) ( k n 1 ) ( 2 n 2 x 1 ) ( n x )

G ( n , k ) = R ( n , k ) F ( n , k ) ,则得到 F ( n + 1 , k ) F ( n , k ) = G ( n , k + 1 ) G ( n , k )

对所有整数 k 求和,则可得到 k = 0 n F ( n + 1 , k ) = k = 0 n F ( n , k ) ;再验证 k = 0 n F ( 0 , k ) = 1 即可得证。

4. 结语

本文通过一些含有二项式系数的相关恒等式介绍了组合恒等式证明的常用五种方法:组合证明法、积分法、差分法、生成函数法和机器证明法。当然,这些方法的应用不仅限于二项式系数的相关恒等式。此外,近些年来,相关方法的推广和应用也得到了广泛关注 [13] [14] [15]。在后续的研究中,将继续探讨这些方法在处理含有其他组合序列和特殊函数的恒等式中的应用。

基金项目

国家自然科学基金项目(11501416),国家自然科学基金项目(12071235)。

参考文献

参考文献

[1] Spivey, M.Z. (2019) The Art of Proving Binomial Identities. CRC Press, Boca Raton.
https://doi.org/10.1201/9781351215824
[2] 许胤龙, 孙淑玲. 组合数学引论[M]. 合肥: 中国科学技术大学出版社, 2010.
[3] Riordan, J. (1968) Combinatorial Identities. John Wiley, New York.
[4] 吴琼扬. 浅谈微积分方法在组合恒等式证明中的应用[J]. 新课程(教育学术), 2011(4): 49-50.
[5] Wilf, H.S. (2006) Generating Functionology. A.K. Peters, Ltd., Natick.
https://doi.org/10.1201/b10576
[6] Petkovsěk, M., Wilf, H.S. and Zeilberger, D. (1996) A = B. A.K. Peters, Wellesley.
https://doi.org/10.1201/9781439864500
[7] Azarian, M.K. (2012) Fibonacci Identities as Binomial Sums. Mathematical Sciences, 7, 1871-1876.
[8] Azarian, M.K. (2012) Fibonacci Identities as Binomial Sums II. Mathe-matical Sciences, 7, 2053-2059.
[9] Azarian, M.K. (2012) Identities Involving Lucas or Fibonacci and Lucas Numbers as Binomial Sums. Mathematical Sciences, 7, 2221-2227.
[10] Lu, D.W., Song, L.X. and Ma, C.X. (2015) Some New Asymptotic Approximations of the Gamma Function Based on Nemes’ Formula, Ramanujan’s Formula and Burnside’s Formula. Applied Mathematics and Computation, 253, 1-7.
https://doi.org/10.1016/j.amc.2014.12.077
[11] Paule, P. and Schneider, C. (2003) Computer Proofs of a New Family of Harmonic Number Identities. Advances in Applied Mathematics, 31, 359-378.
https://doi.org/10.1016/S0196-8858(03)00016-2
[12] 杨存典, 李超, 刘端森. 广义高阶Fibonacci数和Lucas数的计算公式[J]. 纺织高校基础科学学报, 2007(1): 100-102.
[13] Fürst, C. (2011) Combinatorial Sums: Egorychev’s Method of Coefficients and Riordan Arrays. Master Thesis, Research Institute for Symbolic Computation, Johannes Kepler University, Linz.
[14] 侯庆虎. 组合数学中的代数方法[D]: [博士学位论文]. 天津: 南开大学, 2001.
[15] 孙慧. 特殊函数恒等式[D]: [博士学位论文]. 天津: 南开大学, 2009.