1. 程式人生 > >具體數學(Concrete Math) 讀書筆記

具體數學(Concrete Math) 讀書筆記

《具體數學》果真十分“具體”,遠沒有數學分析、高等代數那麼“抽象”。這裡記錄了我在閱讀這本書時所採擷的“心動瞬間”——這些數學公式真是令人心動——可以把這篇文章當做檢索目錄,遇到問題時:1、Ctrl+F;2、找到對應章節後翻書。

遞迴問題

河內塔問題

  • 如何確定遞迴式?

    • \(T_n\)表示\(n\)個圓盤的最小步數

    • \(T_n \le 2 T_{n-1} + 1\), 可以構造;

    • \(T_n \ge 2T_{n-1} + 1\),要把最大一個拿出來至少要\(T_{n-1}+1\),把剩下的移動正確位置,至少需要\(T_{n-1}\)

  • 如何求出封閉形式?

    • 數學歸納,假設\(T_n = 2^n - 1\)

    • 暴力求解,記\(U_n = T_n + 1\),則\(U_n = 2U_{n-1} = 2^n\),從而解出\(T_n\)

平面上的直線

  • 尤拉公式:F = 1 + E - V

    • 每加入一條邊,F先+1;每多出一個交點,就會多兩條邊,從而F又+1.

    • 目標是最大化交點的數量。

  • \(n\)刀,最多把披薩分成幾塊?

    • 只要所有直線都不平行,第\(i\)條直線可以和之前\(i-1\)條直線相交,從而F加\(i\).
  • \(n\)條折線呢?

    • 每一對摺線可以產生\(4\)

      個頂點,自己本身可以產生1個,初始有1個。

    • \(4 \frac{n(n-1)}{2} + n + 1 = 2n^2 - n + 1\)

  • \(n\)個120°三叉呢?

    • 每對可以產生3個,自己本身可以多2個,初始有1個。

約瑟夫問題

  • 每隔2個幹掉一個?

    • 遞迴,第一輪會把所有偶數位置都幹掉

      • \(J(2n) = 2J(n) - 1\)

      • \(J(2n + 1) = 2 J(n) + 1\)

    • 對遞迴式打表+數學歸納

      • \(J(2^m + l) = 2l + 1\)
        \(0 \le l < 2^m\)
    • 用二進位制形式表示?

      • \(J(n)\)相當於把\(n\)在二進位制下迴圈左移了一位。
    • 一些性質

      • \(J(J(J(.....J(n))))\)最後會停在不動點——二進位制下全是1的數

      • \(J(n) = \frac{n}{2}\),得\(l = \frac{1}{3} (2^m - 2)\),m為奇數時一定有解。

  • 拓展一下遞迴式?

    • \(f(1) = \alpha\); \(f(2n) = 2 f(n) + \beta\); \(f(2n + 1) = 2 f(n) + \gamma\).

    • 顯然\(f(n) = A(n) \alpha + B(n) \beta + C(n) \gamma\).

      • 法一:打表、歸納

      • 法二:帶入\(f(n)=1\),\(f(n)=n\).解出對應的\(\alpha,\beta,\gamma\),從而解出\(A(n),B(n),C(n)\).

  • 叕拓展一下遞迴式?

    • \(f(j) = \alpha_j\); \(f(dn + j) = c f(n) + \beta_j\).

    • \(f((b_m b_{m-1} .... b_1 b_0)_d) = (\alpha_{b_m} \beta_{b_{m-1}} .... \beta_{b_0})_c\).

和式

和式和遞迴式

  • 將和式轉化為遞迴式

    • 可得$R_n = A(n) \alpha + B(n) \beta + C(n) \gamma $。

    • 用上一節的成套方法,即用\(R_n\)為簡單函式,解出 \(\alpha,\beta,\gamma\),從而解出\(A(n),B(n),C(n)\)

  • 將遞迴式轉為和式

    • \(a_n T_n = b_n T_{n-1} + c_n\); \(T_0\)是個常數。

    • \(s_n = \frac{a_{n-1} a_{n-2} .... a_1}{b_n b_{n-1} b_2}\); 則有\(b_n s_n = a_{n-1} s_{n-1}\).

    • 則有:\(T_n = \frac{1}{a_n s_n} (s_1 b_1 T_0 + \sum_{k=1}^{n} s_k c_k)\).

    • 注意,要求所有\(a_n,b_n\)均不為0.

  • 例題:計算快速排序複雜度

    • \(C_0 = C_1 = 0\); \(C_n = n + 1 + \frac{2}{n} \sum_{k=0}^{n-1} C_k\).

    • 先轉換為遞迴式

      • 兩邊乘\(n\):$n C_n = n(n+1) + 2\sum_{k=0}^{n-1} C_k $.

      • 對應到\(n-1\): $(n-1) C_{n-1} = n(n-1) + 2\sum_{k=0}^{n-2} C_k $.

      • 相減:\(n C_n = (n + 1) C_{n-1} + 2n\); \(C_2 = 3\).

    • 應用公式

      • \(a_n = n\); \(b_n = n+1\); \(c_n = 2n - 2[n=1]+2[n=2]\); \(s_n = \frac{2}{n(n+1)}\)

      • \(C_n = 2(n+1)\sum_{k=1}^{n} \frac{1}{k+1} - \frac{2}{3}(n+1)\).

    • 封閉形式

      • 調和數:\(H_n = \sum_{k=1}^{n} \frac{1}{k}\).

      • \(C_n = 2(n+1) H_n - \frac{8}{3}n - \frac{2}{3}\).

和式的處理

  • 擾動法

    • \(S_n = \sum_{i=0}^{n} a_n\)

    • \(S_n + a_{n+1} = a_0 + \sum_{i=0}^{n} a_{i+1}\)

    • 嘗試用\(S_n\)來表示右邊

  • 例題:\(S_n = \sum_{k=0}^{n} k 2^k\)

    • \(S_n + (n+1)2^{n+1} = \sum_{k=0}^{n} (k+1) 2^{k+1} = 2S_n + (2^{n+2} - 2)\);化簡即可
  • 拓展:\(S_n = \sum_{k=0}^{n} k x^k\).

    • \(\sum_{k=0}^{n} x^k = \frac{1-x^{n+1}}{1-x}\)

    • 求導:\(\sum_{k=0}^{n} k x^{k-1} = \frac{1-(n+1)x^n + nx^{n+1}}{(1-x)^2}\).

    • 看起來離散和連續之間,有一種不可告人的關係

