莫比烏斯反演

礙於技術限制,各項公式未能個別標註出處。
參考文獻統一排列於「參考文獻」節。
學術引用時務必完整標示所有文獻。

目錄

偏序集

基本定義

對於集合

P,若
P
上的二元關係
滿足以下條件,則稱為
P
上的偏序關係:

  • 自反性:對於任意
    xP
    都有
    xx
  • 反對稱性:若
    xy
    yx
    ,則
    x=y
  • 遞移性:若
    xy
    yz
    ,則
    xz

集合

P 配備上偏序關係
就組成了偏序集
P,
,簡稱 poset。

這篇文將直接用

P 同時表示偏序集結構
P,
以及它的奠基集合
P
,而有需要時也會用
P
表示它的偏序關係。

同時表示結構與奠基集合是數學上常有的符號濫用。

要注意偏序集內的任意兩個元素並不總是有關係。
對於偏序集

P 內的元素
x,yP
,依照它們的關係我們有以下符號與術語:

  • x
    y
    可比較:代表有
    xy
    yx
  • x<y
    :代表有
    xy
    xy
  • xy
    x
    y
    覆蓋:代表有
    x<y
    且不存在其他
    zP
    滿足
    x<z<y
  • 最小值
    0^
    :代表對於任意
    xP
    都有
    0^x
  • 最大值
    1^
    :代表對於任意
    xP
    都有
    x1^

最小值跟最大值不一定會存在,但如果存在,根據反對稱性它必定是唯一的。

如果

P 之中的任兩個元素都可比較,那我們就稱
P
是全序集或線性序集。

如果

xz
yz
,就稱
z
x
y
的上界;
如果進一步地對於其他
x
y
的上界
w
都有
zw
,就稱
z
x
y
的最小上界。
類似地我們也有定義下界與最大下界。

如果

x
y
有最小上界,那它必定是唯一的,我們將它記為
xy

如果
x
y
有最大下界,那它也會是唯一的,我們將它記為
xy

於是我們有
xyy=xy 且 x=xy.

這兩個東西好像很難記憶…

  • xy
    :最大上界、接,英文是 supremum、join
  • xy
    :最小下界、交,英文是 infimum、meet

如果偏序集

P 中的任兩個元素都有最大上界與最小下界,我們就說
P,,
是一個格;如果任兩個元素都有最大上界,或者任兩個元素都有最小下界,我們就說
P,
P,
是一個半格。

我們可以公理地用

運算去定義格這種代數結構,並從格反過來定義偏序集。
但這些超出了這篇文的需要,我們在這邊選擇不這麼做。

子偏序集

對於偏序集

P
Q
,當函數
ϕ:PQ
對於所有
xPy
都有
ϕ(x)Qϕ(y)
,則說
ϕ
P
Q
的保序映射或序同態。

保序映射的英文是 isotone mapping 或 order-preserving mapping。

對於偏序集

P
Q
,如果
PQ
且存在
P
Q
的保序映射,那我們就說
P
Q
的弱子偏序集。
特別地,當
P=Q
時,我們就說
Q
P
的細分;
而若
Q
又進一步是全序集時,我們就說
Q
P
的線性擴張或拓撲排序。

對於偏序集

P
Q
,如果
PQ
P
Q
配備相同的偏序關係(作用在
P
上相同),則我們說
P
Q
的導出子偏序集。
當我們直接說子偏序集時,指的就是導出子偏序集。

我們對於偏序集

P 中可比較的
x
y
定義區間
[x,y]:={zP:xzy}
,它是
P
的子偏序集。
P
上的所有區間都是有限集合時,我們就稱
P
是局部有限的。

如果偏序集

P 的子偏序集
C
是全序集,我們就稱
C
P
上的鏈。
而如果偏序集
P
的子集
A
內元素兩兩不可比較,我們就稱
A
P
上的反鏈。

偏序集間的運算

對於偏序集

P
Q
,如果它們之間的保序映射
ϕ:PQ
是個雙射函數,並且反函數
ϕ1:QP
也是一個保序映射,也就是說
xPyϕ(x)Qϕ(y),

我們就稱函數
ϕ
P
Q
的序同構。

當偏序集

P
Q
之間存在這麼一個序同構,我們也會說這兩個偏序集是同構的,並記為
PQ

當我們談論的東西只牽涉到偏序關係時,我們就會將序同構的兩個偏序集視為相等,它們就只是同一個本尊的不同分身。

對於偏序集

P
Q

定義

P+Q:=PQ,Σ,稱為
P
Q
的直和或互斥聯集,其中
xΣyxPy 或 xQy.

定義

