11_22

組合せ最適化 第1,2章
M2
酒井 隆行
第1章 はじめに
様々な実際的な問題
抽象的な最適化問題
第1章 はじめに
様々な実際的な問題
抽象的な最適化問題
例えば…
第1章 はじめに
最適化問題の例1
なるべく早く、ドリルで板の複数個の位置に穴をあけたい
(移動は等速)
問題1.1 ドリル穴あけ問題(Drilling Problem)
インスタンス: 平面上のn個の点 𝑝1 , … , 𝑝𝑛 ∈ 𝑅𝑛
タスク: 𝑛−1
𝑛=1 𝑑 𝑝𝜋 𝑖 , 𝑝𝜋 𝑖+1 が最小となるような順列
𝜋: 1, … , 𝑛 → 1, … , 𝑛
第1章 はじめに
最適化問題の例1
• 各従業員にジョブを割り振る
• 担当可能なジョブは従業員ごとに異なる
• 処理能力の差はない
• 同一のジョブに対して、同時に複数の従業員が担当可
• 従業員は複数のジョブを担当可(同時には不可)
早く終わらせたい
問題1.2 ジョブ割当問題(Job Assignment Probrem)
インスタンス: n個の非負実数𝑡1 , … , 𝑡𝑛 ∈ 𝑅+ (ジョブの処理時間)
m人の従業員と各ジョブ𝑖 ∈ 1, … , 𝑛 に対する担当可な従業員
の部分集合𝑆𝑖 ∈ 1, … , 𝑚
タスク: 各𝑖 = 1, … , 𝑛で 𝑗∈𝑆𝑖 𝑥𝑖,𝑗 = 𝑡𝑖 を満たす𝑥𝑖𝑗 ∈ 𝑅+ 𝑖 = 1, … , 𝑛, 𝑗 ∈ 𝑆𝑖 の
うちで、 max
𝑖:𝑗∈𝑆𝑖 𝑥𝑖𝑗 が最小となるような𝑥𝑖𝑗 ∈ 𝑅+ を求める
𝑗∈ 1,…,𝑚
1.1 列挙
問題1.1 ドリル穴あけ問題(Drilling Problem)
インスタンス: 平面上のn個の点 𝑝1 , … , 𝑝𝑛 ∈ 𝑅𝑛
タスク: 𝑛−1
𝑛=1 𝑑 𝑝𝜋 𝑖 , 𝑝𝜋 𝑖+1 が最小となるような順列
𝜋: 1, … , 𝑛 → 1, … , 𝑛
最適解を計算するアルゴリズムは…?
順列を全列挙すると最適解は見つかる
1.1 列挙
アルゴリズム1.1 パス列挙アルゴリズム
(Path Enumeration Algorithm)
入力: 自然数𝑛 ≥ 3と平面上のn個の点の集合 𝑝1 , … , 𝑝𝑛
出力: パスの長さ 𝑐𝑜𝑠𝑡 𝜋 ∗ ≔ 𝑛−1
が最小とな
𝑖=1 𝑑 𝑝𝜋∗ 𝑖 , 𝑝𝜋∗ 𝑖+1
る順列 𝜋 ∗ : 1, … , 𝑛 → 1, … , 𝑛
(疑似コード略)
順列を、辞書式順に小さいものから順に調べて、
costの最も小さいものを保存
O 𝑛2 𝑛! (解析は甘い)
もっと高速なアルゴリズムは…?
1.2 アルゴリズムの計算時間
アルゴリズムの入力 = 数のリスト
数がすべて整数ならば、2進数表現でコード化可能
有理数は分母と分子を別々にコード化
有理数データからなるインスタンスxに対して、
入力サイズ𝑠𝑖𝑧𝑒 𝑥 = すべての数の2進数表現に必要なビット数
1.2 アルゴリズムの計算時間
定義1.3
A: 集合Xの要素を入力として受け取るアルゴリズム
𝑓: 𝑁 → 𝑅+
ある定数𝛼 > 0が存在して、任意の入力𝑥 ∈ 𝑋に対して Aがその計算を高々
𝛼𝑓 𝑠𝑖𝑧𝑒 𝑥 回の初等的操作で終了するならば
Aは𝑶 𝒇 時間で走る or Aの計算時間は𝑶 𝒇 である という
1.2 アルゴリズムの計算時間
定義1.4
有理数入力に対するアルゴリズム
ある整数kが存在して、入力サイズnのどの入力に対しても、
𝑂 𝑛𝑘 時間で走り、計算の途中で生じる数もすべて𝑂 𝑛𝑘 ビットで記憶
で
きるとき、多項式時間で走るという
任意の入力に対するアルゴリズム
ある整数kが存在して、n個の数のどの入力に対しても𝑂 𝑛𝑘 時
間
で走り、有理数入力に対しても多項式時間で走るとき、強多項式
時間で走るという
k=1のときは線形時間アルゴリズムという
1.3 線形の最適化問題
問題1.2 ジョブ割当問題(Job Assignment Probrem)
インスタンス: n個の非負実数𝑡1 , … , 𝑡𝑛 ∈ 𝑅+ (ジョブの処理時間)
m人の従業員と各ジョブ𝑖 ∈ 1, … , 𝑛 に対する担当可な従業員
の部分集合𝑆𝑖 ∈ 1, … , 𝑚
タスク: 各𝑖 = 1, … , 𝑛で 𝑗∈𝑆𝑖 𝑥𝑖,𝑗 = 𝑡𝑖 を満たす𝑥𝑖𝑗 ∈ 𝑅+ 𝑖 = 1, … , 𝑛, 𝑗 ∈ 𝑆𝑖 の
うちで、 max
𝑖:𝑗∈𝑆𝑖 𝑥𝑖𝑗 が最小となるような𝑥𝑖𝑗 ∈ 𝑅+ を求める
𝑗∈ 1,…,𝑚
ジョブが完了する時刻Tを用いて、線形計画問題として定式化可能
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒
𝑠. 𝑡
𝑇
𝑗∈𝑆𝑖 𝑥𝑖𝑗
=𝑡
(𝑖 ∈ 1, … , 𝑛 )
𝑥𝑖𝑗 ≥ 0
(𝑖 ∈ 1, … , 𝑛 ,𝑗 ∈ 𝑆𝑖 )
𝑖:𝑗∈𝑆𝑖 𝑥𝑖𝑗 ≤ 𝑇 (𝑖 ∈ 1, … , 𝑛 )
1.3 線形の最適化問題
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒
𝑠. 𝑡
𝑇
𝑗∈𝑆𝑖 𝑥𝑖𝑗
=𝑡
(𝑖 ∈ 1, … , 𝑛 )
𝑥𝑖𝑗 ≥ 0
(𝑖 ∈ 1, … , 𝑛 ,𝑗 ∈ 𝑆𝑖 )
𝑖:𝑗∈𝑆𝑖 𝑥𝑖𝑗 ≤ 𝑇 (𝑖 ∈ 1, … , 𝑛 )
すべての実行可能解の集合は多面体と呼ばれ、凸であることがわかる。
最適解が存在するならば、必ず多面体の頂点のいずれかが最適解となる
列挙よりもいい方法がある(後の章で)
集合𝑆𝑖 をグラフでモデル化すると…
各ジョブiと各従業員jに対して頂点を考える
ジョブと、そのジョブを担当できる従業員を結ぶ
多くの組合せ最適化問題はグラフ理論を用いて定式化される
1.3 線形の最適化問題
便宜上、
どのジョブも処理時間は1時間
1時間でジョブを全部完了できるか
という問題を考えると…
ジョブ
従業員
すべてのiとjに対して 0 ≤ 𝑥𝑖𝑗 ≤ 1
各𝑖 = 1, … , 𝑛に対して
𝑗∈𝑆𝑖 𝑥𝑖𝑗 = 1
各j = 1, … , 𝑚 に対して
𝑖:𝑗∈𝑆𝑖 𝑥𝑖𝑗 ≤ 1
となるような 𝑥𝑖𝑗 を求める問題になる
解が存在するならば整数解も存在(すべてのiとjに対して𝑥𝑖𝑗 = 0 𝑜𝑟 1)
よって
各ジョブを1人の従業員に割り当て、かつどの従業員も2個以上ジョブが割り当て
られないように割り当てることと等価
グラフ的には、すべてのジョブをカバーするマッチングを求めればよい
1.4 ソーティング
問題1.1 ドリル穴あけ問題(Drilling Problem)
インスタンス: 平面上のn個の点 𝑝1 , … , 𝑝𝑛 ∈ 𝑅𝑛
タスク: 𝑛−1
𝑛=1 𝑑 𝑝𝜋 𝑖 , 𝑝𝜋 𝑖+1 が最小となるような順列
𝜋: 1, … , 𝑛 → 1, … , 𝑛
もし、直線上にn個の点があったら…
端から順に穴をあければよい
つまり…
与えられたn個の点を座標順に並び替えればよい
1.4 ソーティング
マージソートアルゴリズム
アルゴリズム1.2 マージソートアルゴリズム
(Merge-Sort Algorithm)
入力:
出力:
n個の実数のリスト𝑎1 , … , 𝑎𝑛
すべての𝑖 = 1, … , 𝑛 − 1で𝑎𝜋
置換𝜋: 1, … , 𝑛 → 1, … , 𝑛
𝑖
≤ 𝑎𝜋
𝑖+1
を満たす
8,2,1,5,6,4,3,7
8,2,1,5
6,4,3,7
分割
8,2
8
1,5
2
1
6,4
5
6
3,7
4
3
7
1.4 ソーティング
マージソートアルゴリズム
アルゴリズム1.2 マージソートアルゴリズム
(Merge-Sort Algorithm)
入力:
出力:
n個の実数のリスト𝑎1 , … , 𝑎𝑛
すべての𝑖 = 1, … , 𝑛 − 1で𝑎𝜋
置換𝜋: 1, … , 𝑛 → 1, … , 𝑛
𝑖
≤ 𝑎𝜋
𝑖+1
を満たす
8,2,1,5,6,4,3,7
6,4,3,7
2,8
1,5
4,6
3,7
統治
8
2
1
5
6
4
3
7
1.4 ソーティング
マージソートアルゴリズム
アルゴリズム1.2 マージソートアルゴリズム
(Merge-Sort Algorithm)
入力:
出力:
n個の実数のリスト𝑎1 , … , 𝑎𝑛
すべての𝑖 = 1, … , 𝑛 − 1で𝑎𝜋
置換𝜋: 1, … , 𝑛 → 1, … , 𝑛
𝑖
≤ 𝑎𝜋
𝑖+1
を満たす
8,2,1,5,6,4,3,7
1
6,4,3,7
2,8
5
4,6
3,7
統治
8
2
1
5
6
4
3
7
1.4 ソーティング
マージソートアルゴリズム
アルゴリズム1.2 マージソートアルゴリズム
(Merge-Sort Algorithm)
入力:
出力:
n個の実数のリスト𝑎1 , … , 𝑎𝑛
すべての𝑖 = 1, … , 𝑛 − 1で𝑎𝜋
置換𝜋: 1, … , 𝑛 → 1, … , 𝑛
𝑖
≤ 𝑎𝜋
𝑖+1
を満たす
8,2,1,5,6,4,3,7
1,2
6,4,3,7
8
5
4,6
3,7
統治
8
2
1
5
6
4
3
7
1.4 ソーティング
マージソートアルゴリズム
アルゴリズム1.2 マージソートアルゴリズム
(Merge-Sort Algorithm)
入力:
出力:
n個の実数のリスト𝑎1 , … , 𝑎𝑛
すべての𝑖 = 1, … , 𝑛 − 1で𝑎𝜋
置換𝜋: 1, … , 𝑛 → 1, … , 𝑛
𝑖
≤ 𝑎𝜋
𝑖+1
を満たす
8,2,1,5,6,4,3,7
1,2,5
6,4,3,7
8
4,6
3,7
統治
8
2
1
5
6
4
3
7
1.4 ソーティング
マージソートアルゴリズム
アルゴリズム1.2 マージソートアルゴリズム
(Merge-Sort Algorithm)
入力:
出力:
n個の実数のリスト𝑎1 , … , 𝑎𝑛
すべての𝑖 = 1, … , 𝑛 − 1で𝑎𝜋
置換𝜋: 1, … , 𝑛 → 1, … , 𝑛
𝑖
≤ 𝑎𝜋
𝑖+1
を満たす
8,2,1,5,6,4,3,7
1,2,5,8
6,4,3,7
4,6
計算時間は𝑂 𝑛𝑙𝑜𝑔𝑛
3,7
統治
8
2
1
5
6
4
3
7
第2章 グラフ
2.1
2.2
2.3
2.4
2.5
2.6
基礎的な定義
木、閉路、カット
連結性
オイラーグラフと2部グラフ
平面性
平面的双対性
2.1 基礎的な定義
• 無向グラフ 𝐺 = 𝑉, 𝐸, Ψ
– Ψ: 𝐸 → 𝑋 ⊆ 𝑉: 𝑋 = 2
• 有向グラフ 𝐺 = 𝑉, 𝐸, Ψ
– Ψ: 𝐸 →
𝑣, 𝑤 ∈ 𝑉 × 𝑉: 𝑣 ≠ 𝑤
Vの要素: 頂点
Eの要素: 辺
2.1 基礎的な定義
• 無向グラフ 𝐺 = 𝑉, 𝐸, Ψ
– Ψ: 𝐸 → 𝑋 ⊆ 𝑉: 𝑋 = 2
• 有向グラフ 𝐺 = 𝑉, 𝐸, Ψ
– Ψ: 𝐸 →
𝑣, 𝑤 ∈ 𝑉 × 𝑉: 𝑣 ≠ 𝑤
Ψ 𝑒 = Ψ 𝑒′ となる2つの辺は並列である
並列辺をもたないグラフは単純である
2.1 基礎的な定義
• 無向グラフ 𝐺 = 𝑉, 𝐸, Ψ
– Ψ: 𝐸 → 𝑋 ⊆ 𝑉: 𝑋 = 2
• 有向グラフ 𝐺 = 𝑉, 𝐸, Ψ
– Ψ: 𝐸 →
𝑣, 𝑤 ∈ 𝑉 × 𝑉: 𝑣 ≠ 𝑤
単純グラフについては𝐺 = 𝑉 𝐺 , 𝐸 𝐺
2.1 基礎的な定義
• 有向グラフGに対する無向基礎グラフG’
辺の向きをなくす
G
G’
2.1 基礎的な定義
• 𝐺 = 𝑉 𝐺 , 𝐸 𝐺 に対する部分グラフ𝐻 = 𝑉 𝐻 , 𝐸 𝐻
• 𝑉 𝐻 ⊆ 𝑉 𝐺 かつ𝐸 𝐻 ⊆ 𝐸 𝐺
1
1
2
4
2
4
3
G
H
• 𝐸 𝐻 = 𝑥, 𝑦 ∈ 𝐸 𝐺 : 𝑥, 𝑦 ∈ 𝑉 𝐻 を満たすときHはGの誘導部分
グラフ(𝐻 = 𝐺 𝑉 𝐻 と書くこともある)
– 上のHは誘導部分グラフではない
2.1 基礎的な定義
•
𝑉 𝐻 = 𝑉 𝐺 のとき、Hは全点であるという
1
1
2
4
2
4
3
G
3
H
•
𝑣 ∈ 𝑉 𝐺 のとき、 𝑉 𝐺 ∖ 𝑣 で誘導されるGの部分グラフ
を𝐺−𝑣 と表記する
•
𝑒 ∈ 𝐸 𝐺 のとき、 𝐺−𝑒 を𝐺−𝑒 ≔ 𝑉 𝐺 , 𝐸 𝐺 ∖ 𝑒 と表記
する
2.1 基礎的な定義
• 2つのグラフG,Hに対して、G+Hは
–𝑉 𝐺+𝐻 =𝑉 𝐺 ∪𝑉 𝐻
– 𝐸 𝐺 + 𝐻 は𝐸 𝐺 と𝐸 𝐻 の直和
1
1
1
2
4
3
+
2
5
=
2
4
3
5
2.1 基礎的な定義
• 2つの無向グラフGとHに対して、(有向も同様)
– 全単射Φ𝑉 : 𝑉 𝐺 → 𝑉 𝐻 とΦ𝐸 : 𝐸 𝐺 → 𝐸 𝐻 が
存在して、すべての 𝑣, 𝑤 ∈ 𝐸 𝐺 で
Φ𝐸 𝑣, 𝑤 = Φ𝑉 𝑣, 𝑤 , Φ𝑉 𝑣, 𝑤
となるとき、GとHは同形であるという
1
2
3
6
5
4
1→a
2→b
3→f
4→d
5→e
6→c
a
b
f
c
e
d
2.1 基礎的な定義
• 無向グラフGと𝑋 ⊆ 𝑉 𝐺 に対して、Xを縮約する
とは…
– Xのすべての点とG[X]のすべての辺を削除
– 新しい点xを追加
– 𝑣 ∈ 𝑋, 𝑤 ∉ 𝑋となる各辺 𝑣, 𝑤 を辺 𝑥, 𝑤 で置き換え
1
x
2
2
4
3
X={1,4}
3
G/Xと書くことも
2.1 基礎的な定義
• グラフGと𝑋, 𝑌 ⊆ 𝑉 𝐺 に対して、
– 無向グラフ𝐸 𝑋, 𝑌 ≔
1
𝑥, 𝑦 ∈ 𝐸 𝐺 : 𝑥 ∈ 𝑋 ∖
2
Y
X
4
3
𝐸 𝑋, 𝑌 = 1,2
2.1 基礎的な定義
X
無向グラフGと𝑋 ⊆ 𝑉 𝐺 に対して、
𝛿 𝑋 ≔ 𝐸 𝑋, 𝑉 𝐺 ∖ 𝑋
として、
Γ 𝑋 ≔ 𝑣 ∈ 𝑉 𝐺 ∖ 𝑋: 𝐸 𝑋, 𝑣
をXの隣接頂点集合という
≠𝜙
2.1 基礎的な定義
有向グラフGと𝑋 ⊆ 𝑉 𝐺 に対して、
𝛿 + 𝑋 ≔ 𝐸 + 𝑋, 𝑉 𝐺 ∖ 𝑋
𝛿− 𝑋 ≔ 𝛿+ 𝑉 𝐺 ∖ 𝑋
𝛿 𝑋 ≔ 𝛿+ 𝑋 ⋃ 𝛿− 𝑋
と定義する
𝛿 + 𝑣 : 出次数
𝛿 − 𝑣 : 入次数
2.1 基礎的な定義
• k-正則グラフ
– すべての点の次数がkであるグラフ
2.1 基礎的な定義
• グラフの次数に関する性質
– すべての点の次数の和は枝の数の倍
• 奇数次数の頂点の数は偶数
– 入次数の和=出次数の和
2.1 基礎的な定義
補題2.1(1)
有向グラフGと任意の2つの集合𝑋, 𝑌 ⊆ 𝑉 𝐺 に対して、
以下の(a),(b)が成立
(a)
𝛿+ 𝑋 + 𝛿+ 𝑌
= 𝛿 + 𝑋⋂𝑌 + 𝛿 + 𝑋⋃𝑌 + 𝐸 + 𝑋, 𝑌 + 𝐸 + 𝑌, 𝑋
(b)
𝛿− 𝑋 + 𝛿− 𝑌
= 𝛿 − 𝑋⋂𝑌 + 𝛿 − 𝑋⋃𝑌 + 𝐸 + 𝑋, 𝑌 + 𝐸 + 𝑌, 𝑋
証明
対称性より片方だけ証明すればよい。(a)を証明する
2.1 基礎的な定義
補題2.1(1)
有向グラフGと任意の2つの集合𝑋, 𝑌 ⊆ 𝑉 𝐺 に対して、
以下の(a),(b)が成立
(a)
𝛿+ 𝑋 + 𝛿+ 𝑌
証明
𝑍=𝑉
𝛿+ 𝑋
= 𝐸+
= 𝐸+
= 𝛿+
= 𝛿 + 𝑋⋂𝑌 + 𝛿 + 𝑋⋃𝑌 + 𝐸 + 𝑋, 𝑌 + 𝐸 + 𝑌, 𝑋
𝐺 ∖ 𝑋⋃𝑌 とする
+ 𝛿+ 𝑌
𝑋, 𝑍 + 𝐸 + 𝑋, 𝑌 ∖ 𝑋 + 𝐸 + 𝑌, 𝑍 + 𝐸 + 𝑌, 𝑋 ∖ 𝑌
𝑋 ∪ 𝑌, 𝑍 + 𝐸 + 𝑋 ∩ 𝑌, 𝑍 + 𝐸 + 𝑋, 𝑌 ∖ 𝑋 + 𝐸 + 𝑌, 𝑋 ∖ 𝑌
𝑋 ∪ 𝑌 + 𝛿 + 𝑋 ∩ 𝑌 + 𝐸 + 𝑋, 𝑌 + 𝐸 + 𝑌, 𝑋
証明
𝑍=𝑉
𝛿+ 𝑋
= 𝐸+
= 𝐸+
= 𝛿+
𝐺 ∖ 𝑋⋃𝑌 とする
+ 𝛿+ 𝑌
𝑋, 𝑍 + 𝐸 + 𝑋, 𝑌 ∖ 𝑋 + 𝐸 + 𝑌, 𝑍 + 𝐸 + 𝑌, 𝑋 ∖ 𝑌
𝑋 ∪ 𝑌, 𝑍 + 𝐸 + 𝑋 ∩ 𝑌, 𝑍 + 𝐸 + 𝑋, 𝑌 ∖ 𝑋 + 𝐸 + 𝑌, 𝑋 ∖ 𝑌
𝑋 ∪ 𝑌 + 𝛿 + 𝑋 ∩ 𝑌 + 𝐸 + 𝑋, 𝑌 + 𝐸 + 𝑌, 𝑋
X
Y
2.1 基礎的な定義
補題2.1(2)
無向グラフGと任意の2つの集合𝑋, 𝑌 ⊆ 𝑉 𝐺 に対して、
以下の(c),(d)が成立
(c)
𝛿 𝑋 +𝛿 𝑌
= 𝛿 𝑋⋂𝑌 + 𝛿 𝑋⋃𝑌 + 2 𝐸 𝑋, 𝑌
(d)
Γ 𝑋 +Γ 𝑌
≥ Γ 𝑋⋂𝑌 + Γ 𝑋⋃𝑌
証明
Γ 𝑋 +Γ 𝑌
= Γ 𝑋∪𝑌 + Γ 𝑋 ∩Γ 𝑌 + Γ 𝑋 ∩𝑌 + 𝑋∩Γ 𝑌
Γ 𝑋∩𝑌 ⊆Γ 𝑋 ∩Γ 𝑌
を用いると(d)は得られる
2.1 基礎的な定義
• 関数𝑓: 2𝑈 → 𝑅(U:有限集合、 2𝑈 :Uのべき集合)は
– すべての𝑋, 𝑌 ⊆ 𝑈で𝑓 𝑋 ∩ 𝑌 + 𝑓 𝑋 ∪ 𝑌 ≤ 𝑓 𝑋 + 𝑓 𝑌
ならば劣モジュラー
𝛿 + , 𝛿 − , 𝛿 , Γ が劣モジュラーである(補題2.1より)ことは
後で用いられる
2.1 基礎的な定義
• 完全グラフ: 任意の頂点間に枝が存在
• Gの補グラフH: 無向グラフGに対してG+Hが完全グラフとなる
ようなH
• Gのマッチング: 無向グラフGの頂点を共有しない辺の集合
• Gの点カバーS: 点集合𝑆 ⊆ 𝑉 𝐺 に対して、Gのどの辺も少な
くともSの1点と隣接
• Gの安定集合S: Sのどの2点もGで隣接していない
• GのクリークS: Sのどの2点もGで隣接
• Gの辺カバーF: 辺集合𝐹 ⊆ 𝐸 𝐺 に対して、Gのどの点も少な
くともFの1辺と接続
2.1 基礎的な定義
命題2.2
グラフGと𝑋 ⊆ 𝑉 𝐺 に対して、以下の命題(a)-(c)は互いに等価
である
(a) XはGの点カバーである
(b) 𝑉 𝐺 ∖ 𝑋はGの安定集合である
(c) 𝑉 𝐺 ∖ 𝑋はGの補グラフのクリークである
2.1 基礎的な定義
• 線グラフ
– 点集合𝐸 𝐺
– 辺集合𝐹 =
𝑒1 , 𝑒2 : 𝑒1 , 𝑒2 ∈ 𝐸 𝐺 , 𝑒1 ∩ 𝑒2 = 1
a
a
b
b
c
c
2.1 基礎的な定義
• 辺の重複を許すウォーク
3
c
2
d
b
4
1
e
f
a
7
5
g
6
同じ辺通らないものをウォーク
始点と終点が同じものを閉ウォーク
2.1 基礎的な定義
• パス
3
c
2
d
b
4
1
e
f
a
7
5
g
6
同じ頂点をとおらないものをパス
全点パスをハミルトンパス
2.1 基礎的な定義
• 閉路
3
c
2
d
b
4
1
e
f
a
7
5
g
6
閉ウォークで同じ頂点をとおらないものを閉路
全点閉路をハミルトン閉路
2.2 木、閉路、カット
• G: 無向グラフ
– 連結: Gに存在する任意の頂点間にパスが存在
する(そうでないとき非連結)
– Gの極大な連結部分グラフをGの連結成分
– 点集合Xで誘導される部分グラフが連結であると
き、Xは連結であるという
2.2 木、閉路、カット
• 関節点v: 𝐺−𝑣 の連結成分がGより多くなるよう
な点v
連結成分
連結成分
関節点
2.2 木、閉路、カット
• 橋e: 𝐺−𝑒 の連結成分がGより多くなるよう
な辺e
連結成分
連結成分
橋
2.2 木、閉路、カット
•
•
•
•
森: 閉路をもたない無向グラフ
木: 連結な森
葉: 木で次数1の点
スターグラフ: 葉でない点が高々1点である木
2.2 木、閉路、カット
命題2.3
(a)無向グラフGが連結であるとき、そしてそのときのみ、
すべての𝜙 ≠ 𝑋 ⊂ 𝑉 𝐺 に対して、𝛿 𝑋 ≠ 𝜙である
(b)Gを有向グラフとし、𝑟 ∈ 𝑉 𝐺 とする。
すべての点𝑣 ∈ 𝑉 𝐺 に対してr-v-パスが存在するとき、
そしてそのときのみ、 𝑟 ∈ 𝑋となるすべての𝑋 ⊂ 𝑉 𝐺 に
対して𝛿 + 𝑋 ≠ 𝜙である。
(a)だけ証明
2.2 木、閉路、カット
命題2.3
(a)無向グラフGが連結であるとき、そしてそのときのみ、
すべての𝜙 ≠ 𝑋 ⊂ 𝑉 𝐺 に対して、𝛿 𝑋 ≠ 𝜙である
If exist X s.t.𝛿 𝑋 = 𝜙…
r
v
r-v-パスは存在しない。 よって非連結
2.2 木、閉路、カット
命題2.3
(a)無向グラフGが連結であるとき、そしてそのときのみ、
すべての𝜙 ≠ 𝑋 ⊂ 𝑉 𝐺 に対して、𝛿 𝑋 ≠ 𝜙である
もし非連結ならば…あるr,vに対して、r-v-パスが存在しない
rから到達可能な点をRとすると、𝑟 ∈ 𝑅, 𝑣 ∉ 𝑅かつ𝛿 𝑅 = 𝜙
が得られる
定理2.4の証明
a⇒g
端点のパスが一意でなければ閉路が存在
よって
Gが木ならば任意の2点間に唯一のパスが存在
定理2.4の証明
g⇒e⇒dは命題2.3から得られる
d⇒fは自明である
f⇒b⇒c
n点m辺p個の連結成分からなる森
n=m+p
が成り立つことから得られる
定理2.4の証明
c⇒a
Gからk本取り除いても連結性を保てたとする。
得られたグラフG’はm=n-1-k本の辺をもつ
n=m+p=n-1-k+1より
k=0
a⇒g⇒e⇒d⇒f⇒b⇒c⇒aが言えた
有向木
• 有向グラフが連結=無向基礎グラフが連結
根
有向木
有向木ではない
定理2.5の証明
(a)⇒(b)と(c)⇒(d)は定理2.4から成り立つ
(b)⇒(c)
根以外の点の入次数は1より、任意のvに対し
てr-v-パスが得られる(vからrまでの唯一のパス
をたどれる)
(d)⇒(e) 命題2.3から成立
定理2.5の証明
(a)⇒(b)と(c)⇒(d)は定理2.4から成り立つ
(b)⇒(c)
根以外の点の入次数は1より、任意のvに対し
てr-v-パスが得られる(vからrまでの唯一のパス
をたどれる)
(d)⇒(e) 命題2.3から成立
定理2.5の証明
(e)⇒(f)
(e)の極小性からrの入次数は0
命題2.3よりすべてのvに対してr-v-パスが存在
あるvに対して2つのr-v-パスがあったとすると
eをとってもどの点もrから到達可能。矛盾
e
(f)⇒(g)⇒(a) 自明
カット
𝜙 ≠ 𝑋 ⊂ 𝑉 𝐺 を用いて𝛿 𝑋 と書ける辺集合
有向の場合は𝛿 + 𝑋
t
s
頂点sとtを分離するカットをs-t-カット
• 無向パス
• 無向閉路
• 無向カット
それぞれ、無向基礎グラフにおけるパス、閉路、
カット
補題2.6
Gを有向グラフとし、𝑒 ∈ 𝐸 𝐺 とする。eは黒で彩色され、残
りの各辺は赤、黒あるいは緑のいずれかで彩色されてい
るとする。このとき、以下の(a)あるいは(b)のいずれかが成
立し、両方同時に成立することはない。
(a) eを含み、赤と黒の辺だけからなる無向閉路で、黒い
辺はすべて同一の向きをもつようなものが存在する。
(b) eを含み、緑と黒の辺からなる無向カットで、黒い辺は
すべて同一の向きを持つようなものが存在する。
(a) eを含み、赤と黒の辺だけからなる無向閉路で、黒い辺は
すべて同一の向きをもつようなものが存在する。
(b) eを含み、緑と黒の辺からなる無向カットで、黒い辺はすべ
て同一の向きを持つようなものが存在する。
下のグラフは(a)を満たし、(b)を満たさない
e
yから黒い辺と赤い辺(赤い辺は向きを無視)をたどって到達で
きる点にラベル付け
xがラベル付けされたら(a)を満たす無向閉路を持つ
y
x
e
yから黒い辺と赤い辺(赤い辺は向きを無視)をたどって到達で
きる点にラベル付け
xがラベル付けされなければラベル付けされた頂点集合が(b)
を満たす無向カットを構成する
y
x
e
(a)を満たす無向閉路があるとしたら…
(a)を満たす無向閉路と(b)を満たす無向カットに共通する辺は
黒
y
x
e
有向グラフの強連結
有向グラフGは、すべての𝑠, 𝑡 ∈ 𝑉 𝐺 に対してsからtのパスとt
からsのパスがあるとき、強連結であるという。
有向グラフの極大な強連結部分グラフを強連結成分という。
系2.7
有向グラフGの各辺は、有向閉路あるいは有向カットに含まれ
る。さらに、以下の(a)-(c)は互いに連結である。
(a) Gは強連結である
(b) Gは有向カットを含まない
(c) Gは連結で、Gのどの辺も有向閉路に含まれる
系2.7
有向グラフGの各辺は、有向閉路あるいは有向カットに含まれ
る。さらに、以下の(a)-(c)は互いに連結である。
(a) Gは強連結である
(b) Gは有向カットを含まない
(c) Gは連結で、Gのどの辺も有向閉路に含まれる
命題2.3
(b)Gを有向グラフとし、𝑟 ∈ 𝑉 𝐺 とする。すべての点
𝑣 ∈ 𝑉 𝐺 に対してr-v-パスが存在するとき、そしてその
ときのみ、 𝑟 ∈ 𝑋となるすべて𝑋 ⊂ 𝑉 𝐺 に対して
𝛿 + 𝑋 ≠ 𝜙である。
系2.7(補題2.6の適用)
有向グラフGの各辺は、有向閉路あるいは有向カットに含まれ
る。さらに、以下の(a)-(c)は互いに連結である。
(a) Gは強連結である
(b) Gは有向カットを含まない
(c) Gは連結で、Gのどの辺も有向閉路に含まれる
系2.7
有向グラフGの各辺は、有向閉路あるいは有向カットに含まれ
る。さらに、以下の(a)-(c)は互いに連結である。
(a) Gは強連結である
(b) Gは有向カットを含まない
(c) Gは連結で、Gのどの辺も有向閉路に含まれる
𝑟 ∈ 𝑉 𝐺 :任意の点
目標:各𝑣 ∈ 𝑉 𝐺 に対してr-v-パスが存在
正しくないと仮定
X
r
定義2.8
トポロジカル順序
Gを有向グラフとする。任意の辺 𝑣𝑖 , 𝑣𝑗 ∈ 𝐸 𝐺 に対して、i<jが
成立するような点集合𝑉 𝐺 = 𝑣1 , … , 𝑣𝑛 の順序をGのトポロジ
カル順序という。
1
3
2
4
5
6
命題2.9
有向グラフがトポロジカル順序を持つ
⇔
無閉路(有向閉路を持たない)である
証明(⇒)
対偶は自明
(⇐)辺数に関する帰納法
辺𝑒 ∈ 𝐸 𝐺 を持つものとする。eはある有向カットに属する
e
帰納法の仮定から、それぞれの頂点集合から誘導されるグラフにはトポロジカル
順序が存在
サイクル空間とコサイクル空間
• 有向グラフGの各無向閉路にベクトルを対応させ
る
– 無向閉路を形成する辺に1 or -1(符号は向きに対応)
– それ以外の辺に0
𝐶1
1
2
3
𝜁 𝐶1 =
4
5
6
7
8
1
−1
1
0
0
0
0
0
サイクル空間とコサイクル空間
• 有向グラフGの各無向閉路にベクトルを対応させ
る
– 無向閉路を形成する辺に1 or -1(符号は向きに対応)
– それ以外の辺に0
– 無向閉路に対応するベクトルの集合で生成されるベ
クトル空間の部分空間をサイクル空間という
サイクル空間とコサイクル空間
• 有向グラフGの各無向カットにベクトルを対応さ
せる
– 無向カットを形成する辺に1 or -1(符号は向きに対応)
– それ以外の辺に0
1
2
𝐷1
3
𝜁 𝐷1 =
4
5
6
7
8
0
0
0
1
1
−1
1
0
サイクル空間とコサイクル空間
• 有向グラフGの各無向カットにベクトルを対応さ
せる
– 無向カットを形成する辺に1 or -1(符号は向きに対応)
– それ以外の辺に0
– 無向カットに対応するベクトルの集合で生成されるベ
クトル空間の部分空間をコサイクル空間という
命題2.10
有向グラフGのサイクル空間とコサイクル空間は直交する
D
C
任意の閉路Cと任意の無向カットDに
対して、𝜁 𝐶 と𝜁 𝐷 のスカラー積が0
になることを示す
命題2.10
有向グラフGのサイクル空間とコサイクル空間は直交する
D
C
考慮するべき辺は共通する辺のみ
(他の辺に対応するベクトルの成分
はC,Dのどちらかにおいて0となる)
命題2.10
有向グラフGのサイクル空間とコサイクル空間は直交する
D
C
無向カットを有向カットとしてもスカ
ラー積の値に影響を与えない
(有向カットの非零成分の符号はす
べて一致すると考えても一般性を失
わない)
命題2.10
有向グラフGのサイクル空間とコサイクル空間は直交する
D
C
閉路を考えると、
Dに入る辺の数=Dから出る辺の数
つまり、ベクトルにおいて、
1となる成分の数=0となる成分の数
サイクル基底 コサイクル基底
無向閉路の集合は、対応するベクトルの集合
がサイクル空間の基底となるとき、サイクル基
底と呼ばれる
無向カットの集合は、対応するベクトルの集合
がコサイクル空間の基底となるとき、コサイクル
基底と呼ばれる。
基本閉路と基本カット
• Gをグラフ、Tを無向閉路を含まないGの極大
な部分グラフとする
– 各𝑒 ∈ 𝐸 𝐺 ∖ 𝐸 𝑇 に対して、T+eに含まれる唯一
の無向閉路をTに関するeの基本閉路という
e
基本閉路と基本カット
• Gをグラフ、Tを無向閉路を含まないGの極大
な部分グラフとする
– 各𝑒 ∈ 𝐸 𝑇 に対して、𝛿𝐺 𝑋 ∩ 𝐸 𝑇 = 𝑒 となる
集合𝑋 ⊆ 𝑉 𝐺 が存在する。 𝛿𝐺 𝑋 をTに関するe
の基本カットという
X
e
定理2.11
Gを有向グラフ、Tを無向閉路を持たないGの極大な部分グラフ
とする。
Tに関する 𝐸 𝐺 ∖ 𝐸 𝑇 個の𝐸 𝐺 ∖ 𝐸 𝑇 の辺の基本閉路の
集合はGのサイクル基底となる。
Tに関する 𝐸 𝑇 個の𝐸 𝑇 の辺の基本カットの集合はコサイク
ル基底となる。
各基本閉路は他の基本閉路に含まれない辺eを含むので、基本閉路に対応する
𝐸 𝐺 ∖ 𝐸 𝑇 個のベクトルは線形独立
基本カットに対応する 𝐸 𝑇 個のベクトルに対しても同様
2つのベクトル空間は互いに直交するので、次元の和は 𝐸 𝐺
T: 無向基礎グラフが木となる有向グラフ
𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して、eの終点を含むT-eの連結成分を𝐶𝑒
として、族𝐹 ≔ 𝐶𝑒 : 𝑒 ∈ 𝐸 𝑇 を考える
1
2
3
T: 無向基礎グラフが木となる有向グラフ
𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して、eの終点を含むT-eの連結成分を𝐶𝑒
として、族𝐹 ≔ 𝐶𝑒 : 𝑒 ∈ 𝐸 𝑇 を考える
1
2
3
𝐶1
T: 無向基礎グラフが木となる有向グラフ
𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して、eの終点を含むT-eの連結成分を𝐶𝑒
として、族𝐹 ≔ 𝐶𝑒 : 𝑒 ∈ 𝐸 𝑇 を考える
𝐶2
1
2
3
𝐶1
T: 無向基礎グラフが木となる有向グラフ
𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して、eの終点を含むT-eの連結成分を𝐶𝑒
として、族𝐹 ≔ 𝐶𝑒 : 𝑒 ∈ 𝐸 𝑇 を考える
𝐶2
1
2
3
𝐶3
𝐶1
T: 無向基礎グラフが木となる有向グラフ
𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して、eの終点を含むT-eの連結成分を𝐶𝑒
として、族𝐹 ≔ 𝐶𝑒 : 𝑒 ∈ 𝐸 𝑇 を考える
もしTが有向木ならばFの任意
の2要素は共通部分を持たな
いか、あるいは一方が他方に
含まれるかである
1
2
3
𝐶3
𝐶2
𝐶1
定義2.12
集合システム
空でない有限集合UとUの部分集合の族Fの対(U,F)は集合シス
テムと呼ばれる。
任意の2つの集合X,Yに対して
𝑋 ∖ 𝑌, 𝑌 ∖ 𝑋, 𝑋⋂𝑌, 𝑈 ∖ 𝑋⋃𝑌 のいずれかが空⇒クロスフリー
(どのX,Yを見ても、一方が他方を含んでいる、共通する要素が
ない、すべての要素をカバーする、のいずれかを満たす)
𝑋 ∖ 𝑌, 𝑌 ∖ 𝑋, 𝑋⋂𝑌のいずれかが空⇒ラミナー
(どのX,Yを見ても、一方が他方を含んでいる、共通する要素が
ない、のいずれかを満たす)
T: 無向基礎グラフが木となる有向グラフ
𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して、eの終点を含むT-eの連結成分を𝐶𝑒
として、族𝐹 ≔ 𝐶𝑒 : 𝑒 ∈ 𝐸 𝑇 を考える
𝐶2
1
2
クロスフリー族
3
𝐶3
𝐶1
T: 無向基礎グラフが木となる有向グラフ
𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して、eの終点を含むT-eの連結成分を𝐶𝑒
として、族𝐹 ≔ 𝐶𝑒 : 𝑒 ∈ 𝐸 𝑇 を考える
もしTが有向木ならばFの任意
の2要素は共通部分を持たな
いか、あるいは一方が他方に
含まれるかである
1
2
ラミナー族
3
𝐶3
𝐶2
𝐶1
定義から、
集合システム 𝑈, 𝐹 がクロスフリーであることと、任
意の𝑟 ∈ 𝑋に対して、
𝐹 ′ ≔ 𝑋 ∈ 𝐹: 𝑟 ∉ 𝑋 ∪ 𝑈 ∖ 𝑋: 𝑋 ∈ 𝐹, 𝑟 ∈ 𝑋
がラミナー族であることは等価であることが得られ
る
𝐹 ′ ≔ 𝑋 ∈ 𝐹: 𝑟 ∉ 𝑋 ∪ 𝑈 ∖ 𝑋: 𝑋 ∈ 𝐹, 𝑟 ∈ 𝑋
r
𝐶2
1
2
クロスフリー族
3
𝐶3
𝐶1
𝐹 ′ ≔ 𝑋 ∈ 𝐹: 𝑟 ∉ 𝑋 ∪ 𝑈 ∖ 𝑋: 𝑋 ∈ 𝐹, 𝑟 ∈ 𝑋
r
𝐶2
1
2
3
𝐶3
𝐶1
定義2.13
Tを無向基礎グラフが木となる有向グラフとする。
Uを有限集合とし、𝜑: 𝑈 → 𝑉 𝑇 とする。 𝑒 = 𝑥, 𝑦 に対して、
𝑆𝑒 ≔ 𝑠 ∈ 𝑈: 𝜑 𝑠 と𝑦は𝑇 − 𝑒の同じ連結成分に属する
と定義して、 𝐹 ≔ 𝑆𝑒 : 𝑒 ∈ 𝐸 𝑇 とする。このとき、 𝑇, 𝜑 を
𝑈, 𝐹 の木表現という。
クロスフリー族
𝑏, 𝑐, 𝑑, 𝑒, 𝑓 , 𝑐 , 𝑎, 𝑏, 𝑐 , 𝑒 , 𝑎, 𝑏, 𝑐, 𝑒, 𝑓 , 𝑒, 𝑓
の木表現
d
b
a
それぞれの辺の先にある頂点集合は、族の1
つの要素に対応する
f
c
e
クロスフリー族
𝑏, 𝑐, 𝑑, 𝑒, 𝑓 , 𝑐 , 𝑎, 𝑏, 𝑐 , 𝑒 , 𝑎, 𝑏, 𝑐, 𝑒, 𝑓 , 𝑒, 𝑓
の木表現
d
b
a
それぞれの辺の先にある頂点集合は、族の1
つの要素に対応する
f
c
e
クロスフリー族
𝑏, 𝑐, 𝑑, 𝑒, 𝑓 , 𝑐 , 𝑎, 𝑏, 𝑐 , 𝑒 , 𝑎, 𝑏, 𝑐, 𝑒, 𝑓 , 𝑒, 𝑓
の木表現
d
b
a
それぞれの辺の先にある頂点集合は、族の1
つの要素に対応する
f
c
e
命題2.14
𝑈, 𝐹 は木表現 𝑇, 𝜑 をもつ集合システムであ
るとすると、
𝑈, 𝐹 はクロスフリーである
Tが有向木ならばラミナーである
クロスフリーは木表現可能
ラミナー族は有向木で木表現可能
命題2.14
𝑈, 𝐹 は木表現 𝑇, 𝜑 をもつ集合システムであ
るとすると、
𝑈, 𝐹 はクロスフリーである
Tが有向木ならばラミナーである
クロスフリーは木表現可能
ラミナー族は有向木で木表現可能
𝑇, 𝜑 : 𝑈, 𝐹 の木表現
𝑒 = 𝑣, 𝑤 , 𝑓 = 𝑥, 𝑦 ∈ 𝐸 𝑇 とすると、Tの無向v-x-パスPが得
られる
(a)𝑤, 𝑦 ∉ 𝑉 𝑃
(b) 𝑤 ∉ 𝑉 𝑃 かつ𝑦 ∈ 𝑉 𝑃
(c)𝑦 ∉ 𝑉 𝑃 かつ𝑤 ∈ 𝑉 𝑃
(d) 𝑤, 𝑦 ∈ 𝑉 𝑃
の4通りが考えられる
𝑇, 𝜑 : 𝑈, 𝐹 の木表現
𝑒 = 𝑣, 𝑤 , 𝑓 = 𝑥, 𝑦 ∈ 𝐸 𝑇 とすると、Tの無向v-x-パスPが得
られる
(a)𝑤, 𝑦 ∉ 𝑉 𝑃
(b) 𝑤 ∉ 𝑉 𝑃 かつ𝑦 ∈ 𝑉 𝑃
(c)𝑦 ∉ 𝑉 𝑃 かつ𝑤 ∈ 𝑉 𝑃
(d) 𝑤, 𝑦 ∈ 𝑉 𝑃
w
v
e
𝑆𝑒
x
y
f
𝑆𝑓
𝑆𝑒 ∩ 𝑆𝑓 = ∅
𝑇, 𝜑 : 𝑈, 𝐹 の木表現
𝑒 = 𝑣, 𝑤 , 𝑓 = 𝑥, 𝑦 ∈ 𝐸 𝑇 とすると、Tの無向v-x-パスPが得
られる
(a)𝑤, 𝑦 ∉ 𝑉 𝑃
(b) 𝑤 ∉ 𝑉 𝑃 かつ𝑦 ∈ 𝑉 𝑃
(c)𝑦 ∉ 𝑉 𝑃 かつ𝑤 ∈ 𝑉 𝑃
(d) 𝑤, 𝑦 ∈ 𝑉 𝑃
w
v
e
𝑆𝑒
y
x
f
𝑆𝑓
𝑆𝑒 ⊆ 𝑆𝑓
(c)の場合は
𝑆𝑓 ⊆ 𝑆𝑒
𝑇, 𝜑 : 𝑈, 𝐹 の木表現
𝑒 = 𝑣, 𝑤 , 𝑓 = 𝑥, 𝑦 ∈ 𝐸 𝑇 とすると、Tの無向v-x-パスPが得
られる
(a)𝑤, 𝑦 ∉ 𝑉 𝑃
(b) 𝑤 ∉ 𝑉 𝑃 かつ𝑦 ∈ 𝑉 𝑃
(c)𝑦 ∉ 𝑉 𝑃 かつ𝑤 ∈ 𝑉 𝑃
(d) 𝑤, 𝑦 ∈ 𝑉 𝑃
v
w
e
y
x
f
𝑆𝑓
𝑆𝑒
𝑆𝑒 ∪ 𝑆𝑓 = 𝑈
Tが有向木ならばこのパ
ターンは起こりえない。
その場合はラミナー族
命題2.14
𝑈, 𝐹 は木表現 𝑇, 𝜑 をもつ集合システムであ
るとすると、
𝑈, 𝐹 はクロスフリーである
Tが有向木ならばラミナーである
クロスフリーは木表現可能
ラミナー族は有向木で木表現可能
F: ラミナー族
𝑉 𝑇 ≔𝐹∪ 𝑟
𝑋, 𝑌 ∈ 𝐹 × 𝐹: 𝑋 ⊃ 𝑌 ≠ ∅かつ𝑋 ⊃ 𝑍 ⊃ 𝑌となる𝑍が存在しない
𝐸 𝑇 ≔ 𝐸′ ∪ 𝑟, 𝑋 : 𝑋は𝐹の極大要素
𝐸′ ≔
r
X
Y
Fが空集合を含むならば、任意の極小集合Xに(X,Φ)を
追加
各x∈ 𝑈に対して、xを含む極小集合Xを用いて
𝜑 𝑥 =𝑋
xを含む集合がないときは
𝜑 𝑥 =𝑟
として𝜑を定義
Tはrを根とする有向木
F: クロスフリー族
𝑟 ∈ 𝑈とすると、
𝐹 ′ ≔ 𝑋 ∈ 𝐹: 𝑟 ∉ 𝑋 ∪ 𝑈 ∖ 𝑋: 𝑋 ∈ 𝐹, 𝑟 ∈ 𝑋
はラミナー族
𝑈, 𝐹 の木表現を 𝑇, 𝜑 とする
各辺𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して𝑆𝑒 ∈ 𝐹′
(a) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(b) 𝑆𝑒 ∉ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(c) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∉ 𝐹
F: クロスフリー族
𝑟 ∈ 𝑈とすると、
𝐹 ′ ≔ 𝑋 ∈ 𝐹: 𝑟 ∉ 𝑋 ∪ 𝑈 ∖ 𝑋: 𝑋 ∈ 𝐹, 𝑟 ∈ 𝑋
はラミナー族
𝑈, 𝐹 の木表現を 𝑇, 𝜑 とする
各辺𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して𝑆𝑒 ∈ 𝐹′
(a) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(b) 𝑆𝑒 ∉ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(c) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∉ 𝐹
𝑆𝑒
𝑈 ∖ 𝑆𝑒
e
F: クロスフリー族
𝑟 ∈ 𝑈とすると、
𝐹 ′ ≔ 𝑋 ∈ 𝐹: 𝑟 ∉ 𝑋 ∪ 𝑈 ∖ 𝑋: 𝑋 ∈ 𝐹, 𝑟 ∈ 𝑋
はラミナー族
𝑈, 𝐹 の木表現を 𝑇, 𝜑 とする
各辺𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して𝑆𝑒 ∈ 𝐹′
(a) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(b) 𝑆𝑒 ∉ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(c) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∉ 𝐹
𝑆𝑒
𝑈 ∖ 𝑆𝑒
z
F: クロスフリー族
𝑟 ∈ 𝑈とすると、
𝐹 ′ ≔ 𝑋 ∈ 𝐹: 𝑟 ∉ 𝑋 ∪ 𝑈 ∖ 𝑋: 𝑋 ∈ 𝐹, 𝑟 ∈ 𝑋
はラミナー族
𝑈, 𝐹 の木表現を 𝑇, 𝜑 とする
各辺𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して𝑆𝑒 ∈ 𝐹′
(a) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(b) 𝑆𝑒 ∉ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(c) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∉ 𝐹
𝑆𝑒
𝑈 ∖ 𝑆𝑒
e
F: クロスフリー族
𝑟 ∈ 𝑈とすると、
𝐹 ′ ≔ 𝑋 ∈ 𝐹: 𝑟 ∉ 𝑋 ∪ 𝑈 ∖ 𝑋: 𝑋 ∈ 𝐹, 𝑟 ∈ 𝑋
はラミナー族
𝑈, 𝐹 の木表現を 𝑇, 𝜑 とする
各辺𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して𝑆𝑒 ∈ 𝐹′
(a) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(b) 𝑆𝑒 ∉ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(c) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∉ 𝐹
𝑆𝑒
𝑈 ∖ 𝑆𝑒
e
F: クロスフリー族
𝑟 ∈ 𝑈とすると、
𝐹 ′ ≔ 𝑋 ∈ 𝐹: 𝑟 ∉ 𝑋 ∪ 𝑈 ∖ 𝑋: 𝑋 ∈ 𝐹, 𝑟 ∈ 𝑋
はラミナー族
𝑈, 𝐹 の木表現を 𝑇, 𝜑 とする
各辺𝑒 = 𝑥, 𝑦 ∈ 𝐸 𝑇 に対して𝑆𝑒 ∈ 𝐹′
(a) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(b) 𝑆𝑒 ∉ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∈ 𝐹
(c) 𝑆𝑒 ∈ 𝐹かつ𝑈 ∖ 𝑆𝑒 ∉ 𝐹
𝑆𝑒
𝑈 ∖ 𝑆𝑒
e
系2.15
Uの異なる部分集合の…
ラミナー族は高々2|U|個の要素しか含まない
クロスフリー族は高々4|U|-2個の要素しか含まない
非空真部分集合のラミナー族F
命題2.14における構成法では…
異なる部分集合の数=枝の数=頂点数-1
各頂点に対して 出次数が2以上である or ラベル付けされる
ラベル付けされる頂点の数は高々|U|個
出次数が2以上となるのは高々
𝐸 𝑇
2
𝐸 𝑇 +1= 𝑉 𝑇 ≤ 𝑈 +
𝐹 = 𝐸 𝑇 ≤2 𝑈 −2
空集合とUを合わせると…
𝐸 𝑇
2
系2.15
Uの異なる部分集合の…
ラミナー族は高々2|U|個の要素しか含まない
クロスフリー族は高々4|U|-2個の要素しか含まない
非空真部分集合のクロスフリー族F
Fの変換により得られるラミナー族F’
𝐹 ≤ 2 𝐹′ ≤ 4 𝑈 − 4
空集合とUを合わせると…