システム理論Ⅱ ( 離散システム論 )
中村政隆
March 2008
(January 15, 2012)
Contents
1
集合1
1.1
集合と要素. . . . 1
1.2
順序対、直積集合. . . . 1
1.3
関数(
写像) . . . . 1
1.4
集合の位数. . . . 2
1.5
関係の定義、同値関係. . . . 2
1.6
数の概念とペアノの公理、数学的帰納法. . . . 3
2
順序と束7 2.1
順序集合. . . . 7
2.2
束(lattice) . . . . 8
2.3
分配束. . . . 8
2.4
モジュラー束. . . . 10
2.5
セミモジュラー束. . . . 10
2.6
幾何束. . . . 11
3
グラフ理論:
諸定義、平面グラフ13 3.1
グラフとは. . . . 13
3.2
グラフの基本的な諸概念. . . . 13
3.3
基本カットセット行列、基本サーキット行列. . . . 15
3.4
平面グラフ、彩色、木. . . . 16
3.5
交差グラフ(Intersection Graph) . . . . 18
3.6
三角化グラフ. . . . 20
3.7
区間グラフ. . . . 21
4
線形計画法Linear Programming 23 4.1
線形不等式系と多面体. . . . 23
4.2
数理計画法、凸計画法. . . . 24
4.3
線形計画問題. . . . 25
4.4
双対問題の幾何学的解釈とLP
の双対定理. . . . 26
4.5 Blocker and Packing . . . . 32
4.6 Integer Programming and the MFMC property . . . . 32
4.7 Packing Theorems . . . . 33
4.8 Anti-blocker and the Perfect Graph Theorem . . . . 34
4.9
線形計画法の応用例. . . . 37
4.9.1
2人零和ゲーム. . . . 37
4.9.2
輸送問題. . . . 38
4.9.3
ネットワーク・フロー. . . . 38
4.10
凸関数とその共役関数(conjugate functions) . . . . 39
5
整多面体と組合せ的最大最小定理41
5.1
全ユニモジュラー行列と多面体. . . . 41
6
ネットワーク・フローと組合せ的最大最小定理46
6.1
最大流問題. . . . 46
6.2
最小費用流問題. . . . 48
6.3
二部グラフの最大マッチング問題. . . . 50
6.4
マッチング多面体. . . . 52
7
計算の複雑さとN P -
完全問題53 7.1
問題のクラスNP . . . . 53
7.2 NP—完全性 . . . . 56
7.3
計算の複雑さ:時間計算量、領域計算量. . . . 61
7.4 Worst Case Analysis and Mean Time Analysis . . . . 62
7.5
補遺:
様々なN P -
完全問題. . . . 63
7.6
数の複雑さ–
チェイティンの定義. . . . 66
8
最短路問題67 8.1
最短路問題. . . . 67
8.2
最短路問題のLP
による定式化. . . . 68
8.3
アサイクリックグラフの場合. . . . 70
8.4
辺の長さが非負である場合の最短路問題の解法(
アルゴリズム) . . . . 70
8.5
すべての点対間の最短路を求める–
行列かけ算法. . . . 71
9 Blocking and Anti-blocking Theory –
多面体的組み合わせ論74 9.1
集合族、多面体のブロッカー. . . . 74
9.2
集合族、多面体のアンチ・ブロッカー. . . . 77
9.3
ブロッキングペアとアンチ・ブロッキングペアの関係. . . . 78
10 Matroid Theory 80 10.1
マトロイドの公理系. . . . 80
10.2
マトロイドの例. . . . 85
10.3
マイナー. . . . 86
10.4
マトロイドの基本分類定理. . . . 86
10.5 Matroid Intersection Theorem
と合併マトロイド. . . . 87
10.6 Tutte
多項式、特徴多項式, β -
不変量. . . . 89
10.7
最小重み全域木問題と欲張り算法(Greedy algorithm) . . . . 92
10.8 Greedy Algorithm
とマトロイド、ポリマトロイド. . . . 93
10.9 Poset
上の欲張りアルゴリズム. . . . 96
10.10
アンチマトロイドと凸幾何. . . . 97
10.11
アンチマトロイドと欲張り算法. . . . 98
11
ポリマトロイドと劣モジュラー関数100 11.1
定義と記法. . . 100
11.2
ポリマトロイドpolymatroid . . . 100
11.3
劣モジュラー関数. . . 101
11.4
ポリマトロイドの頂点の表現. . . 101
11.5
ポリマトロイド交差定理Polymatroid Intersection Theorem . . . 102
11.6 Matroid Intersection Problem . . . 104
11.6.1 Polymatroid Intersection Theorem . . . 104
11.7 Matroid Union . . . 104
12
ランダムウォーク、マルコフ連鎖、待ち行列105 12.1
乱歩(
ランダムウォーク) . . . 105
12.2
マルコフ連鎖. . . 105
12.3
ポアソン分布、指数分布、待ち行列. . . 110
13
有限オートマトン、形式言語114 13.1
有限オートマトン. . . 114
13.2
有限状態機械(finite state machine) . . . 115
13.3
生成規則と言語. . . 116
13.4
正則表現. . . 118
13.5 Post
システム:付録. . . 120
14
帰納的関数とチューリング機械と決定不能問題121 14.1
帰納的関数. . . 121
14.2
チューリング機械. . . 123
14.3
決定不能問題. . . 125
15
自己言及とパラドックス129
1 集合
1.1
集合と要素•
集合:特定された元(要素)
の集まり。∅
は空集合•
集合の指定の仕方:A = { 2, 3, 5, 7, 11 } A = { x : x is prime, 1 6 x 6 12 }
• p ∈ A : p
が集合A
の要素である。•
部分集合:A⊆ B (or A ⊂ B)
•
集合の合併、共通部分、補集合、差、差分和A ∪ B, A ∩ B, A
c(A), A \ B, A ∆ B
• Demorgan
の法則•
集合の位数(cardinality): | A | = A
の要素の数•
べき集合:2
E,
またはP (E) | 2
E| = 2
|E|•
慣用の記法:N , Z, Q, R, C
1.2
順序対、直積集合•
順序対(a, b) = (a’,b’) iff a=a’ and b=b’
• cf.
2元集合では{ a, b } = { b, a }
•
直積(product) of A and B : A × B = { (a, b) : a ∈ A, b ∈ B }
• R
2= R × R
2次元空間, R
3= R × R × R
1.3
関数(写像)
•
関数f
とは、ある集合X
の各元x ∈ X
に対してある集合Y
の元f (x) ∈ Y
が一意に定まっている とき、その対応の関係のことを言う。ここで、X
を定義域、Y
を 値域と呼びf : X → Y
と書く•
関数の対応の示し方:f : x 7→ x
2+ x + 1, f(x) = x
2+ x + 1
•
例:f: R
2→ R, f : (x
1, x
2) 7→ x
21+ x
22− 1
•
関数のグラフ:{ (x, y) : x ∈ X, y = f (x) } (
グラフ理論で言うグラフとは異なる。)
•
関数の性質:f
単射(
1対1写像)
とはx 6 = x
0 ならばf (x) 6 = f (x
0)
をみたすこと 全射(上への写像)
とは、任意のy ∈ T
であるx ∈ X
があってy = f (x)
となること 全射かつ単射であるとき全単射写像という。1.4
集合の位数•
集合の位数(cardinality,
濃度、基数)
:| A | , #(A), card(A)
•
集合A
とB
の位数が同じ⇐⇒ A
からB
への全単射写像f : A ← B
が存在する。•
有限:集合A
が有限集合であるとは ある非負の整数n
に対してA
が{ 1, 2, . . . , n }
と同じ位数にな ること。•
可算無限ℵ
0 :自然数、整数、有理数の位数•
連続無限ℵ
1 :実数の位数•
命題 可算集合の可算個の合併集合は可算である。1.5
関係の定義、同値関係関係という概念を形式化するのにはどのようにすればよいか考えてみる。人間のある集団
E
の中での親子と いう関係を考える。a
がb
の親であるような順序対(a, b)
の全体をR
とする。つまり、R = { (a, b) ∈ E × E | a
がb
の親である}
逆に、この
R
を定めれば、集合E
の中での「親子関係」が定まる。ゆえに、集合E
上の関係という概念 は、その直積集合の部分集合であると定めればよい。Def. 1.1
集合E
上の関係とは、その直積集合の部分集合R ⊆ E × E
のことである。普通
(a, b) ∈ R
のことをa R b
と書く。Def. 1.2
つぎを満たす関係≡
は同値関係と呼ばれる。(1) a ≡ a ( ∀ a ∈ E) [
反射的(reflexive)]
(2) a ≡ b
ならばb ≡ a [
対称的(symmetric)]
(3) a ≡ b, b ≡ c
ならばa ≡ c [推移的 (transitive)]
Def. 1.3
集合E
上の同値関係≡
がひとつ与えられているとする。ある元a
に同値なもの全体の集合を[a]
と書く。つまり、
[a] = { b : a ≡ b }
と定義する。a
をこの同値類の代表元という。同値関係の性質か ら、ひとつの同値類の中の任意の2元は互いに同値になる。かつ、同値類は、代表元の取り方によらないで 一意に定まる。つまり、a ≡ b
ならば[a] = [b]
となる。同値類の全体を
E / ≡
と書くと、E /≡
は集合E
の分割をなす。これをE
の≡
による商と呼ぶ。演習
1.1 rm
上に述べられた性質を証明せよ。例
1.1 (1)
整数の集合の上で、ある整数p
で割った余りが同じとき、a ≡ b (mod p)
とすると、同値関係になる。(2)
自然数N
の組の全体の上に次で同値関係∼
を導入する。(a, b) ∼ (a
0, b
0) ⇐⇒ a + b
0= b + a
0 この同値関係による同値類の全体N × N / ∼
は、整数全体と同じと見なせる。(3)
群G
とその部分群H
が与えられたとする。a ≡ b iff ax = b ( ∃ x ∈ H )
とすると同値関係になる。この 同値関係の同値類をH
による左同値類という。右同値類も同様に定義できる。H
の右同値類の全体と左同 値類の全体が一致するするための必要十分条件は、H
が正則部分群であることである。1.6
数の概念とペアノの公理、数学的帰納法数は、自然数から始めて、整数、有理数、実数と拡張して規定することができる。自然数全体の集合
N
を 特徴づけるものとして、ペアノの公理系がある。まず 自然数1
があり、各自然数x
にその後者(successor) x
+を対応させる写像ψ
があり、以下を満たすものとして整数を定義できる。(1) 1 ∈ N ,
(2) x ∈ N
ならばx
+∈ N , (3) x ∈ N
ならばx
+6 = 1,
(4) x
+= y
+(x, y ∈ N )
ならばx = y,
(5)
集合M
が1 ∈ M
とx ∈ M ⇒ x
+∈ M
の2条件を満たせばN ⊆ M .
x
+は通常の意味ではx + 1
に相応する。条件(4)
より写像ψ
は単射になる。また任意のy ∈ N y 6 = 1
に対 して、y = x
+ となるx
が存在する。もし存在しなければ、M = N − { y }
に関して極小性の条件(5)
が成立 しなくなる。数学的帰納法は、自然数
n
に関する性質P (n)
が以下を満たせば、自然数全体で成立することを言うも のである。(1) P (1)
が成立する。(2)
任意の自然数k
で、P(k)
が正しいならばP(k + 1)
も正しい。P (k)
が成立している数k
の全体をM
とすれば、ペアノの公理系の第5公理からただちにM = N
tな る。つまり、数学的帰納法が正しいことを保証している。(ポアンカレは「科学と仮説」(
岩波文庫)
の中で、なぜ数学のすべてがただの同語反復になってしまわないのかと次のように疑問を呈している。
「もし数学が演繹的なのは見かけだけにすぎないのならば、誰も夢にも疑おうとしないこの完全 な厳密性はどこからくるのか。もし反対に数学で述べている命題全部が形式論理学の規則によっ て次から次へ引き出すことが出来るならば、どうして数学は大規模な同語反復に帰してしまわな いのであろうか。三段論法は我々に何も本質的に新しいことを教えることは出来ないし、もしす べてが同一律から出てくるものであるのだとすれば、すべてはそこにまた帰着するはずである。
それではかくも多くの書物を充たしている定理の全部の叙述は「AはAである」というのを回り くどい方法で言ったものに過ぎないということを承認しなければいけないのか。」
そこでポアンカレは、数学がかくも豊かな内容を持つ秘密のひとつは、数学的帰納法利用するところにある と書いている。)
自然数から整数を構成するのにつぎのような代数的方法がある。自然数の対
(k, l)
の全体M = N×N
とし て、その上の同値関係(k, l) ∼ (m, n)
をk + m = l + n
で定義する。この同値類として整数の集合Z = M/ ∼
が定義できる。(
課題1.1
を参照)
有理数の構成。整数の対
(a, b)
でb 6 = 0
であるものの全体をP
として、その上の同値関係(a, b) ∼ (c, d)
をad = bc
で定義したときの同値類の全体P/ ∼
が有理数の全体Q
になる。実数の構成。Dedekindは集合の切断という概念をもとにして実数を構成してみせた。有理数の全体
Q
の 非空集合への分割Q = A ∪ B (A, B 6 = ∅ )
がa ∈ A, b ∈ B → a < b
をみたすとき、切断と呼ばれる。この 切断の全体として、実数が定義できる。別に、Cauchy列に基づく方法がある。有理数の列{ a
n}
が、任意 の正の有理数e > 0
に対してある数N
があってN
より大きい任意のn, m
に対して| a
n− a
m| < e
とな るとき、Cauchy
列であるという。ここで2つのCauchy
列{ a
n} , { b
n}
で{ a
1, b
1, . . . , a
n, b
n, . . . }
が再びCauchy
列になるとき{ a
n} ∼ { b
n}
とすると、これは同値関係になる。この同値類の全体として実数が定義できる。
Dedekind
の実数とCauchy
の実数は同型であることが知られている。Cauchy
の実数の定義からは、実数の完備性が定義から直ちに成立することが保証される。
数の概念 数の公理から、整数の加法、乗法の定義等を公理的に構成してみよう。
(
高木貞治「数の概念」よ り)
ここでは、まず整数の集合Z
を公理的に構成する。(I) Z
は非空集合で、Z
上の恒等写でない全単射写像ϕ : Z → Z
が存在する。(II) Z
の部分集合M
上でϕ
が全単射になれば、M= Z
である。x
+= ϕ(x), x
−= ϕ
−1 と書くことにする。M⊆ Z
のときM
+= { x
+: x ∈ M } , M
−= { x
−: x ∈ M }
と する。これを使うと公理系は(I) ϕ
は1対1対応でZ
+= Z
(II) ∅ 6 = M ⊆ Z
かつM
+= M
ならばM = Z
と書ける。この公理系の枠組みで数学的帰納法の形は、
(1)
ある数a
で命題P(a)
が成立することを示す。(2)
任意のx
において、P (x)
が真ならばP (x
+), P (x
−)
が真になることを示す。これから、任意の
x
でP(x)
が成立すると結論するものである。ここでM = { x ∈ Z : P (x)
が真である}
とすると、(1)よりM
は非空でかつ(2)
からM = M
+= M
−.
公理からM = Z
であるとわかる。ゆえに 数学的帰納法が正しいとわかる。Def. 1.4
数の集合K
がK
+⊆ K
、つまりx ∈ K
ならばx
+∈ K
であるとき、昇列であるという。またa ∈ Z
に対してa
を含むような昇列の全体の共通部分のなす昇列をK(a)
と書く。補題
1.1 M ⊆ L
ならばM
+⊆ L
+. (Proof) ϕ
が写像であることから明らか。¤
補題
1.2 K
が昇列ならばK
+, K
− も昇列になる。(Proof)
仮定からK
+⊆ K
ゆえに(K
+)
+⊆ K
+すなわちK
+ は昇列。¤
命題1.1 K(a
+) = K(a)
+, K(a
−) = K(a)
−(Proof) K(a
+) = K(a)
+ を示す。定義からa ∈ K(a)
、ゆえにa
+∈ K(a)
+. K(a)
+ は昇列であるから、昇列の定義より
K(a+) ⊆ K(a)
+.
一方a
+∈ K(a
+)
だからa ∈ K(a
+)
−.
ここでK(a
+)
− は昇列だからK(a) ⊆ K(a
+)
− ゆえにK(a)
+⊆ K(a
+).
これらをあわせるとK(a
+) = K(a)
+.
残りも同様。¤
命題
1.2
ある数a
に関してK(a) = Z
ならば、任意のx
でK(x) = Z .
(Proof) M = { x | K(x) = Z}
とする。a ∈ M
よりM 6 = ∅ . x ∈ M
つまりK(x) = Z
とするとK(x
±) = K(x)
±= Z
±= Z
ゆえに公理からM = Z ¤
命題
1.2
により次の二つの場合のどちらかになると分かる。(1)
すべての数x
でK(x) 6 = Z . [
無限列]
(2)
すべての数x
でK(x) = Z . [
有限サイクル]
加法の構成。加法は関数
x 7→ ϕ(x) = x
+ の反復として定義される。x
にa
を足す関数x + a
の役割を 果たす関数F
a(x)
を次のように導入する。まず、ϕ
が次を満たすことに注意する。ϕ(x
+) = ϕ(ϕ(x)) = (ϕ(x))
+Def. 1.5
数Z
の中から任意にひとつの数を取り、それを記号0
で表わす。さらに、0 + = 1, 1 + = 2, . . .
と書くことにする。定理
1.1
任意のa
で、次の条件をみたす関数F ( F(0) = a,
任意の
x
でF(x
+) = F (x)
+(1.1)
が一意に存在する。これを
F
a(x)
と書くことにする。(Proof)
一意性。二つの関数F (x), G(x)
がともに条件を満たしたとする。F(x) = G(x)
となる数x
の全体 をM
とする。F (0) = G(0) = a
だから0 ∈ M
で、M
は非空。あるx
でF(x) = G(x)
であったとする。F (x
+) = F (x)
+, G(x
+) = G(x)
+ だからF (x
+) = G(x
+).
同様にF (x
−) = F (x)
−, G(x
−) = G(x)
− よりF (x
−) = G(x
−).
ゆえに数学的帰納法よりM = Z .
存在の証明。
a = 0, 1
の場合はF
0(x) = x, F
1(x) = x
+ で自明。a
に関する帰納法を使う。F
a が存在した として、Fa+(x), F
a−(x)
の存在を示す。それには、F
a+(x) = F
a(x)
+, F
a−(x) = F
a(x)
− と定義する。すると、F
a+(0) = F
a(0)
+= a
+F
a+(x
+) = F
a(x
+)
+= (F
a(x)
+)
+= (F
a+(x))
+となって、条件を満たす。
F
a−(x)
についても同様。よって数学的帰納法により任意のa
で条件を満たすF
a(x)
が存在する。¤
Def. 1.6 F
a(x) = x + a
と書くことにする。今までに知られた事実
F
a+(x) = F
a(x
+) = F
a(x)
+ を上の記法で書くと、x + a
+= x
++ a = (x + a)
+ 定理1.2 (
交換律) a + b = b + a
(Proof) G(a) = b + a = F
a(b)
とおく。まず、G(0) = F
0(b) = b.
そしてG(a
+) = F
a+(b) = F
a(b)
+= G(a)
+ 故に定理1.1
よりG(x) = F
b(x).
ゆえにb + a = G(a) = F
b(a) = a + b
¤
演習
1.2
次を示せ。(1) 0 + a = a, a + 0 = a
(2) a + ( − a) = 0, ( − a) + a = 0
定理
1.3 (
結合律) (a + b) + c = a + (b + c)
(Proof) φ(a) = (a + b) + c)
とおくと、φ(0) = b + c
かつφ(a
+) = (a
++ b) + c = (a + B)
++ c = ((a + b) + c)
+= φ(a)
+ ゆえに、φ(a) = a + (b + c).
ゆえに(a + b) + c = a + (b + c). ¤
定理
1.4 (
引き算)
任意のa, b
に対して、次の式を満たすx
が一意に存在する。x + a = b
Def. 1.7 x + a = b
の解をx = b − a
と書くことにする。0 − a
を− a
と略記する。すると、
(b + ( − a)) + a = b + (( − a) + a) = b + 0 = b
だから引き算の一意性より、b + ( − a) = b − a
とわかる。乗法の定義。
定理
1.5 (
乗法)
任意の数a
に対して、次をみたすx
の関数f(x, a)
が一意に存在して定まる。f (0, a) = 0, (1.2)
f (x
+, a) = f (x, a) + a (1.3)
(Proof) (一意性) f (x, a), g(x, a)
がともに条件をみたすとする。x= 0
でf (0, a) = g(0, a) = 0. f (x, a) = g(x, a)
と仮定すると、f (x
+, a) = f (x, a) + a = g(x, a) + a = g(x
+, a).
ゆえにf (x
+, a) = g(x
+, a)
同様にf (x
−, a) = g(x
−, a)
帰納法によりf = g
(
存在)
略。¤
次が成立する。x · 0 = 0, 0 · x = 0, (1.4)
(x + 1)y = xy + 1, x(y + 1) = xy + x (1.5)
Def. 1.8
このf (x, a)
を通常の記法としてxa
と書く。定理
1.6 (
積の交換律) xy = yx
(Proof) f (x) = yx
とする。上の(1.4)
からf (0) = 0 (1.5)
からf (x
+) = y(x + 1) = yx + y = f (x) + y
定 理1.5
よりf (x) = xy
つまりyx = xy ¤
演習
1.3 (xy)z = x(yz) [結合律]
が成立することを示せ。課題
1.1
ペアノの公理を出発点にとり、自然数から整数を構成し、そこで加法と減法を定義してその基本的 な性質を証明してみよ。2 順序と束
2.1
順序集合Def. 2.1
半順序集合P = (E, 6 )
とは、集合E
とその上の2項関係6
の組で、次の性質を満たすもので ある。(1) x 6 x ( ∀ x ∈ E), [
反射的(reflexive)]
(2) x 6 y, y 6 x ⇒ x = y, [
反対称的(anti-symmetric)]
(3) x 6 y, y 6 z ⇒ x 6 z. [
推移的(transitive)]
上の
(2)
を除いた条件で定義されるものを擬順序という。また、半順序集合がさらに(4) ∀ x, y ∈ E
でx 6
又はy 6 x
の少なくとも一方が成立する。を満たすとき、全順序という。もしくは線形順序とも言われる。
例
2.1 P
を人間の集合E
上の親子関係とする。このP
は反射的ではない。対称的でもない。 推移的でも ない。親子関係を、親子を含めた先祖-子孫関係とすると推移的になる。そこで関係P
を拡張してa ≺ b
と なるのはa = b
またはa
がb
の祖先であるときとして定義するとこの関係≺
は半順序関係になる。例
2.2 (1)
正の整数の全体で、a| b
を「a
がb
割り切る」という関係とするとこれは半順序になる。a, b が互いにどちらの約数にもならないときは、この2元は互いに比較不能である。(2)
集合の包含関係も半順序になる。(P, 6 )
を半順序集合とする。以下では、P
が有限か局所有限、つまり任意の2元の間の鎖の長さが有限 になる、ことを仮定する。Def. 2.2 a 6 b
でかつa 6 c 6 b
ならば常にa = c
またはc = b
が成り立つとき、つまりa
とb
の”
あいだ に入る元がない”
とき、b
はa
をカバー(cover)
する、b
はa
の直後にある、a
はb
の直前にある、という。これを
x 6 · y
とも書く。有限半順序集合は、図式にして表すと理解しやすい。直前直後の関係にある元の間に線を引き、半順序関 係で大きい方のものを上のほうに書いて表した図を
Hassa
図という。x
0< x
1< . . . < x
k(x
i∈ P )
となる元の列を鎖(chain)
という。このときk
をこの鎖の長さという。また、その中の任意の2元が比較不能であるような集合
A ⊆ P
を反鎖(antichain)
という。この鎖の組と 反鎖のサイズに関して次の最大最小定理が成立することがよく知られており、これは組み合わせ理論の中のMax-min
型定理の代表的なもののひとつとである。定理
2.1 (Dilworth
の定理) 有限な半順序集合で、全集合を被覆するのに必要な鎖の数の最小値は、反鎖集合のサイズの最大値に等しい。
Def. 2.3
最小元O
をもつ半順序集合において、任意の元x
に対して最小元からx
への極大鎖がすべて同じ 長さを持つとき、Jordan-Dedekind鎖条件を満たすという。このときこの極大鎖の長さをx
の高さと言い、h(x)
と書く。特に最大元I
が存在するときは、その高さをP
の高さという。例
2.3
ある数a
がb
を割り切るときa 6 b
と書くとする。(
これは通常a | b
と書かれる。)
ある数K
とそ の約数の全体はこの順序関係に関して、半順序集合になる。また、整数全体の集合
Z
もこの関係に関して、半順序集合になる。これは無限集合の半順序集合の例で ある。(
これは束にもなる。)
例
2.4
正の整数n
の分割とは、足してn
になるような正の整数の組のことである。ひとつの分割π
を さらに細分することにより分割π
0 が得られるときπ
06 π
とするとこれは半順序関係になる。例えば、(1, 1, 1, 1, 1) 6 (2, 2, 1) 6 (3, 2) 6 (5)
となる。(これは束にもなる。)
2.2
束(lattice)
Def. 2.4 (P, 6 )
を半順序集合とする。その2元x, y
に対してx 6 z, y 6 z
となるz
を共通上界という。z 6 x, z 6 y
となるとき、共通下界という。共通上界の全体の中に最小元があるとき、これをこの2つの元の結び
(join)
と言いx ∨ y
と書く。共通下界の中に最大元が存在するとき、これを2つの元の交わり(meet)
と言い、
x ∧ y
と書く。任意のx, y
に対してその結びと交わりx ∨ y, x ∧ y
がともに存在するとき、この半 順序集合は束であるという。結び
∨
と 交わり∧
を2項演算子とみなして、この2項演算子がみたすべき公理系から束を定義するこ ともできる。このときもっとも基本的な次の関係がその二つを結びつける。a 6 b ⇐⇒ a ∧ b = a ⇐⇒ a ∨ b = b
Def. 2.5 L
が最小元O
を持つとき、O
をカバーする元を原子(atom)
と言う。Def. 2.6
束L
の部分集合M
が部分束であるとは、M
がもとの集合L
の∨
と∧
に関して閉じていること である。Def. 2.7
元x, y (x 6 y)
に対して、集合[x, y] = { z ∈ L | x 6 z 6 y }
を区間という。区間は、部分束の特 別な場合である。ここでは、簡単のため特に断らない限り「束はすべて有限束である」とする。
束の種類として、主なものとして次のようなものがある。
•
分配束(distributive lattices)
•
モジュラー束(modular lattices)
•
セミモジュラー束(semimodular lattices
•
幾何束•
ブール代数クラスの包含関係は次のようになっている。
セミモジュラー束
⊃
モジュラー束⊃
分配束⊃
ブール代数2.3
分配束Def. 2.8
束が次の分配律x ∧ (y ∨ z) = (x ∧ y) ∨ (x ∧ z) (2.1)
x ∨ (y ∧ z) = (x ∨ y) ∧ (x ∨ z) (2.2)
を満たすとき、分配束という。
分配束の部分束は分配束になる。分配束の直積は再び分配束になる。鎖は常に分配束である。サイズが
n
の 集合S
の部分集合の全体が包含関係に関してなす束は、Boole
代数B(n)
と呼ばれる。これは、長さ1の 鎖n
個の直積なので、特に分配束になる。さらに、集合の合併と交差に関して閉じている集合族は、Boole 代数の部分束になり、特に分配束になる。Def. 2.9 L
の元p 6 = O
が既約元(join-irreducible)
であるとは、p = a ∨ b = ⇒ p = a or p = b
補題2.1 p
が 分配束の既約元とする。すると、p 6 a
1∨ . . . ∨ a
k⇒ ∃ i p = a
i(Proof)
分配律よりp = p ∧ ( W
ki=1
a
i) = W
ki=1
(p ∧ a
i)
ゆえにあるi
でp = p ∧ a
i つまりp 6 a
i. ¤
原子は自明に既約元であり、{ p
1, p
2, . . . }
が原子の集合であればp
1< p
1∨ p
2< p
1∨ p
2∨ p
3< . . .
はどの2つの元も異なる上昇列になる。補題
2.2 L
を最小元O
をもつ分配束とする。O
以外の任意の元a
はjoin-ireducible
な元のある組p
1, p
2, . . . , p
k の結びa = p
1∨ p
2∨ . . . , ∨ p
k として一意に分解できる。これからP (a) = { p
1, . . . , p
k} , P (0) = ∅
とおく。(Proof) a
が分解できなればそれ自身が既約であり、分解をできる限り続ければ結局、既約元の結びに書けることは明らか。一意性を示す。
a = p
1∨ . . . ∨ p
k= q
1∨ ∧ ∨ q
mとする。任意の
i
でp
i6 q
1∨ . . . ∨ q
m だから補題2.1
よりあるj
でp
i6 q
j.
同様にあるh
でq
j6 p
h.
ゆ えにp
i= q
j.
これを繰り返せば{ p
i}
と{ q
j}
が集合として一致することが分かる。¤
分配束の元
a ∈ L
に対して定まるP (a)
は半順序集合P
の中の反鎖になっている。Def. 2.10 poset P
の部分集合I
がイデアルとは、x ∈ I
かつy 6 x = ⇒ y ∈ I.
イデアルの補集合をフィルターという。つまり、フィルターは双対束のイデアルのことである。ひとつの元 で生成されるイデアルを主イデアル
principal ideal
という。P
のイデアルの全体I(P )
は集合の合併と交わりについて閉じているので分配束になる。I(P)
の既約元(join-irreducible)
は、P
のprincipal ideal
になる。定理
2.2 (Birkhoff,
分配束の表現定理) L
を有限な分配束で、そのjoin-irreducible
元の全体をP
とする。このとき、つぎの同型射
φ : a 7→ I(a) = { p ∈ P | p 6 a } (a ∈ L)
のもとで同型L ∼ = I(P )
が成立する。逆に、Iは分配束になり、その既約元の全体は半順序集合として
P
に同型になる。特に、L
が有限なら ば、L ∼ = I
である。(Proof)
補題2.2
より各元a
はI(a)
中の既約元の結びとして一意に書けるので、φ
は単射である。I ∈ I(P )
としてb = sup I
とするとI ⊆ I(b).
しかし各p ∈ I(b)
に対してp 6 sup I
ゆえに補題2.1
よりp ∈ I.
結局P
の有限なイデアルはI(a)
のかたちになり、ゆえにφ
は全射でもある。L 中でa 6 b
ならばI(a) ⊆ I(b)
は明らか。 逆にI(a) ⊆ I(b)
ならばa = sup I(a) 6 sup I(b) = b.
ゆえにφ
は束の同型射になる。また、分 配束I(P)
の中の元、つまりP
のイデアル、は空集合であるか、主イデアルI(a) (a ∈ P)
である。¤
系2.1
有限分配束において、そのjoin-irreducible
元の全体の半順序集合P
とmeet-irreducible
元の全体 のなす半順序集合Q
は同型である。(Proof) ¤
定理
2.3
最小元0
を持つ分配束は、 あるBoole
代数の部分束に同型になっている。2.4
モジュラー束Def. 2.11
モジュラー束。任意のx, y, z
についてx 6 y
ならば(z ∨ x) ∧ y = (z ∧ y) ∨ x
区間[a ∧ b, a]
と[b, a ∨ b]
との間の写像を次のように定義する。φ
b: [a ∧ b, a] → [b, a ∨ b], z 7→ z ∨ b
ψ
a: [b, a ∨ b] → [a ∧ b, a], z 7→ z ∧ a (2.3)
命題2.1
束L
がモジュラーであるための必要十分条件は、任意のa, b ∈ L
でφ
b, ψ
aが[a ∧ b, a]
と[b, a ∨ b]
の間の同型射になり、 かつ互いに逆写像になることである。
Def. 2.12
区間[a ∧ b, a]
と[b, a ∨ b]
は互いに転置であるという。区間I, J
に対して区間の列I = I
1, I
2, . . . , I
k= J
があって隣り合うどの二つも互いに転置になっているとき、I
とJ
は射影的であると いう。系
2.2
モジュラー束の中で、射影的な区間は互いに同型であり、かつこの逆も私立する。命題
2.2
束がモジュラー束であるための必要十分条件は、N
5に同型な部分束を含まないことである。命題
2.3
束が分配束であるための必要十分条件は、N
5またはM
5に同型な部分束を含まないことである。2.5
セミモジュラー束Def. 2.13
セミモジュラー束(semimodular lattice)。
a ∧ b < · a = ⇒ b < · a ∨ b
下半セミモジュラー束。b < · a ∨ b = ⇒ a ∧ b < · a
セミモジュラーかつ下半セミモジュラーであれば、モジュラーになり、かつその逆も成立する。
補題
2.3
セミモジュラー束は、Jordan-Dedekind
条件を満たす。定理
2.4 L
が最小元0
をもつ束とする。このとき、L
がセミモジュラーであれば、その階数関数r
は以下 を満たすし、その逆も成立する。r(x ∧ y) + r(x ∨ y) 6 r(x) + r(y)
また、
L
がモジュラーであるための必要十分条件は、上で常に等号が成立することである。例
2.5 (1)
束S
7= {∅ , { 1 } , { 2 } , { 1, 2 } , { 1, 3 } , { 2, 3 } , { 1, 2, 3 }}
はモジュラーでないセミモジュラー束の最 小のものである。モジュラー束がセミモジュラーになるための必要十分条件は、S
7 を区間(
部分束?)
として含まないことである。(2)
サイズが3
より大きい集合の分割束P (n) (n > 3)
はセミモジュラーだが、モジュラーにならない。Def. 2.14 2
S 上の写像σ
が以下を満たすとき、閉包作用素という。(1) A ⊆ σ(A),
(2) A ⊆ B = ⇒ σ(A) ⊆ σ(B), (3) σ(σ(A)) = σ(A).
A = σ(A)
のときA
を閉集合と呼ぶ。閉集合の全体は次の演算で束になる。A ∧ B = A ∩ B, A ∨ B = σ(A ∩ B)
さらに、
σ
が次のSteinitz
交換公理を満たせば、閉集合の全体はセミモジュラー束になる。p 6∈ σ(A), p ∈ σ(A ∪ q) = ⇒ q ∈ σ(A ∪ p)
例2.6
このような閉包作用素から与えられるセミモジュラー束として、(1) division ring
上のベクトル空間V
上でA ⊆ V
に対してA
の張る線形部分空間を< A >
とすれば、これは
Steinitz
の交換公理を満たす閉包作用素である。ゆえに、この閉集合の全体、つまりV
の線形部分空間の全体はセミモジュラー束になると分かるが、さらに階数関数がモジュラー等式を満たすの で、モジュラー束になっている。
(2)
体F
が体K
の拡大体であるとき、各A ⊆ F
に対してK
上A
に代数的に従属な元の全体を加える 操作は、上の閉包作用素の交換公理をみたす。Def. 2.15
束L
の任意の元a ∈ L
がa
以下のatom
の全体のjoin
に同じになるとき、L はatomic
又はpoint lattice
と呼ばれる。例
2.7
上の例のような閉包作用素で定義される束はpoint lattice
になる。つまり、次で述べる幾何束になる。2.6
幾何束Def. 2.16 atomic
なセミモジュラー束で無限長の鎖を含まないものを、幾何束(geometric lattice)
という。命題
2.4
マトロイドの閉集合(flat, closed set)
の全体は幾何束をなす。Def. 2.17
射影平面又は射影幾何とは、集合P
とその部分集合の族G
で以下を満たすもののこと。Pの元は点、
G
の元は直線と呼ばれる。(i)
どの2つの点に対してもそれらを含む直線がちょうどひとつある。(ii)
点P, Q, R
が同一直線上になく三角形をなすととする。ある直線L
がその3辺の直線の内2本と交われば、残りの1本とも交わる。
(iii)
書く直線は互いに異なる点を少なくとも2つ持つ。(iv) P
の次元は有限である。この
(P, G)
を射影空間という。特に次元が2の射影空間は、射影平面と呼ばれる。Def. 2.18 division ring K
上のn-
次元ベクトル空間V (n, K )
を考える。V
の階数1の部分空間を点、階数 2の部分空間を直線とする射影空間を、次元n − 1
の射影幾何学P G(n − 1, K )
と呼ぶ。命題
2.5
射影空間(P, G)
の部分空間全体L(P, G)
はモジュラーな幾何束になる。逆に、モジュラーな幾何束は射影空間で構成できる。
定理
2.5 (Birkhoff )
モジュラー幾何束は、射影空間の束L(P, G)
の直積になる。定理
2.6
分配的な幾何束はBoole
代数にほかならない。Def. 2.19
相補束。束が0, 1
を持ち、任意の元a
に対してその補a’
が存在してa ∧ a
0= 0, a ∨ a
0= 1
と なるとき、相補束であるという。またその中の任意の区間が相補束になるとき、相対相補束という。命題
2.6
有限なセミモジュラー束が幾何束であるための必要十分条件は、それが相対相補束であることで ある。3 グラフ理論 : 諸定義、平面グラフ
3.1
グラフとは• Def.
有向グラフG = (V, E)
とは:V
は有限集合、V の元は点と呼ばれる。E⊆ V × V
は辺集合 と呼ばれる。各辺e = (u, v) ∈ E
に対してu
は始点、v
は終点という。有向グラフの辺集合
E
は点集合V
上の関係にほかならない。• Def.
無向グラフとは:G=(V, E)で、Vは点集合と呼ばれる有限集合、Eは辺の集合。ここで辺とはV
の2点からなる集合{ u, v }
のことである。•
グラフと呼ぶゆえんは、点を描いてそれを向きのついた辺で結ぶという幾何学的イメージを使うから。この観点からはグラフは関係の幾何学的表現とみなせる。このほかにトポロジーでの1次元としての グラフ、平面・局面上に実現されたグラフなど。
•
グラフで表現できるシステムシステム 点 点
i
とj
を結ぶ辺(i, j)
の意味電気回路 端子 端子と端子を結ぶ素子
道路網、鉄道網 都市、駅 都市を結ぶ道路、駅を結ぶ路線 ガス、水道などの供給網 源流点、分岐点、供給点 パイプラインで結ばれた点
ひとつの分子 構成原子 原子間の化学結合
ゲーム コマの配置 配置
i
からj
へ1手で到達できるとき会社組織 社員
i
がj
の上級管理者である国家経済 財とサービス
i
がj
の生産に必要である計算機プログラム 命令
(実行文) i
の実行の後にすぐj
の実行ができるとき 階層的ファイルシステム ディレクトリ、ファイル ディレクトリi
がj
の親ディレクトリ 凸多面体 頂点 頂点i, j
が隣接しているとき斉次方程式 変数 変数
j
を定める方程式中にi
が独立変数として表れる3.2
グラフの基本的な諸概念• G = (V, E)
が単純無向グラフであるとき、その補グラフG = (V, E
0)
とは同じ点集合上のグラフでuv ∈ E
0⇔ uv 6∈ E
で辺が定まる無向グラフである。自明に補グラフの補グラフはもとのグラフに一致 する。•
部分グラフ、誘導部分グラフ:•
セルフループ、並列辺、単純グラフ:•
特殊なグラフのクラス:完全グラフK
n、完全2部グラフK
m,n•
点の次数、正則グラフ:例 正多面体の頂点グラフは正則グラフ。•
道(
路、path)
:(u
0, e
1, u
1, e
2, . . . u
n−1, en, u
n)
となる点と辺の列で、各i
でe
i= { u
i−1, u
i} ∈ E(G)
となりかつ同じ点を重複して含まないもののこと。•
閉路(circuit)
:始点と終点が一致する道のこと。•
点集合V
のふたつの非空集合への分割(V
1, V
2)
をカットという。カットの異なる点集合を結ぶ辺の全 体c(V
1, V
2) = { e = uv | u ∈ V
1, v ∈ V
2}
が非空であるときこれをカットセットと呼ぶ。•
グラフが連結であるとは:任意の2点についてそれを結ぶ道がある。•
グラフの連結成分、孤立点:•
木 森とは:•
グラフの木、グラフの全域木、全域森:全域森のサイズ
=
点集合のサイズ−
連結成分の数•
2部グラフとは:点集合V (G)
が2つの非空集合V
1, V
2 に分割されて、同じ成分V
i に含まれるどの 2つの点の間に辺が存在しないこと。このとき2部グラフである
⇔
奇数長の閉路を持たない⇔
2彩色可能•
オイラー路、オイラー閉路とは:グラフにオイラー路、オイラー閉路が存在するための必要十分条件:
•
ハミルトン路、ハミルトン閉路とは:ハミルトングラフ:ハミルトン閉路の存在するグラフ 例 ハミルトン閉路の存在する例、存在しない例 演習
3.1
次の問に答えよ。(1)
単純グラフでmin { deg(v) : v ∈ V } > k
であれば、長さk
以上の道が存在することを示せ。(2)
連結グラフに最大長の道が二つあれば、それらは少なくとも1点で交わることを示せ。(3)
グラフG
の直径とは、その中の2点の距離の最大値を言う。すると、次が成立することを示せ。G
の直径> 3 ⇐⇒ G
の直径< 3
(4)
連結グラフG
がm
本の辺を持つとき、各点を一度ずつ以上通る長さ2m
以下の閉路が存在すること を示せ。(5) ( Minty
のぬり分け定理) G
を有向グラフ、(s, t)
をその辺とする。辺(s, t)
を黄色にぬり、そのほか の辺を緑、赤、黄色に任意に彩色したとすると次のいずれか一方そして一方だけが必ず成立すること を示せ。a)
黄色辺、緑色辺からなり辺(s, t)
を含む有向閉路があって、その閉路の上ではすべての黄色辺が 同じ向きに並んでいる。b)
黄色辺、赤色辺からなり辺(s, t)
を含むカットセットがあって、そのカットセットの上で黄色の 辺はすべて同じ向きになっている。(6) G
を有向グラフとする。M
をその辺—
点接続行列、N
を点—
点隣接行列とすると、以下が成立するこ とを示せ。M · M
T= diag(d(u
1), d(u
2), . . . , d(u
n)) − N
ここで、diag(d(u
1), . . . , d(u
n))
は各点の次数を対角成分にもつ対角行列である。3.3
基本カットセット行列、基本サーキット行列Def. 3.1 G = (V, E )
を連結な有向グラフとする。向きを定めてある閉路C ⊆ E
に対して以下で定まるベ クトルを、その向きのついた特徴ベクトルと呼ぶ。ξ(C) ∈ R
E, ξ(C)
e=
⎧ ⎪
⎨
⎪ ⎩
1 e
が順向きにC
に含まれる− 1 e
が逆向きでC
に含まれる0
それ以外カット
(V
1, V
2)
に伴うカットセットD
に対してその向きのついた特徴ベクトルも以下のように同様に定義 される。η(D) ∈ R
E, η(D)
f=
⎧ ⎪
⎨
⎪ ⎩
1 f = uv, u ∈ V
1, v ∈ V
2− 1 f = uv, u ∈ V
1, v ∈ V
20
それ以外Def. 3.2 G
のすべてのカットセットの向きのついた特徴ベクトル全体を行ベクトルとして持つ行列をP
allと書き、
G
のカットセット行列と呼ぶことにする。サーキットの向きづけられた特徴ベクトルの全体を行ベ クトルとして持つ行列を、Qall と書きG
のサーキット行列と呼ぶ。G
の全域木T ⊆ E
に関して定義される(
基本)
閉路の向きのついた特徴ベクトルの全体を行ベクトルと して持つ行列をQ
T をT
に対する基本サーキット行列という。補木T ˜ = E \ T
に対する基本カットセット の向きのついた特徴ベクトル全体のなす行列をP
T˜ と書き、基本カットセット行列と呼ぶ。補題
3.1
全域木T
とその補木T ˜ = E \ T
に対して、T ˜
に対する基本カットセット行列がP
T˜=
⎡
⎢ ⎢
⎣ 1
. .. N
1
⎤
⎥ ⎥
⎦
であるとき、
T
に関する基本サーキット行列は次になる。Q
T=
⎡
⎢ ⎢
⎣
1
−
tN . ..
1
⎤
⎥ ⎥
⎦
任意のサーキットベクトル
ξ(C)
とカットセットベクトルη(D)
に対し< ξ(C), η(D) >= 0
だからQ
TtP
T˜= 0, Q
alltP
all= 0
また自明にrank(P
T˜) = | T | , rank(Q
T) = | E \ T |
n = | T | + | E \ T |
だから、PT˜ の行ベクトルの張る空間とQ
T の行ベクトルの張る空間はR
E 中で互いに直 行補空間になる。特にP
all の行の張る空間はP
T˜ の行空間に、Q
all の行ベクトルの張る空間はQ
T の行空 間に一致する。基本カットセット行列