P×Q:=P×Q,Π,稱為
P
Q
的直積或笛卡兒積,其中
(x1,y1)Π(x2,y2)x1Px2 且 y1Qy2.

如果考慮由偏序集與保序映射所構成的範疇,那麼的這邊直積與直和的正好就是範疇中的積與餘積。

對於偏序集

P,我們用
nP
表示
n
P
的直和,也用
Pn
表示
n
P
的直積。
從同構的意義上來看,偏序集之間的直和與直積有結合律與交換律,也有分配律
P×(Q+R)(P×Q)+(P×R).

常見的偏序集

我們用

N:={0,1,2,} 表示自然數集。

在自然數

N 中我們有常用的全序關係,它定義為
x<x+1
,也就是說
N,
是全序集。
N
之中我們特別把區間
[0,n]
寫作
Cn
,它是
N
的子全序集,稱為長度
n
的鍊。

  • 全序集
    N
    是局部有限的,有最小值
    0^=0
  • 全序集
    Cn
    是有限的,有最小值
    0^=0
    與最大值
    1^=n
  • 全序集
    Cn
    是格,其中
    xy=max(x,y)
    xy=min(x,y)
  • 若全序集
    P
    是有限的且
    #P=n
    ,則
    PCn1

布林代數

集合間的包含關係

是偏序關係,其中空集合
是最小值。
對於集合
S
,考慮它的冪集合
2S
,也就是搜集
S
所有子集的集合,那配上包含關係就是個偏序集,我們將它記為
BS=2S,

如果
S={1,2,,n}N
,那麼我們就特別將
BS
記為
Bn

  • 偏序集
    BS
    是有限的,有最小值
    0^=
    與最大值
    1^=S
  • 偏序集
    BS
    是格,其中
    xy=xy
    xy=xy
    ,這種格稱為布林代數。
  • 如果集合
    S
    是有限的且
    #S=n
    ,則
    BSBn(C1)n

整除關係

自然數之間除了一般的大小關係,整除關係也是一個偏序關係,它定義為

xkx
我們將這個偏序集記為
D=N,

D
之中我們特別把區間
[1,n]
記為
Dn
,所以
Dn
搜集了所有
n
的正因數。

  • 偏序集
    D
    是局部有限的,有最小值
    0^=1
    與最大值
    1^=0
  • 偏序集
    Dn
    是有限的,有最小值
    0^=1
    與最大值
    1^=n
  • 偏序集
    D
    Dn
    都是格,其中
    xy=gcd(x,y)
    xy=lcm(x,y)
  • D
    之中,區間
    [x,y]Dy/x
  • 如果
    n=p1e1p2e2pkek
    n
    的質因數分解,則
    DnCe1×Ce2××Cek

關聯代數

代數定義

對於局部有限的偏序集

P,我們令
Int(P)
搜集所有
P
上的區間。
注意這些區間
[x,y]Int(P)
都不是空集合(其中的
x
y
必須先可比較)。
對於任意的函數
f:Int(P)K
,我們直接用
f(x,y)
來代表
f([x,y])

重點是要把定義域限制到可比較的兩個元素,並且區間本身是有限的。

對於局部有限的偏序集

P 與體
K,+,
,搜集所有函數
f:Int(P)K
並配備下列三個運算,就構成
P
K
上的關聯代數,記為
I(P,K)

  • 係數積:
    (af)(x,y):=af(x,y)
  • 加法:
    (f+g)(x,y):=f(x,y)+g(x,y)
  • 乘法(或叫捲積):
    (fg)(x,y):=xzyf(x,z)g(z,y)

所謂

K 上的代數,就是
K
上的向量空間再配備上一個向量間的乘法;
如果你不知道什麼是向量空間,就請先去讀一點線性代數再來讀這篇文。

事實上我們可以把係數從體推廣成交換環,但我不想在這裡這麼做。

注意到對任何集合

X,令
KX
搜集所有
XK
的函數,那麼
KX
配備下列兩個運算就能構成
K
上的向量空間:

  • 係數積:
    (af)(x):=af(x)
  • 加法:
    (f+g)(x):=f(x)+g(x)

而上述的關聯代數

I(P,K) 其實就是
KInt(P)
再配備上乘法
後的結構。

由於

