在進入第三章之前,我們先複習一些跟機率有關的分析背景,首先 我們考慮所有的資料 (data) 都是隨機由 {0, 1} 所組成的,我們設資料為 Ξ = ξ1ξ2· · · ,而之後要討論的隨機模型都如同第一章最後給出的,另外我定 義隨機變數為
Xi :=− ln P(ξi) = − ln(pξiq1−ξi) =
{− ln q, if ξi = 0;
− ln p, if ξi = 1.
因為 ξi 是 i.i.d,所以 Xi 之間也是 i.i.d,最後我們給出隨機變數的動差
為
EXi =−p ln p − q ln q =: H, EXi2 = p ln2p + q ln2q =: H2,
Var(Xi) = H2− H2 = pq(ln p− ln q)2 = pq ln2(pq).
我們先在第一章介紹了資料結構中 trie 的排列方式,這章我們將關心如 何用更新理論來看節點分佈的期望值或是相關的問題。
首先,trie 可以看成是一個無窮完滿二元樹 (complete infinite tree) 的有 限子樹,其中每個節點都可以被有限的字串 α = α1α2· · · αk 所標記,我們可 以看出如果一個節點 α1· · · αk 是 trie 的中間節點,則它的充要條件是至少有 二個資料由 α1· · · αk 為開頭,所以如果一個節點為終結點的話,它的充要條 件是恰好只有一個資料由 α1· · · αk 為開頭,且至少有二個資料由 α1· · · αk−1
開頭。有了這兩個充要條件,我們就可以來看第一個要討論的主題 —深度 (depth)。
Definition 3.1.
若有 n 個隨機資料 (random data),則 trie 的深度 Dn 表示一個 trie 中的 隨機資料到根的路徑長度。
我們先來關心若有 n 個隨機資料,那深度的期望值為何? 我們先令一個 資料 Ξ = ξ1ξ2· · · ,若這項資料的深度 Dn 最多是 k 則充要條件為沒有其它 的資料由 ξ1ξ2· · · ξk 開頭,所以 Dn 最多為 k 的條件機率為
P(Dn≤ k | Ξ) = (1 − P (ξ1ξ2· · · ξk))n−1
= (
1−
∏k i=1
P(ξi) )n−1
=(
1− e−X1−X2···−Xk)n−1
= (1− e−Sk)n−1,其中我們令Sk=
∑k i=1
Xi.
現在我們令 X0(n) 是個獨立於 Ξ 之外的隨機變數,且有以下的分佈。
P(X0(n)> x) = (
1− ex n
)n−1
= (1− ex−ln n)n−1, x∈ (−∞, ∞).
所以當 n→ ∞ 時會收斂到 e−ex,則 X0(n) −→ Xd 0∗,其中 −X0∗ 有 Gumbel distribution。
接下來,我們來看延遲更新過程 (delayed renewal process),因為我們允 許第一項 X0(n) 可以與後項不同分佈,所以我們先在這定義一些要使用的符 號:
Sn:=
∑n i=0
Xi = X0(n)+
∑n i=1
Xi = X0∗+ Sn, v(t) := min{n | Sn> t}
結合以上的觀點,我們得到了一個結果。
Proposition 3.2.
Dn = v(ln n).d
Proof. 直接結合上述二個式子,我們可以得到 P(Dn≤ k | Ξ) = (1 − e−Sk)n−1
=P(X0(n)> ln n− Sk)
=P(Sk > ln n)
=P(v(ln n) ≤ k).
因為對所有的 k≥ 1 都滿足,所以 Dn
= v(ln n)。d
有了 Proposition 3.2 這個結果,我們就可以用更新理論裡的一些定理來 看關於深度的性質。
Theorem 3.3.
若 p∈ (0, 1) 則 ln nDn −→P H1,其中 H = EXi =−p ln p − q ln q。
Proof. 因為 Dn = v(ln n),所以根據 Remark 2.20(1),令 t = ln n 則d v(t)t =
Dn
ln n
−→P H1。
更進一步應用 Remark 2.20,我們就有以下深度的期望值和分佈的定理。
在接下去之前,我們先給一個判斷 X1 是否為非算術型的方法,
• d − 算術型 : ln pln q 是有理數且 d = gcd(ln p, ln q),則 X1 為 d− 算術型。
• 非算術型:ln pln q 是無理數,則 X1 為非算術型。
Theorem 3.4.
(1) 若 ln pln q 為無理數,當 n→ ∞,則 EDn= ln n
H + H2 2H2 + γ
H + o(1).
(2) 若 ln pln q 為有理數,且 d = gcd(ln p, ln q) 當 n→ ∞,則 EDn = ln n
H + H2 2H2 − 1
H
∑
k̸=0
Γ
(−2πik d
)
e2πik ln nd + γ
H + o(1).
Proof. 根據 Theorem 3.3 和 Remark 2.20,把X0(n) 換成 X0∗,我們就能得到
因為 Gumbel distribution −X0∗ 的特徵函數 (characteristic function) 為 Ee−itX0∗ = Γ(1− it) 所以我們得到EX0∗ = Γ′(1) =−γ,而 (2) 中的
詳細的證明在 S. Janson (2006). Rounding of continuous random variables and oscillatory asymptotics, Ann. Probab., 34:5, 1807-1826.
Theorem 3.5.
所以我們有 P( eDλ ≤ k) = P(Sk + X0∗ > ln λ) = P(v(ln λ) ≤ k),其中 X0 := X0∗,不再是由 n 決定的了,我們得到 eDλ = v(ln λ)。d
所以前述的定理和之後要介紹的定理都可以波松化來看,而只要使 λ 等 於適當的 n 就能作逆波松化 (depoissonization),舉例來說根據定理 2.17 我 們有 Deλ− ln λH
Theorem 3.6.
設 f 是一個非負函數定義在 (−∞, ∞),若 (1) f 是有界 (bounded) 且幾乎處處連續,
(2) 存在一個在 (−∞, −A) 上非遞減,在 (A, ∞) 非遞增的可積函數 F 使得 0≤ f ≤ F ,其中 A 為常數,則 f 為直接 Riemann 可積。
Proof. 對所有的整數k、h,設 x∈ [(k − 1)h, kh),
我們令fn−(x) := inf[(k−1)h,kh]f,
fn+(x) := sup[(k−1)h,kh)f,
則當 h→ 0 時,對每個在 f 連續的點,我們有 fn−(x)→ f(x), fn+(x)→ f(x).
若我們定義
g(x) :=
{
F (x + 1) , x <−A − 1;
F (x− 1) , x > A + 1.
當 | x |≤ A + 1 時,g(x) := sup f < ∞,則因為 F 是可積的,所以 g 是 可積的,且 0 < h < 1 時,0 ≤ fn−(x) ≤ fn+(x)≤ g(x),根據控制收斂定裡 (dominated convergence theoren),當 h→ 0 時,
∫ ∞
−∞
fn+ →
∫ ∞
−∞
f ,
∫ ∞
−∞
fn− →
∫ ∞
−∞
f, 故完成了證明。
接著我們要使用 Theorem 3.6 和關鍵更新定理來證明以下的定理。
Theorem 3.7.
設 f 為非負且 a.e continuous 的函數定義在 (0,∞),並滿足 {
f (x) = O(x2) , 0 < x < 1, f (x) = O(1) , 1 < x <∞.
另F (λ) = ∑
αf (λP(α)),其中 α 為所有由 (0, 1) 組成的字串,則
(1) 若 ln pln q 是非算術型的,當 λ→ ∞ 時,
而 d− 算術型 根據關鍵更新定理和
接著利用 Theorem 3.7 和分部積分 (integration by parts)
P(|Po(2n) − 2n| ≥ n) ≤ 2n。 由此推論
2
n ≥ P(|Po(2n) − 2n| ≥ n) = P ({Po(2n) ≥ 3n} ∪ {Po(2n ≤ n)})
≥ P(Po(2n) ≤ n).
所以當 n 夠大時,
P(Po(2n) ≥ n) = 1 − P(Po(2n) < n) ≥ 1 − 2 n ≥ 1
2.
再來我們要證明 EWn≤ 2EfW2n = O(n),因為 EWn 是隨著 n 遞增而遞 增,所以當 n 夠大時
EfW2n =∑
k
EWkP(Po(2n) = k) ≥ EWn
∑
k≥n
P(Po(2n) = k)
=EWnP(Po(2n) ≥ n) ≥ 1 2EWn. 最後我們要證明當 λ±= n± n23 時,
EfWλ−+ o(n)≤ EWn≤ EfWλ+ + o(n), 根據 Chebyshev’s inequality,
(n−13 + n−23)≥ P(|Po(n + n23)− n − n23| ≥ n23)
=P(
{Po(n + n23)≥ n + n43} ∪ {Po(n + n23)≤ n})
≥ P(Po(n + n23)≤ n)———(1), 另外
1− P(Po(n + n23)≤ n) = P(Po(n + n23) > n)———(2), 結合 (1)、(2) 我們得到
P(Po(n + n23) > n)≥ 1 − (n−13 + n−23) = 1 + o(1).
所以
EfWλ+ =∑
k
EkP(Po(n + n23) = k)≥ EWn
∑
k≥n+1
P(Po(n + n23) = k)
=EWnP(Po(n + n23) > n)≥ EWn(1 + o(1)) =EWn+ o(n).
同樣的作法我們也能得到
EWn ≥ EfWλ−+ o(n).
因為
EfWλ−+ o(n)≤ EWn≤ EfWλ+ + o(n).
所以 EfWλ−
n +o(n)
n ≤ EWn
n ≤ EfWλ+
n + o(n) n . 根據這個不等式和 Theorem 3.8,我們就得到了期望值的結果。
接下來我們要來關心 trie 中一些常常需要用到的節點的期望值,我們先 定義一些符號方便後面的介紹。
N ote
設有 n 個資料,則 Ln: 葉子的數量;
On: 只有一個孩子之節點的數量;
Tn: 洽有二個孩子之節點的數量;
Rn: 沒有左邊孩子之節點的數量。
根據 trie 的生成規則,我們知道葉子的數量就是資料的數量,所以 Ln = n,而根據第一章提到的 patricia trie 的生成規則,我們知道 trie 的中間節點數量減去 patricia trie 的中間節點數量就是 On,最後 Tn 就是所 有的節點減去 On 和 n,而圖論中也有用別的方法得到結果 Tn = n− 1,所 以我們接下來就用類似前面的方法來找出 Rn 的期望值。
Theorem 3.10.
(1) 若 ln pln q 是非算術型的,當 n→ ∞ 時,
ERn= n
H(p + q ln q) + o(n).
(2) 若 ln pln q 是 d− 算術型的,當 n → ∞ 時,
ERn = n
H(p + q ln q) + n
HψR(ln n) + o(n), 其中
ψR(t) = ∑
m̸=0
−pΓ(−1 + χm)χme−χmt, χm =−2πim d .
Proof. 我們先證明波松化的 case,首先,一個節點 α 為沒有左邊孩子的節
其中
ψR(t) = ∑
m̸=0
∫ ∞
0
f (x)x−2−2πimd dxe−χmt
= ∑
m̸=0
−pΓ(−1 + χm)χme−χmt, χm = −2πim d .
故完成了證明,而且我們可以用類似 Theorem 3.9 的方式來作逆波松化使資 料量為 n 時有一樣的結果。