多重和式

  • 切比雪夫單調不等式

    • \(S = \sum_{1 \le j < k \le n} (a_k - a_j) (b_k - b_j)\)

    • $2S = \sum_{1 \le j,k \le n} (a_k - a_j) (b_k - b_j) = 2n \sum_{k=1}^{n} a_k b_k - 2 (\sum_{k=1}^{n} a_k) (\sum_{k=1}^{n} b_k) $

    • \((\sum_{k=1}^{n} a_k) (\sum_{k=1}^{n} b_k) = n \sum_{k=1}^{n} a_k b_k - \sum_{1 \le j < k \le n} (a_k - a_j) (b_k - b_j)\).

    • \(a_i,b_i\)不減時,\(S \ge 0\),上式的等號變成\(\le\)

    • \(a_i\)不減,\(b_i\)不增,\(S \le 0\),上式取\(\ge\)

  • 連續情況下的切比雪夫不等式

    • \((\int_a^b f(x) dx) (\int_a^b g(x) dx) \le (b-a) (\int_a^b f(x)g(x)dx)\); 若\(f(x),g(x)\)不減
  • 例題:\(S_n = \sum_{1 \le j < k \le n} \frac{1}{k-j}\)

    • \(S_n = \sum_{0 \le k < n} H_k\)

    • \(S_n = \sum_{k=1}^{n} \frac{n-k}{k} = n H_n - n\)

    • 從而\(\sum_{0 \le k < n} H_k = n H_n - n\). 真是神奇

一般性的方法

討論\(S_n = \sum_{k=1}^{n} k^2\)的解法

  • 打表+猜測答案+數學歸納

  • 擾動法

    • 需要用\(\sum_{k=1}^{n} k^3\)來擾動.
  • 成套方法

    • \(R_n = R_{n-1} + \beta + \gamma n + \delta n^2\)

    • \(R_n = A(n) \alpha + B(n) \beta + C(n) \gamma + D(n) \delta\)

    • 假定\(\delta = 0\)\(A(n),B(n),C(n)\)和之前一樣;再令\(R_n = n^3\),解出\(D(n)\)

  • 用積分估計,對誤差遞迴

    • \(\int_0^n x^2 dx = \frac{n^3}{3}\)

    • \(E_n = S_n - \frac{n^3}{3}\)

    • \(E_n = S_{n-1} + n^2 - \frac{n^3}{2} = E_{n-1} + \frac{(n-1)^3}{2} + n^2 - \frac{n^3}{2} = E_{n-1} + n - \frac{1}{3}\)

    • \(E_n\) 超級好算。

  • 展開和放縮

    • \(S_n = \sum_{1 \le j \le k \le n} k = \sum_{1 \le j \le n} (j+n)(n-j+1)/2\)

    • 拆開即可

有限微積分

  • 下降冪

    • \(x^{\underline{m}} = x(x-1)(x-2)...(x-m+1)\)\(m > 0\)

    • \(x^{\underline{-m}} = \frac{1}{(x+1)(x+2)...(x+m)}\)\(m > 0\)

    • \(x^{\underline{m+n}} = x^{\underline{m}} (x - m)^{\underline{n}}\)

  • 求解\(\sum_{a \le x < b} f(x)\)

    • 若能找到\(f(x) = g(x+1) - g(x)\)

    • 則答案為\(g(b) - g(a)\)

  • 一些“原函式”

    • \(x^{\underline{m}} = \frac{1}{m+1}[(x+1)^{\underline{m+1}} - x^{\underline{m+1}}]\)\(m \ne -1\)

    • $x^{\underline{-1}} = \frac{1}{x+1} = H(x+1) - H(x) \(,\)H(x)$是調和數

    • \(x = \frac{1}{2}[(x+1)x - x(x-1)]\)

    • \(x^n\) 要先用斯特林數化成\(x^{\underline{m}},1 \le m \le n\)的形式,然後分別找原函式

    • \(2^x = 2^{x+1} - 2^x\),和連續時\(e^x\)類似

    • \(c^x = \frac{c^{x+1} - c^x}{c-1}\)

  • 離散的“分部積分”

    • \(\sum_{a \le x < b} u(x) [v(x+1) - v(x)] = u(b) v(b) - u(a) v(a) - \sum_{a \le x < b} [u(x+1) - u(x)] v(x+1)\)

    • 例題:\(\sum_{0 \le x < n} H_x x\)

      • \(x = \frac{1}{2}[(x+1)^{\underline{2}} - x^{\underline{2}}]\)\(v(x) = \frac{1}{2} x^{\underline{2}}\)

      • \(H_{x+1} - H_x = x^{\underline{-1}}\)

      • 答案為\(\frac{n^2}{2}(H_n - \frac{1}{2})\).

無限和式

  • 無限個非負數的和?

    • 對於\(\sum_{k \in K} a_k\),如果存在常數\(A\),使得\(K\)的任意有限子集\(F\)都滿足\(\sum_{k \in F} a_k \le A\),則稱\(A\)為一個上界;最小的\(A\)(即下确界)稱為\(\sum_{k \in K} a_k\)的和。

    • 如果不在常數\(A\),則和為無限;可以用數分中的\(\epsilon - \delta\)語言寫清楚。

    • 如果和有限且\(K\)為自然數集,則\(\sum_{k \in K} a_k = \lim_{n->\infty} \sum_{0 \le k \le n} a_k\)

  • 無限和式的定義

    • 定義\(x = x^+ - x^-\)\(x^+ = x [x > 0]\)\(x^- = -x[x<0]\)

    • \(\sum_{k \in K} a_k = \sum_{k \in K} a_k^+ - \sum_{k \in K} a_k^-\)

    • 如果\(\sum_{k \in K} a_k^+\)\(\sum_{k \in K} a_k^-\)都有限,則無限和式存在;如果\(\sum_{k \in K} a_k^+\)無限,另一個有限,則無限和式為\(+ \inf\). 反之亦然。如果都無限,則不予定義。

    • 和有限的無限和式之間,滿足分配率、結合律、交換律

  • 一些反例

    • \(T = 1 + 2 + 4 + 8 + .....\)

      • \(2T = 2 + 4 + 8 + .... = T - 1\). \(T = -1\).

      • 事實上\(T=+\infty\)

    • \(T = 1 - 1 + 1 - 1 + 1 .....\)

      • \((1 - 1) + (1 - 1) + .... = 0\)

      • \(1 + (-1 + 1) + (-1 +1)+.... = 1\)

      • 事實上由等比數列可得,和為\(\frac{1}{2}\)。一群整數的和竟然是分數.....

    • \(...+(- \frac{1}{4}) + (- \frac{1}{3}) + (- \frac{1}{2}) + 1 + \frac{1}{2} + \frac{1}{3} + ......\)

      • 可以等於0

      • 可以等於\(1 + H_{2n} - H_{n+1}\),每次右邊選兩個數,左邊選一個數,求極限。和為\(1 + \ln(2)\)