P 是局部有限的,上述乘法定義中的總和是有限和,因此是定義良好的。
我們可以看出這個乘法是有結合律的,並且有乘法單位元素
δ
定義為
δ(x,y)={1,若 x=y0,若 xy

如果

P 是有限的,我們可以將它的元素編號為
x1,,xn
,使得當
xi<xj
時都有
i<j

接著考慮
K
上的所有上三角矩陣
M=(mij)
,其中當
xixj
時有
mij=0

那麼不難看出這些上三角矩陣構成的矩陣代數同構於
I(P,K)
,矩陣乘法就對應到
I(P,K)
的乘法,而單位矩陣則對應到
δ

上述的同構證明留給讀者自己練習。

對於

fI(P,K),存在乘法反元素
f1
,若且唯若對於所有
xP
都有
f(x,x)0

更進一步地,如果

f1 存在,那麼
f1(x,y)
的值只被區間
[x,y]
決定。

這裡的

f1 是滿足
ff1=δ=f1f
的,而不是反函數。

如果

fg=δ,那麼根據乘法定義可知對所有
xP
都有
f(x,x)g(x,x)=1
,所以
f(x,x)0

並且還可知對於
xy
都有
g(x,y)=(1)f(x,x)1x<zyf(x,z)g(z,y).

所以
f
有乘法右反元素
g
若且唯若
f(x,x)0
,並且
g(x,y)
的值可以只靠區間
[x,y]
推算出來。

同樣的道理考慮在

hf=δ 上,我們也可以得出
f
有乘法左反元素
h
若且唯若
f(x,x)0

那就代表
f
有乘法右反元素時同時會有乘法左反元素,此時這兩者必須相等。

Zeta 函數

I(P,K) 中有一個特殊元素名叫 zeta 函數
ζ
,定義為
ζ(x,y)=1對所有 [x,y]Int(P)

根據乘法定義可以看出

ζ2(x,y)=xzy1=#[x,y]
更一般地有
ζk(x,y)=x=x0x1xk=y1,

也就是計算區間
[x,y]
內有多少條鏈是
x=x0x1xk=y

另一方面也有
(ζδ)(x,y)={0,若 x=y1,若 x<y

因此
(ζδ)k(x,y)
就計算區間
[x,y]
內有多少條鏈是
x=x0<x1<<xk=y

考慮

2δζI(P,K),我們有
(2δζ)(x,y)={1,若 x=y1,若 x<y

根據前面的命題我們知道
2δζ
有乘法反元素,並且可以驗證有
(2δζ)1=k=0(ζδ)k=δ+(ζδ)+(ζδ)2+.

也就是說
(2δζ)1(x,y)
就計算區間
[x,y]
內總共有多少條鏈。

如果我們把

δ 寫成
1
,這就跟
(1x)1=1+x+x2
道理一樣。

莫比烏斯反演

根據前面的命題,我們知道 zeta 函數

ζ 也有乘法反元素,我們稱之為 Möbius 函數並記為
μ

那麼根據
μζ=δ=ζμ
,可知對所有
xP
都有
μ(x,x)=1
,並且對於
x<y
都有
xzyμ(x,z)=0=xzyμ(z,y).

f,g:PK,那麼
對於所有 yPg(y)=zyf(z),

若且唯若
對於所有 yPf(y)=zyg(z)μ(z,y).

KP 搜集所有函數
PK
,則
KP
K
上的向量空間。
現在考慮將
I(P,K)
右作用在
KP
上,其中對於任意
fRP
ξI(P,K)
,該作用定義為
(fξ)(y):=zyf(z)ξ(z,t).

I(P,K)
將如同
KP
上線性變換的代數一般。
而原本的命題則變成顯然的
fζ=gf=gμ.

如果

#P=n 是有限的,我們就可以將
I(P,K)
中的元素視為
n×n
的三角矩陣。
在這個情況下,上述的證明就是說那些
KP
中的函數能視為
Kn
空間中的向量而能乘上
I(P,K)
中的三角矩陣,因此我們就能直接從矩陣運算看出莫比烏斯反演。

這邊也可以用純計算去證明,比如其中一邊是

zyg(z)μ(z,y)=zyμ(z,y)(xzf(x))=xyf(x)(xzyμ(z,y))=xyf(x)δ(z,y)=f(y).

我們也有對偶版的莫比烏斯反演,注意總和底下的條件差異。

f,g:PK,那麼
對於所有 xPg(x)=xzf(z),

若且唯若
對於所有 xPf(x)=xzμ(x,z)g(z).

跟前一個證明一模一樣,只是改考慮成定義如下的左作用

(ξf)(x):=xzξ(x,z)f(z).

例子

和差分

排容原理

數論

參考文獻

礙於技術限制,各項公式未能個別標註出處。
參考文獻按數學論文慣例,以字母順序統一排列於下。
學術引用時務必完整標示所有文獻。

  • R. P. Stanley, Enumerative Combinatorics, Volume 1, 2011.