L4 連通度與路徑
符號定義
| 符號 |
意義 |
| δ(G) |
最小度 (minimum degree) |
| NG(v) |
v 的鄰居集合 (neighborhood) |
| κ(G) |
圖 G 的頂點連通度 (connectivity) |
| λ(G) |
圖 G 的邊連通度 (edge-connectivity) |
| κ(x,y) |
分開 x,y 所需移除的最少頂點數 |
| λ(x,y) |
講義此處用來表示 x,y 間最大兩兩頂點不相交路徑數 |
| [X,Y] |
X,Y 兩頂點集合之間的邊集合 |
Vertex Cut 與 Connectivity
| 圖 |
κ(G) |
| Kn |
n−1 |
| Km,n |
min(m,n) |
| Cn |
2 |
| K1,n |
1 |
| Pn (n≥2) |
1 |
| Petersen graph |
3 |
對任意頂點數 >1 的連通圖: 1≤κ(G)≤δ(G)
- 取最小度頂點 x,d(x)=δ(G),若 G 不是完全圖,移除 N(x) 後,x 會和其他頂點分開。因此 N(x) 可作為一個 vertex cut,大小為 δ(G)。
如何證明 κ(G)=k?
- κ(G)≥k:移除任意少於 k 個頂點仍連通,也就是 G 是 k-connected。
- κ(G)≤k:找到某一個大小為 k 的 vertex cut。
Minimum degree 與 k-connected:
若 ∣V(G)∣=n,且 δ(G)≥2k+n−2
則 G 是 k-connected,也就是 κ(G)≥k
這是一個充分條件,不是必要條件。 (講義 P20–23)
Edge Cut 與 Edge-connectivity
- Edge Cut (邊割)
- 對連通圖 G,若邊集合 S⊆E(G) 滿足 G−S 不連通,則稱 S 為 edge cut(邊割)。
- k-edge-connected(k-邊連通)
- 若從 G 中移除任意少於 k 條邊後仍然連通,則稱 G 是 k-edge-connected。
- k-edge-connected ⇒(k−1)-edge-connected。反之不一定。
- Edge-connectivity (邊連通度)
- λ(G)=min{∣S∣:S⊆E(G), G−S 不連通}
若 X,Y⊆V(G) 且 X∩Y=∅,則 [X,Y]={xy∈E(G):x∈X, y∈Y} 表示 X 與 Y 之間所有的邊。
最小邊割的性質
若 S 是 G 的最小 edge cut,則 G−S 恰有兩個 connected components
若切成三個以上 components,通常可以只保留其中一部分割邊就把圖切開,得到更小的 edge cut,與「最小」矛盾。 (講義 P29–30)
對簡單圖 G: κ(G)≤λ(G)≤δ(G)
點連通度≤邊連通度≤最小度
常用圖形:
- Tree T(∣V(T)∣≥2):κ(T)=λ(T)=δ(T)=1
- Km,n:κ=λ=δ=min(m,n)
- Cn:κ=λ=δ=2
- Pn:κ=λ=δ=1
若 G 為 3-regular graph,則 κ(G)=λ(G)
已知 κ(G)≤λ(G)≤δ(G)=3,再依 κ(G)=1,2,3 分類即可證明。 (講義 P38)
Blocks
Block(塊): 沒有 cut vertex 的極大連通子圖 (maximal connected subgraph with no cut vertex)。
Block 不一定是 2-connected,因為 K1、K2 也可能是 block。
若 B1,B2 是不同 blocks,則 ∣V(B1)∩V(B2)∣≤1,兩個不同 blocks 最多共用一個頂點。
- 若共用兩個不同頂點,可以證明 B1∪B2 仍沒有 cut vertex,與 block 的 maximal 性質矛盾。 (講義 P41)
尋找 blocks,使用 DFS:
- 建立 DFS tree。
- 追蹤目前 subtree 是否有 back edge 連到父節點以上的 ancestor。
- 若某 subtree 無法透過 back edge 回到 parent 以上,則該 subtree 與 parent 形成一個 block。
- 記錄後將該部分從目前 DFS tree 中移除。
頂點/邊不相交路徑與 k-connected
- Vertex-disjoint Paths (頂點不相交路徑)
- 兩條 u−v path 若除了起點 u、終點 v 外沒有任何共同頂點,稱為頂點不相交。
2-connected 的等價條件:
對至少 3 個頂點的圖 G,下列條件等價:
- G 連通且沒有 cut vertex。
- 任意兩頂點 x,y 間有兩條 vertex-disjoint x−y paths。
- 任意兩頂點 x,y 都在同一個 cycle 上。
- δ(G)≥1,且任意一對 edges 都包含在某一個 cycle 中。
證明在講義 P60–63
擴張引理:
若 G 是 k-connected,加入新頂點 y,並讓 y 與 G 中任意 k 個頂點相鄰,則所得新圖仍為 k-connected。
G 是 k-connected, d(y)≥k⟹G+y 仍為 k-connected
證明依 被刪除的集合 S 是否包含 y 分兩種 case。 (講義 P58–59)
連接兩個 k-connected graphs
若 G,H 是頂點不相交的 k-connected graphs:
- 要保證將 G,H 接起來後仍是 k-connected,至少需要在兩圖之間加入 k 條 matching edges。
- 若 ∣V(G)∣=∣V(H)∣ 且兩圖之間加入一組 perfect matching,講義指出所得圖為 (k+1)-connected。 (講義 P64–69)
- Edge-disjoint Paths (邊不相交路徑)
- 兩條 u−v paths 沒有共同 edge,就稱為邊不相交。
- vertex-disjoint⇒edge-disjoint,反之不一定成立。
對任意 e∈E(G): κ(G)−1≤κ(G−e)≤κ(G)
也就是刪除一條 edge,頂點連通度最多下降 1。 (講義: 72–74)
Menger’s Theorem
- x,y-separator
- 給定 x,y∈V(G),若 S⊆V(G)−{x,y},且 G−S 中不存在 x−y path,則稱 S 為 x,y-cut / x,y-separator。
- κ(x,y): x,y-separator 的最小大小。
- λ(x,y): x,y 之間最大數量的兩兩 vertex-disjoint paths。
Menger Theorem (Vertex Version):
若 x,y 是圖 G 中兩個不相鄰頂點,則 κ(x,y)=λ(x,y)
分開 x,y 所需要移除的最少頂點數 = x,y 之間最大數量的兩兩頂點不相交路徑。
應用:
G 是 k-connected⟺G 的任意兩頂點間都有 k 條兩兩 vertex-disjoint paths
因此,若 G 為連通圖,任意兩頂點至少存在 κ(G) 條兩兩 vertex-disjoint paths。
Menger Theorem (Edge Version):
對任意頂點 x,y: 分開 x,y 所需移除的最少 edge 數=最大兩兩 edge-disjoint x−y paths 數
應用:
G 是 k-edge-connected⟺任意兩頂點間有 k 條兩兩 edge-disjoint paths
若 G 是 k-connected,則 ∣V(G)∣≥k(diam(G)−1)+2
取距離等於 diameter 的 x,y,Menger 保證至少有 k 條兩兩 vertex-disjoint x−y paths;每條 path 除 x,y 外至少有 diam(G)−1 個頂點。
edge 版本:
若 G 是 k-edge-connected,則 ∣E(G)∣≥kdiam(G)。
證明在講義 P84–85