整值函式

底和頂

  • \(\lceil x \rceil - \lfloor x \rfloor = [x \text{不是整數}]\)

  • \(\lfloor \frac{n}{m} \rfloor = \lfloor \frac{cn}{cm} \rfloor\)

底和頂的應用

  • \(\lfloor \sqrt{\lfloor x \rfloor} \rfloor = \lfloor \sqrt{x} \rfloor\)

    • 證明:設\(m = \lfloor \sqrt{\lfloor x \rfloor} \rfloor\),展開得到\(x\)的範圍

    • 拓展:若\(f(x)\)是個單調遞增的函式,且若\(f(x)\)是整數能推匯出\(x\)是整數,則\(\lfloor f(\lfloor x \rfloor) \rfloor = \lfloor f(x) \rfloor\)

  • \(\lceil \sqrt{\lfloor x \rfloor} \rceil = \lceil \sqrt{x} \rceil\)???

    • 否;當\(m^2 < x < m^2 + 1\)時,即\(x\)不是整數,且\(\sqrt{\lfloor x \rfloor}\)是整數時,為反例
  • \(1 \le n \le 1000\)中,有多少整數\(n\)滿足\(\lfloor n^{\frac{1}{3}} \rfloor | n\)?

    • \(m = \lfloor n^{\frac{1}{3}} \rfloor\)

    • \(1 + \sum_{m=1}^{9} \lfloor \frac{(m+1)^3 - m^3}{m} \rfloor = 172\)

    • 用多項式近似,可得 \(W = \frac{3}{2} N^{\frac{2}{3}} + O(N^{\frac{1}{3}})\)

    • \(Spec(\alpha) = \{ \lfloor \alpha \rfloor , \lfloor 2 \alpha \rfloor, \lfloor 3 \alpha \rfloor, ........ \}\)

    • \(\sqrt{2}\)\(2+\sqrt{2}\)的譜,構成所有正整數的劃分。

底和頂的遞迴式

  • \(K_0 = 1\);\(K_{n+1} = 1 + \min(2 K_{\lfloor \frac{n}{2} \rfloor}, 3 K_{\lfloor \frac{n}{3} \rfloor})\);證明\(K_n \ge n\)

    • 歸納法,需要證明\(K_n \ge n + 1\)
  • 約瑟夫問題新解(以 \(m = 3\) 為例):

    • 剛開始有\(n\)個人,每次有一個活下去就把他的標號+n。

      • 1和2變成\(n+1\),\(n+2\);4和5變成\(n+3\),\(n+4\)

      • \(3k+1,3k+2\)變成\(n+2k+1,n+2k+2\)

    • 用程式碼模擬(詳見課本);還可以換成方法加速

      • \(D_0^{(q)} = 1\)\(D_n^{(q)} = \lceil \frac{q}{q-1} D_{n-1}^{(q)} \rceil\)\(n > 0\)

      • \(J_q(n) = qn+1 - D_k^{(q)}\)\(k\)是最大的使得答案不是負數的值

mod:二元運算

  • \(x \mod{0} = x\)

  • \(c (x \mod{y}) = (cx) \mod{(cy)}\)

  • \(n = \lfloor \frac{n}{m} \rfloor + \lfloor \frac{n + 1}{m} \rfloor + ... \lfloor \frac{n + m - 1}{m} \rfloor\)

  • \(n = \lceil\frac{n}{m} \rceil + \lceil \frac{n - 1}{m} \rceil + ... \lceil\frac{n - m + 1}{m} \rceil\)

  • \(\lfloor mx \rfloor = \lfloor x \rfloor + \lfloor x + \frac{1}{m} \rfloor + ... \lfloor x + \frac{m - 1}{m} \rfloor\)

底和頂的和式

  • \(\sum_{0 \le k < n} \lfloor \sqrt{k} \rfloor\)

    • method1 : \(\sum_{m = 1}^{\sqrt{n}} ((m+1)^2 - m^2) m\)

    • method2 : \(\sum_{m=1}^{\sqrt{n}} n - m^2\),線性性質

  • \(\alpha\)是無理數,則\(\{n\alpha\}\)\(n->\infty\)時在[0,1)之間是一致分佈的

    • 可以直接當做積分?
  • \(\sum_{0 \le k < m} \lfloor \frac{nk + x}{m} \rfloor\)

    • 原式\(= \sum_{0 \le k < m} \lfloor \frac{x + nk~mod~m}{m} \rfloor + \frac{kn}{m} - \frac{kn~mod~m}{m}\).

      • 第二部分是個等差數列,\(\frac{(m-1)n}{2}\)

      • \(d = \gcd(n,m)\),則\(kn~mod~m\)會遍歷\(0,d,2d,...m-d\)。每個數出現\(d\)次。

      • 第三部分也是等差數列,\(- \frac{m-d}{2}\)

      • 第一部分:\(d*(\lfloor \frac{x}{m} \rfloor+ \lfloor \frac{x+d}{m} \rfloor + .... + \lfloor \frac{x+m-d}{m} \rfloor) = d \lfloor \frac{x}{d}\rfloor\)

    • 發現將\(n,m\)意義對調,答案不變。

      • 本質上這是在數座標軸在一條直線下方有多少點,\(n,m\)對調相當於轉座標軸。

數論

整除性

  • 拓展歐幾里得演算法

素數

  • 算術基本定理(唯一分解定理)

素數的例子

  • 素數有無窮多個

    • \(M = 2 \times 3 \times 5 \times .... \times P_n + 1\),與\(P_1,...,P_n\)全部互質,又多出一個“質數”(事實上不一定是質數)

    • \(e_n = e_1 e_2 ... e_{n-1} + 1 = e_{n-1}^2 - e_{n-1} + 1\)

      • 封閉形式:\(e_n = \lfloor E^{2^n} + \frac{1}{2} \rfloor\),\(E = 1.264\)
  • 梅森數

    • \(2^p - 1\)\(p\)是質數。但並不是所有梅森數都是素數。
  • 質數密度

    • 偶數比完全平方數更“稠密”,\(1-n\)\(\frac{n}{2}\)個偶數;有\(\sqrt{n}\)個完全平方數。

    • $P_n $ ~ \(n \ln n\)\(\pi(x)\) ~ \(\frac{x}{\ln x}\);故質數個數比偶數少,比完全平方數多。

