离散变换与反演
求和式的形式
不妨设
fn=∑nk=0ak,ngk
gn=∑nk=0bk,nfk
则两式可以相互推导的充要条件是
∀k,i≠j,ai,kbj,k=0
∀k,i=j,ai,kbj,k=1
以上这两个相互推导的式子就称离散变换或反演。
矩阵式的形式
反演用矩阵的形式给出会更加舒服一点。
不妨设
F
是一个
F=GTA,GT=FB
两式可相互推导
⟺ABT=E
这是显然的,从逆矩阵的角度出发很容易就能得到这样的结论。
注意上面提到了两个系数矩阵。然而实际应用时我们很少会用到它,而是用一个偏序关系来代替它。
偏序关系
一个定义在集合
S
上的偏序关系
这个不妨可以把它看作重载运算符
leq
。不同之处在于它存在一种无法比较的关系,也就是说对于任意两个元素我们不一定可以比较出它们的大小。
偏序关系的性质
- 自反性: ∀x∈S,x≤x
- 反对称性: ∀x∈S,y∈S,x≤y,y≤x 不成立
- 传递性: ∀x,y,z∈S,x≤y,y≤z 有 x≤z
偏序关系的图像表示
形象化地,对于任意的
x
直接小于等于
用图形来表示就显得更加明了了。
全序关系
全序关系是偏序关系的一个特例。它的特点是集合中的任意两个元素都可以比较大小,那么我们就可以把它排成一列。而它的图像表示也恰好是一条链的形式。实数中的 ≤ 恰好就是一种全序关系。
偏序关系的扩充与分拆
- 扩充:将一个偏序关系人为地扩充为一个全序关系, 比如拓扑排序就可以实现这个过程。但是这样子可能会受到我们人为引入的大小关系的影响。
分拆:取出集合的一个子集,使得这个子集满足良好的序关系,其中有
- 链:子集构成了一个全序关系。
- 反链:子集中任意两个元素都不能比较大小。
其中Dilworth定理给出了它们两者之间的关系
- 记集合的最长链的长度为
l
。那么偏序集可以被划分成
l 条但不能再少的反链 - 记集合的最长反链的长度为
r
。那么偏序集可以被划分成
r 条但不能再少的链。
偏序集上的反演
设有偏序集
<S,≤>
<script type="math/tex" id="MathJax-Element-31">
</script>,且
∀x∈S,fx=∑y≤xgy
那么
gx=∑y≤xμ(y,x)fy
其中当
x=y
时,
μ(x,y)=1
否则
μ(x,y)=−∑x≤z<yμ(x,z)
大致意思就是将之前减过的
x
这一位都抵消回去,最后再减去
包含关系的偏序集的反演
设有偏序集
<S,⊆>
<script type="math/tex" id="MathJax-Element-39">
</script>,再定义
fx=∑y⊆xgy
那么
gx=∑y⊆xμ(y,x)fy
其中
μ(y,x)=|x|−|y|
接下来我们来讨论一个数论上很重要的反演。
Dirichlet convolution
定义
设
f,g
都是算术函数
(ArithmeticFunctions)
,它们的狄利克雷卷积得到的也是一个算术函数
h
,且
h(n)=∑d|nf(d)g(nd)
算术函数:在数论上,算术函数(或称数论函数)指定义域为正整数、陪域为复数的函数,每个算术函数都可视为复数的序列。
性质
所有的数论函数和逐点加法、狄利克雷卷积构成了一个交换环。
具体的,狄利克雷卷积满足以下定律
- 结合律: (f∗g)∗h=f∗(g∗h)
- 交换律: f∗g=g∗f
- 分配律: (f+g)∗h=f∗h+g∗h
- 单位元: f∗e=f
- 逆元:若
f(1)≠0
则存在
g
使得
g∗f=e ,称作 f 的Dirichlet inverse - 两个积性函数的狄利克雷卷积依旧是积性函数
单位元
e 定义如下
- 若 n=1 则 e(n)=1
- 否则 e(n)=0
Möbius 反演
Möbius function
定义
- 若 n=1 ,则 μ(n)=1
- 若 n 包含素因子的平方,则
μ(n)=0 - 若 n 有
k 个不相同的素数构成 (k>=1) , μ(n)=(−1)k性质
- 积性函数: μ(ab)=μ(a)μ(b),(a,b)=1
- μ∗1=e
关于第二条性质的证明
- 当 n=1 时显然成立。
- 否则设 n=∏m−1i=0pcii
(μ∗1)(n)=∑d|nμ(d)
注意到当 d 包括素因子的平方时μ 的值就为0了。
稍微推导一下可以发现
原式= ∑mi=0(−1)iCim
参照二项式展开 (a+b)m=∑mi=0Cimaibm−i
令 a=−1,b=1 即可得到上式,显然当且仅当 m=0 时原式=1
然而由于 n>1,m≠0 ,故 (μ∗1)(n)=0Möbius inversions
现有算术函数定义如下( f 也是算术函数)
F(n)=∑d|nf(d) 从 F 来倒推出
f 可以用莫比乌斯反演。
考虑等式左右两边同乘一个 μ(F∗μ)(n)=∑d|nF(nd)μ(d)=∑d|n[∑d′|ndf(d′)]μ(d)=∑d′|nf(d′)[∑d|nd′μ(d)]
注意到当且仅当 nd′=1 ,也就是 d′=n 时, [∑d|nd′μ(d)]=1 ,其它时候都为 0
那么就有(F∗μ)(n)=f(n)
具体来说就是 f(n)=∑d|nF(d)μ(nd)以上就是莫比乌斯反演。
然而这个形式不仅仅局限于此,考虑以下等式。
F(n)=∑n|df(d)
那么
f(n)=∑n|dμ(dn)F(d)
也是成立的。
我们不妨倒过来想,原来的莫比乌斯反演是约数的形式,那么此时变成了倍数的形式以后基本思想还是不变的,上面的式子还是挺容易理解的。