组合数学之反演理论
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
17
II. Möbius反演公式
定理B (Möbius反演公式) 设f(n)和g(n)是
定义在正整数集合上的两个函数.
f (n) g(d)
d|n
成立当且仅当下式成立
( M1 )
g(n) (d) f n / d (M2 )
其中(m)为dM|n öbius函数(定义见后面),
1, n 0, n
d1 , d1 .
(6)
21
Möbius反演公式证明:
设(M1)成立, d|n, 则有
f (n / d ) g(d1). d1|(n / d )
因d1|(n/d), 所以存在m, 使得dd1m=n
从而d|(n/d1).
将上式代入(M2)的右端, 有
第一次: 建立递归关系, 利用指数型母函 数方法求解;
第二次: 利用容斥原理, 得到通项公式. 下面先简单回顾一下, 再引入反演公式.
10
第一次:建立了递归关系
Dn (n 1)( Dn1 Dn2 ), D1 0, D2 1.
并由递归关系求得其指数型母函数:
Ge ( x)
20
(d) (d)
d |n
d |n1
k
(1) ( pi )
k j1 IC (k , j )
iI
1 C(k, j)(1) j (1 1)k 0.
j1
设d1|n, 引理C中(5)等价于下列等式:
d|(n/ d1
)
(d
)
对于未知数列, 我们前面所学习的递 归关系法, 也是这个思想, 它给出序列 所满足的线性常系数递归关系, 然后 求解出数列本身.
3
当然并不是每个序列都有这样的递归 关系, 在有递归关系的情况下, 也可能 这个关系不是齐次关系, 或者不是常 系数, 求解起来就比较难.
反演方法是另外一种求解序列的方法, 不同的是这种方法是把一个序列用另 外一个序列表示出来.
6
第一反演公式
定理:设n是一个自然数,多项式序列{pn}, {qn}(其中pn, qn均为n次多项式)有下列关系
n
n
pn ( x) nkqk ( x), qn ( x) nk pk ( x)
k 0
k 0
且αii≠0,βii ≠0则
n
n
vn nkuk un nkvk
(d) f n / d (d) g(d1)
dn
dn
d1|(n/ d )
22
(d)g(d1) (d)g(d1)
d n d1|( n / d )
d1 n d|( n / d1 )
(d )g(d1 ) g(n)
d1 n d|( n / d1 )
《组合数学》
第七讲
反演理论
1
第七讲*: 内容提要
I. 反演方法引言 II. 二项式反演公式 III. Möbius 反演公式 IV. 反演原理介绍
2
I. 反演方法引言
在代数及分析问题中, 为了定出某个 未知元, 我们常从问题的要求出发,列 出未知元所满足的一类方程, 然后从 中解出未知元本身.
d n d1|( n / d )
n / dd1 f (d1 )
d1 n d|(n / d1 )
f d1 (n / d1 ) / d f (n).
d1 n
d|(n / d1 )
24
Möbius反演公式的上述证明只要熟悉 连和号的性质和Möbius函数的特殊 性质,证明起来并不困难.
导致这种现象的原因在于这一字有 “最小周期”2:ai=ai+2.
周期的严格定义如下: 如果由k个元素 线排列L在圆周上重复若干次而得到园 排列W,则称k是园排列W的周期,其 中最小者,称为最小周期。
29
定理:设p是n园排列的最小周期,则p|n。
证明:否则,存在非负整数m,使得
n pm l, 0 l p
mn个可重复的线排列a1a2an, 它与圆
排列唯一区别在于首尾不相接. n个线状排列
a1a2an, a2an, , ana1an-1
一旦首尾相接均对应同一个圆排列
a1a2an. 由此似乎有Cm(n)=mn/n?
但例子m=2,n=4指出C2(4)=64=24/4.
28
原因何在? 原来一个圆排列所产生的n 个线排列并不总是互异的. 例如圆排列 abab只能产生出两个不同线排列abab 与baba.
把n园排列从任一处断开,并依顺时针方向 依次排列,而且无限重复下去,得到序列
x1, x2, , xn ; xn1, , x2n; 有xn+i=xi 于是xpm+l+i=xi, 因为p是周期,所以有xl+i=xi 说明l也是周期,与p是最小周期矛盾。
30
如果圆排列W的最小周期为p, 则p|n, 由W 只能产生出p个不同线排列而不是n个.
但是它们是如何被推导出来的, 或者说 是如何发现的? 这个问题更有启发性.
1968年Berlekam在他的一本Algebraic Coding Thoery书中给出了由(M1)逐次 解出g(n)的过程, 从求解中自然地引出 了Möbius函数, 这种启发性的推理值得 有兴趣的同学参考.
25
V. Möbius反演公式的应用
k 0
k 0
7
证明:令
p p0, p1, , pn T , q q0, q1, , qn T
u u0, u1, , un T , v v0, v1, , vn T
将已知条件以矩阵形式表示为
p0 00 0
p1
10
11
列12n的所有错位排列组成集合
A1 A2 An
根据容斥原理, 即可得到:
Dn A1 A2 An
n!1 1 1 1 (1)n 1 .
1! 2! 3!
n!
12
第三次: 容易看出恰好有r个ai=i的排列 a1a2…an之个数正好为C(n,r)Dn-r, 既然 全部排列个数为n!, 自然有
pn
n0
n1
0 q0
0
q1
nn
qn
即p Aq
8
q0 00
q1
10
M M
0L
11 L
MO
qn
n0
n1
L
0 p0
0
D0
D1 x
D2 2!
x2
D3 3!
x3
由此得到:
ex
x2
Ge ( x) 1 x (1 Leabharlann Baidu 2! ) /(1 x)
1
1
Dn
(1 1
2!
) n! n!
11
第二次: 令Aj表示排列12n中使j位置上 元素就是j的排列的集合, j=1,..,n. 则排
Möbius反演公式在组合计数、数论、 信息论、遗传密码等问题中有应用.
作为例子, 我们考察圆排列问题, 也就 是著名的环状字问题.
设有m个字母组成的字母表T, 从中取 出n个字母(允许重复)按顺时针方向可 以组成一个圆排列:
W=a1a2a3an.
26
由于一个圆排列可以选取其中一个字 母ai开始,
a1a2an, a2ana1, …,anan-1a1
都看作是同一圆排列. 例3: 当m=2, n=4,T={a,b}时, 共有6个不
同的圆排列:
aaaa, bbbb, abab, aabb, aaab, bbba.
这里圆排列aabb也可写成abba或bbaa.
27
问题: 求圆排列总数Cm(n)=? 首先我们注意到由m种字母共可作出
反之, 设(M2)成立, 对d|n, 有
gn / d (d1) f n / dd1
d1|(n / d )
n / dd1 f (d1).
d1|(n / d )
23
以此代入(M1)的右端, 得
gd gn / d
dn
dn
n / dd1 f (d1 )
A( x)
n
ak
k 0
xk k!
n k 0
k r0
C(k, r)br
xk k!
B( x)e x
B(x) A(x)ex.
15
第一反演公式
定理:设n是一个自然数,多项式序列{pn},
{qn} (其中pn, qn均为n次多项式)有下列关系
n
n
pn ( x) nkqk ( x), qn ( x) nk pk ( x)
p1
M M
nn
pn
即q Bp
于是 p=Aq=ABp
由于{pn|n=0,1,2,…}是线性空间R[x]的一组基
所以AB=I,于是A-1=B
所以 v Au u A1v Bv
9
II.二项式反演公式
例1(错排问题) 在n个数字1,2,…,n形成的 n!个排列a1a2…an中, 满足ai i 的排列 有多少个?我们已两次用到这个例子.
n
dn,r g(r) f (n)
(2)
r 1
(1)与(2)两式互为反演公式.
5
互逆公式:若由公式A可推出公式B,由公 式B也能推出公式A,则称公式A、B互逆。
反演公式:如果公式A、B互逆,则称命题“ 公式A成立当且仅当公式B成立”是反演公式
反演技巧:为了求an=|An|, 引进bn=|Bn|, 其中 bn是易求的或者已知的。先建立bn由{ak}的 表达公式A,然后应用反演公式,得到公式 B,此公式B是用{bk}表示an的公式,从而求 出an.
粗略来说, 就是根据两个序列{f(n)}和 {g(n)}所满足的特殊关系, 给出他们的 相互表示方法.
4
具体来说, 为得到某个组合计数问题的 解, 我们首先设法求出相应序列f(n)所 满足的(累计)关系式
n
cn,r f (r) g(n)
(1)
r 1
其中g(n)是已知序列, 然后从中解出
k0
k0
证明: n (1)nk C(n, k)ak
k0
n
k
(1)nk C(n, k) C(k, i)bi
k0
i0
nn
( (1)nk C(n, k)C(k, i))bi bn .
i0 ki
14
注: 上述公式的证明也可以利用指数型
母母函数方法. 设an与bn的指数型母函 数分别为A(x)及B(x), 则有
要证明本定理需要先证明一个关于 Möbius函数(m)的一个性质作为引理.
19
引理C 序列(d)满足下面公式:
d|n
(d
)
1, 若n 0, 若n
1; 1.
(5)
证 n=1, 命题成立. 如果n>1, 设
n=p11p22pkk , n1= p1p2pk 用Č(k,j)表示{1,2,,k}中的j元子集所组 成的集合, 则有
称f(n)与g(n)互为Möbius逆变换.
(M1), (M2)称为Möbius反演公式.
18
Möbius函数(m)的定义如下:
1, m 1;
(m) (1)k , m是k个不同素数乘积, k 1;
0,其他情形.
例如: 30=235, 121=112. (30)=(-1)3=-1,(121)=0.
k 0
k 0
则
n
n
vn nkuk un nkvk
k 0
k 0
16
用第一反演公式证明
由
n
xn (1 x 1)n C(n, k)( x 1)k
k 0
及
n
( x 1)n (1)nk C(n, k )xk
k 0
由第一反演公式即得。
n
C(n, r )Dnr n!
r0
根据后面将要学习的二项式反演公式,
可以直接得到:
Dn
n r0
(1)r C(n, r )(n
r )!
n
n!
r0
(1)r r!
13
定理A (二项式反演公式) 设有两个序列
{an},{bn}, 则
n
n
an C(n, k)bk bn (1)nk C(n, k)ak
注意到每个圆排列总有周期. 这样可以把 圆排列按照最小周期来分类.
如果用M(p)=Mm(p)来表示最小周期为p 的圆排列的个数, 由于每个最小周期为p 的圆排列恰好对应p个线排列,而且不同的 最小周期的圆排列产生不同的线排列.
II. Möbius反演公式
定理B (Möbius反演公式) 设f(n)和g(n)是
定义在正整数集合上的两个函数.
f (n) g(d)
d|n
成立当且仅当下式成立
( M1 )
g(n) (d) f n / d (M2 )
其中(m)为dM|n öbius函数(定义见后面),
1, n 0, n
d1 , d1 .
(6)
21
Möbius反演公式证明:
设(M1)成立, d|n, 则有
f (n / d ) g(d1). d1|(n / d )
因d1|(n/d), 所以存在m, 使得dd1m=n
从而d|(n/d1).
将上式代入(M2)的右端, 有
第一次: 建立递归关系, 利用指数型母函 数方法求解;
第二次: 利用容斥原理, 得到通项公式. 下面先简单回顾一下, 再引入反演公式.
10
第一次:建立了递归关系
Dn (n 1)( Dn1 Dn2 ), D1 0, D2 1.
并由递归关系求得其指数型母函数:
Ge ( x)
20
(d) (d)
d |n
d |n1
k
(1) ( pi )
k j1 IC (k , j )
iI
1 C(k, j)(1) j (1 1)k 0.
j1
设d1|n, 引理C中(5)等价于下列等式:
d|(n/ d1
)
(d
)
对于未知数列, 我们前面所学习的递 归关系法, 也是这个思想, 它给出序列 所满足的线性常系数递归关系, 然后 求解出数列本身.
3
当然并不是每个序列都有这样的递归 关系, 在有递归关系的情况下, 也可能 这个关系不是齐次关系, 或者不是常 系数, 求解起来就比较难.
反演方法是另外一种求解序列的方法, 不同的是这种方法是把一个序列用另 外一个序列表示出来.
6
第一反演公式
定理:设n是一个自然数,多项式序列{pn}, {qn}(其中pn, qn均为n次多项式)有下列关系
n
n
pn ( x) nkqk ( x), qn ( x) nk pk ( x)
k 0
k 0
且αii≠0,βii ≠0则
n
n
vn nkuk un nkvk
(d) f n / d (d) g(d1)
dn
dn
d1|(n/ d )
22
(d)g(d1) (d)g(d1)
d n d1|( n / d )
d1 n d|( n / d1 )
(d )g(d1 ) g(n)
d1 n d|( n / d1 )
《组合数学》
第七讲
反演理论
1
第七讲*: 内容提要
I. 反演方法引言 II. 二项式反演公式 III. Möbius 反演公式 IV. 反演原理介绍
2
I. 反演方法引言
在代数及分析问题中, 为了定出某个 未知元, 我们常从问题的要求出发,列 出未知元所满足的一类方程, 然后从 中解出未知元本身.
d n d1|( n / d )
n / dd1 f (d1 )
d1 n d|(n / d1 )
f d1 (n / d1 ) / d f (n).
d1 n
d|(n / d1 )
24
Möbius反演公式的上述证明只要熟悉 连和号的性质和Möbius函数的特殊 性质,证明起来并不困难.
导致这种现象的原因在于这一字有 “最小周期”2:ai=ai+2.
周期的严格定义如下: 如果由k个元素 线排列L在圆周上重复若干次而得到园 排列W,则称k是园排列W的周期,其 中最小者,称为最小周期。
29
定理:设p是n园排列的最小周期,则p|n。
证明:否则,存在非负整数m,使得
n pm l, 0 l p
mn个可重复的线排列a1a2an, 它与圆
排列唯一区别在于首尾不相接. n个线状排列
a1a2an, a2an, , ana1an-1
一旦首尾相接均对应同一个圆排列
a1a2an. 由此似乎有Cm(n)=mn/n?
但例子m=2,n=4指出C2(4)=64=24/4.
28
原因何在? 原来一个圆排列所产生的n 个线排列并不总是互异的. 例如圆排列 abab只能产生出两个不同线排列abab 与baba.
把n园排列从任一处断开,并依顺时针方向 依次排列,而且无限重复下去,得到序列
x1, x2, , xn ; xn1, , x2n; 有xn+i=xi 于是xpm+l+i=xi, 因为p是周期,所以有xl+i=xi 说明l也是周期,与p是最小周期矛盾。
30
如果圆排列W的最小周期为p, 则p|n, 由W 只能产生出p个不同线排列而不是n个.
但是它们是如何被推导出来的, 或者说 是如何发现的? 这个问题更有启发性.
1968年Berlekam在他的一本Algebraic Coding Thoery书中给出了由(M1)逐次 解出g(n)的过程, 从求解中自然地引出 了Möbius函数, 这种启发性的推理值得 有兴趣的同学参考.
25
V. Möbius反演公式的应用
k 0
k 0
7
证明:令
p p0, p1, , pn T , q q0, q1, , qn T
u u0, u1, , un T , v v0, v1, , vn T
将已知条件以矩阵形式表示为
p0 00 0
p1
10
11
列12n的所有错位排列组成集合
A1 A2 An
根据容斥原理, 即可得到:
Dn A1 A2 An
n!1 1 1 1 (1)n 1 .
1! 2! 3!
n!
12
第三次: 容易看出恰好有r个ai=i的排列 a1a2…an之个数正好为C(n,r)Dn-r, 既然 全部排列个数为n!, 自然有
pn
n0
n1
0 q0
0
q1
nn
qn
即p Aq
8
q0 00
q1
10
M M
0L
11 L
MO
qn
n0
n1
L
0 p0
0
D0
D1 x
D2 2!
x2
D3 3!
x3
由此得到:
ex
x2
Ge ( x) 1 x (1 Leabharlann Baidu 2! ) /(1 x)
1
1
Dn
(1 1
2!
) n! n!
11
第二次: 令Aj表示排列12n中使j位置上 元素就是j的排列的集合, j=1,..,n. 则排
Möbius反演公式在组合计数、数论、 信息论、遗传密码等问题中有应用.
作为例子, 我们考察圆排列问题, 也就 是著名的环状字问题.
设有m个字母组成的字母表T, 从中取 出n个字母(允许重复)按顺时针方向可 以组成一个圆排列:
W=a1a2a3an.
26
由于一个圆排列可以选取其中一个字 母ai开始,
a1a2an, a2ana1, …,anan-1a1
都看作是同一圆排列. 例3: 当m=2, n=4,T={a,b}时, 共有6个不
同的圆排列:
aaaa, bbbb, abab, aabb, aaab, bbba.
这里圆排列aabb也可写成abba或bbaa.
27
问题: 求圆排列总数Cm(n)=? 首先我们注意到由m种字母共可作出
反之, 设(M2)成立, 对d|n, 有
gn / d (d1) f n / dd1
d1|(n / d )
n / dd1 f (d1).
d1|(n / d )
23
以此代入(M1)的右端, 得
gd gn / d
dn
dn
n / dd1 f (d1 )
A( x)
n
ak
k 0
xk k!
n k 0
k r0
C(k, r)br
xk k!
B( x)e x
B(x) A(x)ex.
15
第一反演公式
定理:设n是一个自然数,多项式序列{pn},
{qn} (其中pn, qn均为n次多项式)有下列关系
n
n
pn ( x) nkqk ( x), qn ( x) nk pk ( x)
p1
M M
nn
pn
即q Bp
于是 p=Aq=ABp
由于{pn|n=0,1,2,…}是线性空间R[x]的一组基
所以AB=I,于是A-1=B
所以 v Au u A1v Bv
9
II.二项式反演公式
例1(错排问题) 在n个数字1,2,…,n形成的 n!个排列a1a2…an中, 满足ai i 的排列 有多少个?我们已两次用到这个例子.
n
dn,r g(r) f (n)
(2)
r 1
(1)与(2)两式互为反演公式.
5
互逆公式:若由公式A可推出公式B,由公 式B也能推出公式A,则称公式A、B互逆。
反演公式:如果公式A、B互逆,则称命题“ 公式A成立当且仅当公式B成立”是反演公式
反演技巧:为了求an=|An|, 引进bn=|Bn|, 其中 bn是易求的或者已知的。先建立bn由{ak}的 表达公式A,然后应用反演公式,得到公式 B,此公式B是用{bk}表示an的公式,从而求 出an.
粗略来说, 就是根据两个序列{f(n)}和 {g(n)}所满足的特殊关系, 给出他们的 相互表示方法.
4
具体来说, 为得到某个组合计数问题的 解, 我们首先设法求出相应序列f(n)所 满足的(累计)关系式
n
cn,r f (r) g(n)
(1)
r 1
其中g(n)是已知序列, 然后从中解出
k0
k0
证明: n (1)nk C(n, k)ak
k0
n
k
(1)nk C(n, k) C(k, i)bi
k0
i0
nn
( (1)nk C(n, k)C(k, i))bi bn .
i0 ki
14
注: 上述公式的证明也可以利用指数型
母母函数方法. 设an与bn的指数型母函 数分别为A(x)及B(x), 则有
要证明本定理需要先证明一个关于 Möbius函数(m)的一个性质作为引理.
19
引理C 序列(d)满足下面公式:
d|n
(d
)
1, 若n 0, 若n
1; 1.
(5)
证 n=1, 命题成立. 如果n>1, 设
n=p11p22pkk , n1= p1p2pk 用Č(k,j)表示{1,2,,k}中的j元子集所组 成的集合, 则有
称f(n)与g(n)互为Möbius逆变换.
(M1), (M2)称为Möbius反演公式.
18
Möbius函数(m)的定义如下:
1, m 1;
(m) (1)k , m是k个不同素数乘积, k 1;
0,其他情形.
例如: 30=235, 121=112. (30)=(-1)3=-1,(121)=0.
k 0
k 0
则
n
n
vn nkuk un nkvk
k 0
k 0
16
用第一反演公式证明
由
n
xn (1 x 1)n C(n, k)( x 1)k
k 0
及
n
( x 1)n (1)nk C(n, k )xk
k 0
由第一反演公式即得。
n
C(n, r )Dnr n!
r0
根据后面将要学习的二项式反演公式,
可以直接得到:
Dn
n r0
(1)r C(n, r )(n
r )!
n
n!
r0
(1)r r!
13
定理A (二项式反演公式) 设有两个序列
{an},{bn}, 则
n
n
an C(n, k)bk bn (1)nk C(n, k)ak
注意到每个圆排列总有周期. 这样可以把 圆排列按照最小周期来分类.
如果用M(p)=Mm(p)来表示最小周期为p 的圆排列的个数, 由于每个最小周期为p 的圆排列恰好对应p个线排列,而且不同的 最小周期的圆排列产生不同的线排列.