階乘的因子

  • 階乘以指數方式增長:斯特林公式

  • \(\epsilon_p(n!) = \sum_{k \ge 1} \lfloor \frac{n}{p^k} \rfloor \le \frac{n}{p-1}\)

    • \(p=2\)時,\(\epsilon_2(n!) = n - v_2(n)\)\(v_2(n)\)為二進位制上1的個數
  • 素數有無窮個的另一種證明:

    • \(p^{\epsilon_{p}(n!)} \le p^{n/(p-1)} \le 2^n\)

    • 一個質數只能對\(n!\)產生\(2^n\)的貢獻,如果質數個數有限,取\(n\)足夠大就會產生矛盾

互素(Stern-Brocot樹)

  • 用於構造所有\(m \perp n\)的非負分數

  • 構造方式

    • 第一層只有\(\frac{0}{1}\)\(\frac{1}{0}\)

    • \(k+1\)層的分數構成 為 第\(k\)層的所有分數 加上 第\(k\)層相鄰兩個分數,分子和分母分別相加得到

      • \(\frac{m}{n},\frac{m'}{n'} -> \frac{m+m'}{n+n'}\)
  • 性質

    • 每一層的每對相鄰的分數都滿足\(m'n - mn' = 1\)

      • 歸納法,第一層是對的;每次\(\frac{m}{n},\frac{m'}{n'}\)會新建\(\frac{m+m'}{n+n'}\),分別驗證。
    • 為什麼\(\frac{n+n'}{m+m'}\)是最簡分數?

      • 利用拓展歐幾里得,因為\(m'n - mn' = 1\),說明\(ax+by=1\)成立,所以\(\gcd=1\).
    • 是否會重複出現分數?

      • 不存在的,這是一棵嚴格的二叉搜尋樹。因為$ \frac{m}{n} < \frac{m+m'}{n+n'} < \frac{m'}{n}$.
    • 是否有分數遺漏?

      • 不存在的,推導可證明:\(a+b \ge m'+n'+m+n\). 每一步右式都會增加,在\(a+b\)步以內就可以找到解。

      • 該式說明:\(\frac{m'+m'}{m+n}\)是[\(\frac{m}{n}\),\(\frac{m'}{n'}\)]之間分子加分母和最小的分數???這可離不開第一條性質!

  • 應用

    • 分數定位

      • \(2 \times 2\)的矩陣存下每個分數的左右祖先,構造矩陣\(L\)\(R\)。到左兒子則右乘\(L\),右兒子則右乘\(R\).

      • 法一:每次右乘一個\(L,R\),判斷大小。

      • 法二:利用左乘。如果分子大,說明左乘了\(R\),不然左乘了\(L\)可以用倍增定位\(O(\log n)\).

    • 無理數定位

      • 用SB樹逼近和二分逼近效果差不多

        
        if a < 1 then
        
        output(L)
        
            a = a/(1-a)
        
        else
        
        output(R)
        
        a = a - 1
        
  • 拓展:Farey級數

    • 階為\(N\)的法裡級數為\(F_N\),它由所有分母不超過\(N\)的最簡分陣列成。

    • \(F_N\)構造:從\(F_{N-1}\)繼承,在\(F_{N-1}\)中相鄰\(\frac{m}{n}\)\(\frac{m'}{n'}\),滿足\(n+n'=N\)的中間,加入分母為N的數。

同餘關係

  • \(2^{2n} - 1\)是3的倍數,因為\(2^2 \pmod{3} = 1\)

  • $ad \equiv bd \pmod{md} $ 等價於 \(a \equiv b \pmod{m}\).

  • \(ad \equiv bd \pmod{m}\)等價於\(a \equiv b \pmod{\frac{m}{\gcd(m,d)}}\).因為剩下的因子可以用逆元除掉。

  • \(a \equiv b \pmod{m}\)\(a \equiv b \pmod{n}\),則\(a \equiv b \pmod{lcm(n,m)}\).因為\(a-b\)既是n的倍數也是m的倍數

獨立剩餘

  • 剩餘系\(Res(x) = (x \mod m_1, \cdots,x \mod m_r)\)\(m_i \perp m_j\).

    • 每個分量上可以獨立地進行運算,相當於高精度

    • 例子:計算大矩陣的行列式,選取若干質數,除法變成逆元;最後CRT合併起來!

  • CRT

    • 相當於要找到(1,0,0),(0,1,0),(0,0,1)這些分量對應的數;用拓展歐幾里得求出逆元。
  • \(x^2 \equiv 1 \pmod{m}\)解的個數

    • \(m\)分解成若干個\(p^k\),改寫成\((x-1)(x+1) \equiv 0 \pmod{p^k}\).

    • \(p \ne 2\)時,只有兩個解1和p-1

    • \(p=2\)時,若\(k=1\)解為1;\(k=2\)時解為1,3;\(k > 2\)時,\(x-1\)\(x+1\)可以都是2的倍數,但是不可能都是4的部分,所以其中一個要是\(2^{k-1}\)的倍數。所以有4個解。

    • \(r\)為質因子個數,答案為\(2^{r - [2|m]+[4|m]+[8|m]}\).

進一步的應用

  • \(0, n, 2n, 3n,....,(m-1)n \pmod{m}\)\(0,d,2d,...,m-d\)重複d遍;\(d = \gcd(n,m)\)

  • 費馬大定理:\(a^n + b^n = c^n\)\(n > 2\)時沒有正整數解

  • 費馬小定理:\(n^{p-1} \equiv 1 \pmod{p}\),\(n \perp p\)

    • 證明:\(n*2n*.....*(p-1)n \equiv (p-1)!\)
  • Miller_Rabin:驗證\(2^{32}+1\)是不是質數?

    • 若是質數,應用費馬小定理:$3^{2^{32}} \equiv 1 \pmod{2^{32}+1} $.矛盾
  • 威爾遜定理:\(n\)是質數時,\((n-1)! \equiv -1 \pmod{n}\)

    • 除了1和\(n-1\),其他數的逆元兩兩匹配,所以\((n-1)! \equiv n-1 \mod{n}\)

\(\varphi\)函式和\(\mu\)函式

  • 尤拉定理:\(n^{\varphi(m)} \equiv 1 \pmod{m}\)\(n \perp m\)

    • 拓展尤拉定理,處理\(n\)\(m\)不互質的情況。
  • 莫比烏斯反演:\(g = f * 1\)等價於\(f = g*\mu\)

    • 廣義莫比烏斯反演:\(g(x) = \sum_{d \ge 1} f(x / d)\)等價於\(f(x) = \sum_{d \ge 1} \mu(d) g(x / d)\)
  • 積性的傳遞性

    • \(g(m) = \sum_{d|m} f(d)\)

    • 左右任何一邊是積性函式,都可以推出剩下一邊是積性函式。

  • 杜教篩:求\(\Phi(x) = \sum_{1 \le k \le x} \phi(k)\)

    • \(\sum_{d \ge 1} \Phi(\frac{x}{d}) = \frac{x(x+1)}{2}\);考慮所有\(0 \le m < n \le x\)的分數,d為分子和分母的\(\gcd\).

    • 預處理小的\(\Phi(m)\),分塊遞迴求解,時間複雜度\(O(n^{\frac{2}{3}})\).

  • Polya經典題:求解長度為\(m\),顏色數為\(n\)的不同項鍊個數

    • 考慮一種項鍊會被計算多次:\(\frac{1}{m} \sum_{d | m} \phi(d) n^{\frac{m}{d}}\)

二項式係數

基本恆等式

  • 定義(此定義和之前的不一樣)

    • 當整數\(k < 0\)\(\binom{n}{m} = 0\),否則\(\binom{n}{m} = \frac{n^{\underline{m}}}{m!}\)

    • 當不是整數時,可以用廣義階乘,取極限;如\(\binom{\frac{1}{2}}{n}\)

  • 性質

    • \(\binom{-1}{k} = (-1)^k\)

    • \(n < 0\)時,\(\binom{n}{n} = 0\)

    • \(n<0\)時,不滿足對稱性\(\binom{n}{k} = \binom{n}{n-k}\)

    • 加法公式\(\binom{r}{k} = \binom{r-1}{k-1} + \binom{r-1}{k}\);由此可以拓展出\(r<0\)的情況。

  • 恆等式

    • 吸收恆等式:\(\binom{r}{k} = \frac{r}{k} \binom{r-1}{k-1}\)\(k \binom{r}{k} = r \binom{r-1}{k-1}\)

    • 對角線求和:\(\sum_{k \le n} \binom{r+k}{k} = \binom{r+n+1}{n}\)

    • 上指標求和:\(\sum_{0 \le k \le n} \binom{k}{m} = \binom{n+1}{m+1}\)

    • 二項式定理:\((x+y)^r = \sum_{k} \binom{r}{k} x^k y^{r-k}\)

    • 上指標反轉\(\binom{r}{k} = (-1)^k \binom{k-r-1}{k}\),當\(r\)是負數時可以用這種方法快速求解!!!

    • 同行交錯和\(\sum_{k \le m} \binom{r}{k} (-1)^k = \sum_{k \le m} \binom{k-r-1}{l} = \binom{-r}{m} = (-1)^m \binom{r-1}{m}\)

    • 雙選恆等式\(\binom{r}{m} \binom{m}{k} = \binom{r}{k} \binom{r-k}{m-k}\)

    • 範德蒙卷積\(\sum_{k} \binom{r}{k} \binom{s}{n-k} = \binom{r+s}{n}\)表5-3有多種形式,可以查表!

基本練習

  • \(\sum_{k} \binom{m}{k} / \binom{n}{k} = \frac{n+1}{n+1-m}\),雙選恆等式

  • \(\sum_{k} k \binom{m-k-1}{m-n-1}/ \binom{m}{n} = \frac{n}{m-n+1}\),用吸收恆等式

  • \(Q_n = \sum_{k \le 2^n} \binom{2^n - k}{k} (-1)^k\),遞推式,找規律,有迴圈節

  • \(\sum_k k \binom{m-k-1}{m-n-1}\),把\(k\)寫成\(\binom{k}{1}\),用範德蒙卷積

  • \(\sum_{k} \binom{n}{k} \binom{s}{k} k = s \binom{n+s-1}{n-1}\),用吸收恆等式,再範德蒙卷積

  • \(\sum_{k} \binom{n+k}{2k} \binom{2k}{k} \frac{(-1)^k}{k+1}\),先用雙選恆等式,把\(2k\)去掉;再用吸收恆等式, 把\(\frac{1}{k+1}\)拿掉;然後上指標翻轉,最後範德蒙卷積

  • 問題七和問題八用和式代替一個組合數,技巧性太強;不如用後面的超幾何

處理的技巧

  • 取一半

    • \(r^{\underline{k}} (r - \frac{1}{2})^{\underline{k}} = (2r)^{\underline{2k}} / 2^{2k}\)

    • 由此可以推出:\(\binom{- \frac{1}{2}}{n} = (\frac{-1}{4})^n \binom{2n}{n}\)

  • 高階差分

    • \(\Delta f(x) = f(x+1) - f(x)\)\(\Delta^n f(x) = \sum_{k} \binom{n}{k} (-1)^{n-k} f(x+k)\)

    • 多項式可以用斯特林數改寫成下降冪多項式,稍作修改可以寫成牛頓級數:

      • \(f(x) = \sum_d c_d \binom{x}{d}\),牛頓級數的求導非常方便;書上還寫著一種\(O(n^2)\)的求牛頓級數係數的方法。

      • \(\sum_k \binom{n}{k} (-1)^k (a_0 + a_1k + ... + a_n k^n) = (-1)^n n! a_n\)

  • 反演

    • \(g(n) = \sum_{k} (-1)^k \binom{n}{k} f(k)\)等價於\(f(n) = \sum_{k} (-1)^k \binom{n}{k} g(k)\)

    • 二項式反演\(g(n) = \sum_{k} \binom{n}{k} f(k)\)等價於\(f(n) = \sum_{k} (-1)^{n-k} \binom{n}{k} g(k)\)

      • 本質就是令\(f'(n) = (-1)^n f(n)\)
    • 重排公式:\(D(n) = n! \sum_k \frac{(-1)^k}{k!}\)\(D(n) = \lfloor \frac{n!}{e} + \frac{1}{2} \rfloor + [n == 0]\)

生成函式

  • \((1+z)^r (1+z)^s = (1+z)^{r+s}\),該式子可以直接證明範德蒙恆等式

  • \((1-z)^r (1+z)^r = (1-z^2)^r\)\(\sum_k \binom{r}{k} \binom{r}{n-k} (-1)^k = (-1)^{n/2} \binom{r}{n/2}\)

  • \(\frac{1}{(1-z)^{n+1}} = \sum_{k \ge 0} \binom{n+k}{n} z^k\)\(\frac{z^n}{(1-z)^{n+1}} = \sum_{k \ge 0} \binom{k}{n} z^k\)

  • 乘上\(\frac{1}{1-z}\)相當於做字首和

  • 廣義部分待補

超幾何函式

  • 定義:\(F(a_1...a_m;b_1...b_n;z) = \sum_{k \ge 0} \frac{\prod a_i^{\bar{k}} z^k}{\prod b_i^{\bar{k}} k!}\)

  • 轉化:\(\frac{t_{k+1}}{t_k}\)是一個關於\(k\)的有理函式,分子作為上引數,分母作為下引數

  • 廣義階乘和\(\Gamma\)函式用於解釋退化的情況

  • 查表\(F(a,b;c;1)\)\(F(a,b,-n;c,a+b-c-n+1;1)\),SAA恆等式

超幾何變換

  • 超幾何函式通用解法就是查表,本章介紹幾種技巧拓展表庫

    • 反射定律;習題25、26
  • 求導,移位:

    • \(\frac{d}{dz} F(ai;bi;z) = \frac{a_1...a_m}{b_1...b_n} F(a_i+1;b_i+1;z)\)

    • \((\vartheta + a_1) F(a_1,...a_m;b_1...b_n;z) = a_1 F(a1+1,a_2,...,a_m;b_1...b_n;z)\)

    • \((\vartheta + b_1 -1) F(a_1,...a_m;b_1...b_n;z) = (b_1 - 1) F(a1,a_2,...,a_m;b_1-1,b_2...b_n;z)\)

    • \(\vartheta\)\(z \frac{d}{dz}\)操作

    • 這個技巧可以用於解微分方程

部分超幾何和式

  • 利用差分法,試圖找出函式滿足\(t_k = T_{k+1} - T_{k}\),從而可以求解\(\sum_{0 \le k \le n} t_k\)

  • \(Gosper\)演算法

    • 找出\(p(k),r(k),q(k)\),滿足\(\frac{t_{k+1}}{t_k} = \frac{p(k+1)}{p(k)} \frac{q(k)}{r(k+1)}\)

    • 求解\(s(k)\),滿足\(p(k) = q(k) s(k+1) - r(k) s(k)\)

    • 得到\(T(k) = \frac{r(k)s(k)t(k)}{p(k)}\)

機械求和法

  • 機械求和法是個非常繁瑣的演算法,用於求解給定n,對\(k\)\(0\)\(\infty\)求和。不能求\(k\)的部分和

  • 思路是定義新的函式,應用\(Gosper\)演算法,得到\(S_n\)的遞推式。

  • 詳見書上的例子。

特殊的數

斯特林數

  • 第一類斯特林數\([^n_k]\),第二類斯特林數\(\{ ^n_k \}\).

    • \(\{^n_k\} = k \{^{n-1}_k\} + \{^{n-1}_{k-1}\}\)

    • \([^n_k] = (n-1)[^{n-1}_k] + [^{n-1}_{k-1}]\)

    • \([^n_k] \ge \{^n_k\}\),等號成立,當且僅當\(k=n-1\)\(k=n\)

    • \(\sum_{k=0}^n [^n_k] = n!\)

  • 冪之間轉換(均可用歸納法證明)

    • \(x^n = \sum_k \{^n_k\} x^{\underline{k}}\)

    • \(x^{\bar{n}} = \sum_k [^n_k] x^k\)

    • \(x^{\underline{n}} = (-1)^n (-x)^{\bar{n}}\)

    • \(x^n = \sum_k \{^n_k\} (-1)^{n-k} x^{\bar{k}}\)

    • \(x^{\underline{n}} = \sum_k [^n_k] (-1)^{n-k} x^k\)

  • 反轉公式(應用兩次冪轉換公式即可)

    • \(\sum_k [^n_k] \{^k_m\} (-1)^{n-k} = [m=n]\)

    • \(\sum_k \{^n_k\} [^k_m] (-1)^{n-k} = [m = n]\)

  • 應用加法原則拓展至負數,有\([^n_k] = \{^{-k}_{-n}\}\)

  • 書上還有一大堆用於字首和、卷積的恆等式,可用於查表。

尤拉數

  • \(<^n_k>\)表示長度為\(n\)的排列\(\pi\),有\(k\)個位置滿足\(\pi_j < \pi_{j+1}\),即升高位置

    • \(<^n_k> = <^n_{n-1-k}>\)

    • \(<^n_k> = (k+1) <^{n-1}_{k}> + (n-k)<^{n-1}_{k-1}>\)

    • \(x^n = \sum_k <^n_k> \binom{x+k}{n}\),天吶,這個式子的組合意義是啥!!!

    • 書上還有一些奇奇怪怪的恆等式哦!還有一個通項式

  • 二階尤拉數:\(2n\)個數,\(k\)個上升,且每對\(x\)之間其他數都要大於\(x\)

    • \(<<^n_k>> = (k+1) <<^{n-1}_{k}>> + (2n-1-k)<<^{n-1}_{k-1}>>\)

    • \(\sum_k <<^n_k>> = \frac{(2n)^{\underline{n}}}{2^n}\)

  • 斯特林多項式(由書上的恆等式推出)

    • \(\sigma_n(x) = [^x_{x-n}] / (x(x-1) \cdots (x-n))\),其中\(\sigma_n(x)\)的次數為\(n-1\)

    • 斯特林多項式可以由二階尤拉數給出,於是可以處理係數為斯特林數的的生成函式的卷積。

調和數

  • \(H_n = \sum_{k=1}^n \frac{1}{k}\)

    • 發散,且\(\ln_n < H_n < \ln n+1\)
  • 例題:

    • \([^{n+1}_2] = n[^n_2]+[^n_1] = n[^n_2]+(n-1)!\)

    • 兩邊除以\(n!\),求遞迴式:\([^{n+1}_2] = n! H_n\)

  • \(r\)次調和數:\(H^{(r)}_n = \sum_{k=1}^n \frac{1}{k^r}\)

    • \(\ln(\frac{k}{k-1}) = - ln(\frac{k-1}{k}) = \frac{1}{k} + \frac{1}{2k^2} + \frac{1}{3k^3}+ \cdots\)

    • \(k\)從2-n求和:\(\ln n -\ln 1 = (H_n - 1) + \frac{1}{2} (H^{(2)}_n - 1) - .....\)

    • 移項後,可以估計\(H_n - \ln n\)的值,記為尤拉常數\(\gamma\)

調和求和法

  • \(\sum_{0 \le k < n} \binom{k}{m} H_k\)

    • 利用分部求和法,\(u(k) = H_k\)\(\Delta v(k) = \binom{k+1}{m+1} - \binom{k}{m+1} = \binom{k}{m}\)

    • 利用吸入恆等式

  • \(S_n = \sum_{1 \le k \le n} \frac{H_k}{k}\)

    • \(S_n = \sum_{1 \le j \le k \le n} \frac{1}{j*k} = \frac{1}{2} ( (\sum_{1 \le k \le n} \frac{1}{k})^2 + \sum_{1 \le k \le } \frac{1}{k^2} )\)

    • 第二章的技巧

  • \(U_n = \sum_{k \ge 1} \binom{n}{k} \frac{(-1)^{k-1}}{k} (n-k)^n\)

    • \((n-k)^n\)二項式展開,交換順序,轉化為高階差分,利用恆等式;得\(U_n = n^n (H_n - 1)\)

伯努利數

  • 求解冪和數

    • \(S_m(n) = \sum_{k=0}^{n-1} k^m = \frac{1}{m+1} \sum_{k=0}^m \binom{m+1}{k} B_k n^{m+1-k}\)

    • \(\sum_{j=0}^m \binom{m+1}{j} B_j = [m = 0]\)

    • 可以用擾動法+歸納法證明

  • 生成函式的定義:\(\frac{z}{e^z-1} = \sum_{n \ge 0} B_n \frac{z^n}{n!}\)

  • 用伯努利數為係數表示三角函式

    • \(\tan z = \sum_{n \ge 0} (-1)^{n-1} 4^n (4^n - 1) B_{2n} \frac{z^{2n-1}}{(2n)!}\)
  • 伯努利數和斯特林數的關係

    • \(S_m(n) = \sum_{j \ge 0} \{^m_j\} \frac{1}{j+1} \sum_{k \ge 0} (-1)^{j+1-k} [^{j+1}_k] n^k\)

    • 由此建立恆等式

斐波那契數

  • 恆等式

    • \(F_{n+k} = F_k F_{n+1} + F_{k-1} F_n\);考慮走樓梯

    • \(F_{2n} = F_n F_{n+1} F_n F_{n-1}\);從而\(F_{2n}\)\(F_n\)的倍數,歸納可得\(F_{kn}\)\(F_n\)的倍數

    • \(\gcd(F_m,F_n) = F_{\gcd(m,n)}\);由上式推出

    • \(\sum_{k=0}^n F_k = F_{n+2} - 1\);歸納即可

    • \(\sum_{k=1}^n F_k^2 = \sum_k F_k (F_{k+1} - F_{k-1}) = F_{n+1} F_n\);裂項相消

    • \(F_n = \frac{1}{\sqrt{5}}(\phi^n - \hat{\phi^n})\);其中\(\phi = \frac{\sqrt{5} + 1}{2}\),為黃金分割

    • \(F_{n+1} = \sum_{k=0}^n \binom{n-k}{k}\)

  • 斐波那契數系

    • \(j >> k\) 等價於\(j \ge k +2\)

    • 每個整數都有唯一的表示:\(n = F_{k_1} + F_{k_2} + ..... + F_{k_r}\)

    • \(n = (b_mb_{m-1}\cdots b_2)_F\),因為\(b_1=b_2=1\),從2開始表示唯一

    • 能表示的最大值為\(F_{m+2} - 2\)

    • 斐波那契奇數是指表示中,最後一位是1的數;偶數類似。

連項式

  • 定義

    • \(K() = 1\)

    • \(K(x_1) = x_1\)

    • $K_n(x_1,\cdots,x_n) = K_{n-1}(x_1,\cdots, x_{n-1}) x_n + K_{n-2}(x_1,\cdots,x_{n-2}) $

  • 性質

    • \(K_n(1,1,...,1) = F_{n+1}\)

    • 摩爾斯碼:相當於可以放一些長度為2的多米諾骨牌;如果\(x_i\)不在,必然有相鄰的\(x_{i+1}\)或者\(x_{i-1}\)與之對應

    • \(K_n(z,z, \cdots, z) = \sum_{k=0}^{n} \binom{n-k}{k} z^{n-2k}\)

    • \(K_n(x_n,...,x_1) = K_n(x_1,...,x_n)\)

    • \(K (x_1,...x_m,x_{m+1},...x_{m+n})= K(x_1,...x_m) K(x_{m+1},...,x_{m+n}) + K(x_1,...,x_{m-1}) K(x_{m+2},...x_{m+n})\)

  • 連項式與連分數

    • \(a_0 + \frac{1}{a_1 + \frac{1}{a_2 + \frac{1}{a3}}} = \frac{K(a_0,a_1,a_2,..,a_3)}{K(a_1,a_2,a_3,)}\);歸納之

    • \(\frac{K(a_0,a_1,a_2,a_3+1/a_4)}{K(a_1,a_2,a_3+1/a_4)} = \frac{K(a_0,a_1,a_2,a_3,a_4)}{K(a_1,a_2,a_3,a_4)}\);將連分數最後一位變化

  • 連項式與Stern-Brocot樹

    • 假設一個分數為\(R^{a_0},L^{a_1},R^{a_2},L^{a_3} ... R^{a_{n-2}}L^{a_{n-1}}\)

    • \(F(R^{a_0}L^{a_1}R^{a_2}L^{a_3} ... R^{a_{n-2}}L^{a_{n-1}}) = \frac{K(a_0,a_1,...a_{n-1},1)}{K(a+1....a_{n-1},1)}\)

    • 由此可以在連分數和SB樹之間快速轉換

生成函式

多米諾理論與換零錢

  • 用多米諾骨牌鋪3*n矩形

    • \(U_n\)表示\(3 \times n\)的方案,\(V_n\)表示\(3 \times n\)缺一角的方案

      • \(U_n = 2 V_{n-1} + U_{n-2} + [n == 0]\)

      • \(V_n = U_{n-1} + V_{n-2}\)

    • 寫成生成函式

      • \(U(x) = 2x V(x) + x^2 U(x) + 1\)

      • \(V(x) = x U(x) + x^2 V(x)\)

    • 求解

      • \(V(x) = \frac{x}{1-x^2} U(x)\)

      • $U(x) = 1 + \frac{2x^2}{1-x^2} U(x) + x^2 U(x) $

    • 若將\(U(x)\)的封閉形式展開,可以得到\(U_n\)的封閉形式;最後通過組合式的恆等式還可以化簡

  • 換零錢

    • 和OI經典題“食物”類似

    • 有無限個價值為\(m\)的硬幣,其生成函式為\(1+x^m+x^{2m}+.....=\frac{1}{1-x^m}\)

  • 劃分數

    • \(\frac{1}{(1-z)(1-z^2)(1-z^3).....}\)\(z^n\)前係數為\(n\)的劃分數,意義為用無窮個1-n湊成\(n\)的方案數

基本策略

  • 運算

    • 收斂性不作要求,因為變數\(z\)僅僅表示一個特徵,我們只在乎\(z^n\)前的係數

    • 左移時,要把低位“減掉”,再除以\(z^m\)

    • \(G(cz) = \sum_n g_n c^n z^n\)\(G(z^m) = \sum_n g_n z^{nm}\)

    • 求導;求導+右移(每一位乘上\(n\));積分;左移+積分(每一位除以n)

    • 卷積

    • 字首和:乘上\(\frac{1}{1-z}\)

  • 常見生成函式

    • <1,-1,1,-1,1,-1,1,-1,......>;\(\frac{1}{1+z}\)

    • <1,0,1,0,1,0,1,0,.......>; \(\frac{1}{1-z^2}\)

    • <1,2,4,8,16,....>;\(\frac{1}{1-2z}\)

    • <1,4,6,4,1,0,0,...>; \((1+z)^4\)

    • <1,c,\(\binom{c+1}{2}\),\(\binom{c+2}{3}\),.....>;\(\frac{1}{(1-z)^c}\)

    • <0,1,1/2,1/3,1/4,.....>;\(\ln \frac{1}{1-z}\);積分

    • <0,1,-1/2,1/3,-1/4,....>; \(\ln(1+z)\);積分

    • <1,1,1/2,1/6,1/24,.....>;\(e^z\)

  • 提取

    • \(\frac{G(z) + G(-z)}{2}\)提取偶數項

    • \(\frac{G(z) - G(-z)}{2}\)提取奇數項

解遞迴式

  • 再探斐波那契數

    • \(g_n = g_{n-1} + g_{n-2}+[n=1]\);寫遞迴式時要注意寫出邊界項

    • \(G(z) = z G(z) + z^2 G(z) + z\) ;可推出\(G(z) = \frac{z}{1-z-z^2}\)

    • 求解部分分式\(R(z) = \frac{P(z)}{Q(z)}\)

      • \(\frac{a}{(1-pz)^{m+1}} = \sum_{n \ge 0} \binom{m+n}{m} a p^n z^n\)

      • 目標將\(R(z)\)轉化成:\(\sum_i \frac{a_i}{(1-p_i z)^{m_i + 1}}\);就可以得到\(g_n\)的封閉形式

      • 假設\(Q(z) = q_0 + q_1 z + .... + q_m z^m\),則令\(Q^R(z) = q_0 z^m + q_1 z^{m-1} + .... q_m\)

      • 求解\(Q^R\)的根,即\(Q^R(z) = q_0 (z-p_1)...(z-p_m)\),則\(Q(z) = q_0 (1-p_1 z)...(1-p_mz)\)

      • 既然求出分母的根,然後將其拆成\(\frac{..}{1-p_1z}+....\frac{..}{1-p_mz}\)

      • 當根互不相同時,可以用高斯消元?或者用書上的定理。

    • 事實上,求解部分分式的過程就是解特徵方程

  • 帶幾分隨機的遞迴式

    • \(g_n = g_{n-1} + 2g_{n-2}+(-1)^n[n \ge 0] + [n=1]\)

    • 解得\(G(z)=\frac{1+z+z^2}{(1-2z)(1+z)^2}\);用書上另一個公式來對有重根的分母進行部分分式

  • 互相遞迴的數列(和解方程類似)

  • 換零錢封閉形式(用於OI題,類似於Code Chef的CHANGE)

  • 發散級數(超幾何解微分方程)

  • 完全返回的遞迴式

    • 求解扇形的生成樹數量

    • 分析最後一個頂點的連邊,可得

      • \(f_n = f_{n-1} + \sum_{k < n} f_k + [n > 0]\)
    • 字首和用乘上\(\frac{1}{1-z}\)表示:

      • \(F(z) = z F(z) + F(z) \frac{z}{1-z} + \frac{z}{1-z}\)
    • 求部分分式,得\(f_n = F_{2n}\),即偶數位斐波那契數列

特殊的生成函式

  • 表7-3給出各種係數為特殊數的生成函式,包括斯特林數、尤拉數、伯努利數

  • \(\frac{1}{(1-z)^{m+1}} \ln \frac{1}{1-z} = \sum_{n \ge 0} (H_{m+n}- H_m) \binom{m+n}{n} z^n\)

    • \(\frac{1}{(1-z)^{x+1} } = \sum_n \binom{x+n}{n} z^n\)

    • 左邊:\((1-z)^{-x-1}=e^{(x+1)\ln(1/(1-z))}\),微分後,為\(\frac{1}{(1-z)^{m+1}} \ln \frac{1}{1-z}\)

    • 右邊:\(\binom{x+n}{n}\)微分後,為\((\frac{1}{x+1} + \frac{1}{x+2} .... \frac{1}{x+n})\),等於\(H_{x+n} - H_x\)

    • 對複雜的乘積求微分,通常將原式保留,並提取出係數,比直接寫成和式方便。

  • 特殊情況:\(\frac{1}{1-z} \ln \frac{1}{1-z} = \sum_n H_n z^n\)

卷積

  • 斐波那契卷積

    • \(\sum_{k=0}^n F_k F_{n-k}\)等價於\(F^2(x)[z^n]\)
  • 調和卷積

    • \(T_{m,n} = \sum_{0 \le k < n} \binom{k}{m} \frac{1}{n-k}\)

    • \(\sum_{n \ge 0} \binom{n}{m} z^n = \frac{z^m}{(1-z)^{m+1}}\),且\(\sum_{n > 0} \frac{z^n}{n} = \ln \frac{1}{1-z}\)

    • \(T_{m,n} = [z^n]\frac{z^m}{(1-z)^{m+1}} \ln \frac{1}{1-z} = (H_n - H_m) \binom{n}{n-m}\)

  • 卷積的卷積

    • 之前的扇形生成樹個數,可以認為有一些鏈,需要從根向他們連邊。

    • \(f_n = \sum_{m > 0} \sum_{k_1+...+k_m=n} k_1k_2...k_m\)

    • \(F(z) = G(z) + G(z)^2 + G(z)^3 + .... = \frac{G(z)}{1-G(z)}\)

  • 卷積的遞迴式

    • 卡特蘭數的括號解釋:\(C_n = \sum_k C_k C_{n-1-k} + [n = 0]\)

    • \(C(z) = z C^2(z) + 1\),解得\(C(z) = \frac{1 (+/-) \sqrt{1-4z}}{2z}\);加或減

    • 當取+號時,\(C(0)\)是無窮,與事實不符;所以為減

    • 用廣義二項式展開\(\sqrt{1-4z}\),可以得到卡特蘭數公式:\(C_n = \binom{2n}{n} \frac{1}{n+1}\)