到Gamma函數(shù):唯一性與鏈式展開的幾何直覺)
1. 從一個不收斂的級數(shù)說起解析延拓到底在干什么先看一個簡單到不像話的冪級數(shù)[ f(z)1zz^2z^3\cdotsz^n\cdots ]只要稍微學過復變函數(shù)就會立刻算出收斂半徑是 1。也就是說當 (|z|1) 時這個級數(shù)老老實實收斂到了 (|z|1) 邊界就開始不老實超過邊界直接發(fā)散。很多教材在講“4.1 解析延拓”之前都會先拿這個例子開刀。我第一次看到這個操作的時候整個人是愣住的——你憑什么把一個在單位圓盤外根本不收斂的級數(shù)繼續(xù)往遠處“編”出值來這是不是數(shù)學家在自說自話答案是還真不是。解析延拓不靠猜、不靠拍腦袋它靠的是“局部信息決定全局”這條鐵律。這篇文章就是想把這件事徹底講透。我會從一個幾何級數(shù)出發(fā)把延拓的動機講清楚再解釋背后的唯一性定理、實操時怎么一步步做鏈條式展開最后用對數(shù)函數(shù)、Gamma 函數(shù)、Zeta 函數(shù)三個經(jīng)典案例收尾順帶把最容易踩的坑都列出來。如果你是剛學復變函數(shù)的學生或者工作中經(jīng)常和積分、級數(shù)、特殊函數(shù)打交道的工程師這段內(nèi)容值得靜下心讀一遍。核心問題放在最前面冪級數(shù)只是一個函數(shù)的“局部身份證”而解析延拓要做的是憑這張身份證把這個人找出來。1.1 收斂圓盤擋住的只是級數(shù)不是函數(shù)本身很多人會產(chǎn)生一種根深蒂固的誤解級數(shù)在哪兒收斂函數(shù)就在哪兒定義。這種想法不能算錯但它把“函數(shù)”和“函數(shù)的某一種表達形式”混淆了。舉個例子上面那個幾何級數(shù)如果你只知道它本身它的收斂域確實只有單位圓盤。但學過等比數(shù)列求和就知道當 (|z|1) 時這個級數(shù)的和是 (1/(1-z))。而 (1/(1-z)) 這個表達式明明在 (z1) 以外的所有復數(shù)點上都有定義。兩個對象在單位圓盤內(nèi)完全相等憑什么出了圓盤(1/(1-z)) 能算級數(shù)卻不能算更準確地說級數(shù)在圓盤外確實發(fā)散所以不能繼續(xù)用“求和”的方式算但級數(shù)想表達的那個“函數(shù)”未必不能延伸過去。(1/(1-z)1zz^2\cdots) 這個等式只在圓盤內(nèi)成立可函數(shù)本身被這個等式唯一決定了而它其實活得好好的幾乎遍布整個復平面。這時候你可能會說“不對啊如果我不知道 (1/(1-z)) 這個閉式只知道級數(shù)豈不是一點辦法都沒有”問得好。這正是解析延拓真正的技術(shù)難點我們往往沒有一個已知的閉式可以套只能在局部一點點往外拱。下一節(jié)就來看這個“拱”的動作到底怎么做。1.2 在圓盤內(nèi)部換個圓心重新展開一個小技巧就能越界假設(shè)我們手里只有級數(shù) (f(z)1zz^2\cdots)不知道閉式。怎么把函數(shù)定義到 (|z|1) 的區(qū)域去思路是在目前已知的收斂圓盤內(nèi)找一個新圓心 (a)把函數(shù)在 (a) 附近重新做泰勒展開。只要新圓盤和舊圓盤有重疊新舊兩個級數(shù)在重疊區(qū)域就必須表示同一個函數(shù)而新的收斂圓盤完全有可能比舊圓盤更大或者更準確地說覆蓋到原先收斂范圍之外的區(qū)域。拿 (a-\frac12) 來算一遍。因為 (f(z)1/(1-z))所以函數(shù)在 (za) 處的泰勒展開為[ f(z)\sum_{k0}^{\infty}\frac{1}{(1-a)^{k1}}(z-a)^k ]代 (a-\frac12)得到[ f(z)\sum_{k0}^{\infty}\left(\frac{2}{3}\right)^{k1}\left(z\frac12\right)^k ]這個新級數(shù)的收斂半徑是多少看系數(shù)就夠公比是 (\frac23(z\frac12))所以收斂條件是[ \left|\frac23\left(z\frac12\right)\right|1 \Rightarrow |z\frac12|\frac32 ]也就是說新級數(shù)在以 (-\frac12) 為圓心、半徑 (1.5) 的圓盤內(nèi)收斂。原來的圓盤是 (|z|1)圓心在原點新的圓盤圓心向左挪到了 (-0.5)半徑變成了 (1.5)。這兩個圓盤有大量重疊而新圓盤的左半邊已經(jīng)明顯伸出了舊圓盤的范圍。比如 (z-1.2)它到原點的距離是 (1.2)原先的級數(shù)在這里根本不收斂但它到新圓心 (-0.5) 的距離只有 (0.7)新級數(shù)可以毫無壓力地取值。就這樣原本“過不去”的區(qū)域換了個圓心就過去了。如果重復這個過程在新的圓盤里再找一個點作圓心再展開一次就能一步步延伸到更遠的地方。理論上只要繞開奇點 (z1)最終可以到達復平面上任意一個角落。這就是解析延拓最樸素、最原始的形態(tài)一串互相重疊的圓盤像鏈條一樣把函數(shù)的定義域越撐越大。1.3 走出局部視野后你會看到一個被“隱藏”的全局函數(shù)從上面的操作可以看出解析延拓的本質(zhì)是“用局部表示去逼近全局存在”。我們一開始只知道函數(shù)在一個小圓盤內(nèi)長什么樣但這個小圓盤內(nèi)的信息并沒有想象中那么“小”它像一塊拼圖碎片邊緣的花紋已經(jīng)暗示了整幅圖的走向。這一點在幾何級數(shù)例子里看得特別清楚。通過換圓心展開我們最終會意識到原來的函數(shù)就是 (1/(1-z)) 在單位圓盤內(nèi)的表示奇點只有一個就是 (z1)。所以這個級數(shù)能延拓到 (z1) 以外的所有地方這不是巧合。但這里有一個非常關(guān)鍵的哲學問題憑什么從一個局部發(fā)源最后只能得到一個唯一的全局函數(shù)如果我選擇另外一條路徑、換另外一個圓心展開會不會得到不同的結(jié)果如果會那延拓不就亂套了嗎如果你也想到了這一步說明你已經(jīng)摸到了解析延拓最核心的門檻。下一節(jié)就來聊這個唯一性問題的答案。2. 解析延拓憑什么唯一先搞懂全純函數(shù)的“剛性”要回答延拓為什么唯一不能停留在“因為教材這么說”得先理解復變函數(shù)里一個經(jīng)常被忽略的性格特點全純函數(shù)非常“剛性”。所謂剛性就是局部的微小信息一旦確定整個函數(shù)的行為就被鎖死了。2.1 復可導比實可導苛刻太多于是局部信息成了“緊箍咒”回憶一下定義一個函數(shù) (f) 在區(qū)域內(nèi)可導指的是復極限[ \lim_{h\to 0}\frac{f(zh)-f(z)}{h} ]存在。這里的 (h) 是復數(shù)它可以從四面八方逼近 0。跟實分析里導數(shù)只需要左右兩個方向逼近不同復導數(shù)要求函數(shù)在一個平面區(qū)域內(nèi)都滿足同樣的線性逼近關(guān)系。這個條件極其苛刻苛刻到只要函數(shù)在一個開集內(nèi)可導一次它就自動無窮次可導并且在每一點都能展開成收斂的冪級數(shù)。擁有這種性質(zhì)的函數(shù)叫作全純函數(shù)。全純函數(shù)內(nèi)部藏著一套極強的約束任意兩個全純函數(shù)如果它們在一個含有聚點的小集合上取值相同那么它們在整個連通區(qū)域內(nèi)都完全相同。這個結(jié)論通常被叫做解析延拓的唯一性定理它是整個理論的基石。對比一下實數(shù)域的情況你就能感受到差別。在實軸上你可以構(gòu)造出一個無窮次可導、在某個點附近卻是一個“平臺”導數(shù)全部為 0的光滑函數(shù)。比如[ g(x)\begin{cases} e^{-1/x^2}, x0\ 0, x\le 0 \end{cases} ]這個函數(shù)在原點附近異常平滑所有階導數(shù)都等于 0。如果只看原點右側(cè)的一小段你幾乎無法判斷它左邊是 0 還是別的樣子。但復變函數(shù)世界里沒有這種靈活性。函數(shù)之間只要有一小段重疊就會像兩塊燒紅的金屬焊在一起再也分不開。唯一性定理最直接的應(yīng)用就是解釋“為什么不同路徑延拓的結(jié)果不會沖突”。假設(shè)從同一個初始圓盤出發(fā)沿著兩條路徑分別延拓到同一個目標點最終得到兩個不同的值。如果這兩條路徑圍成的區(qū)域整體包含在一個單連通區(qū)域內(nèi)且中間沒有奇點阻斷那么你可以把兩條路徑得到的兩個函數(shù)拿來對比它們在起點附近的小鄰域內(nèi)完全重合唯一性定理強迫它們在重疊區(qū)域內(nèi)也必須一樣于是兩個值只能相等。這就是“局部決定全局”在技術(shù)層面的具體體現(xiàn)。2.2 收斂半徑不是一堵實心的墻奇點才是真正的障礙很多讀者會有一個疑問既然冪級數(shù)換一個圓心就能擴大定義域那收斂半徑還有什么意義為什么第一次不直接在更遠的地方展開答案是你沒有辦法在“函數(shù)還沒有定義的地方”展開。展開新的冪級數(shù)時新圓心必須選在已知收斂域內(nèi)部否則連函數(shù)值都不知道求導和求和都無從談起。所以收斂半徑事實上規(guī)定了“當前這張身份證”能管多遠。但收斂半徑本身并不是函數(shù)的邊界。一個冪級數(shù)的收斂半徑等于從圓心出發(fā)到“最近的障礙物”的距離。這個障礙物可能是極點、本性奇點、支點也可能是某個無法繞開的空白。幾何級數(shù)在 (z1) 有一個一階極點所以它在原點展開時收斂半徑正好是 1。但是你看函數(shù)在 (z-1)、(zi)、(z2i) 這些地方都好好的級數(shù)只是到了 (|z|1) 的邊界就發(fā)散了這是因為收斂圓盤被 (z1) 這個最近的奇點“卡”住了。一個更準確的結(jié)論是冪級數(shù)的收斂圓周上至少存在一個奇點使得函數(shù)不可能解析地穿過那一點。否則如果圓周上處處都能向外延拓利用圓周的緊致性一定能找到有限個鄰域覆蓋它最后把整個圓盤向外擴大一點這就會與收斂半徑的極大性矛盾。這個性質(zhì)說明收斂圓盤不是一堵實心的墻而更像一個氣球氣球壁會在某些點奇點被頂住但只要你繞開這些點氣球還能繼續(xù)膨脹。所以真正的障礙是奇點而不是級數(shù)本身。在解析延拓的語境下你首先要會判斷一個障礙是哪種類型。孤立奇點分為可去奇點、極點、本性奇點非孤立奇點或者支點又是另外一回事。極點不是不能繞本性奇點也可以從旁邊繞開但如果你想在包含該點的單連通區(qū)域里獲得單值全純函數(shù)那就做不到。這也是為什么許多解析函數(shù)最終的定義域會被迫開“洞”。2.3 解析元素與鏈式展開標準教科書里那套“圓盤接圓盤”的流程如果你要真的動手做一次解析延拓不會只是泛泛地說“選一個新圓心繼續(xù)展開”而是需要把過程規(guī)范化。這里先介紹兩個術(shù)語后面會反復用到。第一個術(shù)語叫“解析元素”簡單說就是“一個圓盤 圓盤上的一個冪級數(shù)”。一個正在被延拓的函數(shù)在任何時刻都可以看成由一個解析元素代表。第二個術(shù)語叫“直接解析延拓”如果兩個解析元素的圓盤有交集并且它們在這個交集上處處相等那么這兩個解析元素就是彼此的直接延拓。完整延拓一個函數(shù)到目標點 (z^*)標準流程分四步在初始已知點附近取定一個解析元素 ((f_0,D_0))。畫一條從 (D_0) 內(nèi)某點出發(fā)、終點為 (z^*) 的連續(xù)路徑并確保路徑繞開所有奇點。沿這條路徑選一串小圓盤 (D_0,D_1,\dots,D_n)要求相鄰圓盤兩兩相交后一個圓盤的圓心落在前一個圓盤內(nèi)部。在每個新圓盤內(nèi)用前一個圓盤里的信息做泰勒展開得到新的解析元素一路做到目標點。第 3 步是整個流程的靈魂。后一個圓心必須落在前一個圓盤內(nèi)部而不是任意選取。原因很簡單只有在前一個圓盤內(nèi)部你才知道函數(shù)值和各階導數(shù)才能放心做泰勒展開如果新圓心已經(jīng)跑出已知范圍那展開就無從談起。所以整個延拓過程是“摸著石頭過河”每一步都必須留下足夠的重疊區(qū)作為證據(jù)證明兩個局部表示確實屬于同一個函數(shù)。在實際計算中你當然不會真的在計算機里鋪幾百個圓盤。多數(shù)時候只要找到一個已知的積分表達式、微分方程或函數(shù)方程然后去驗證它在新區(qū)域內(nèi)滿足同樣的局部性質(zhì)延拓就完成了。但理解“圓盤鏈”這個幾何圖像依然很重要因為很多定理、反例和邊界行為都建立在這個圖像之上。等后面看到對數(shù)函數(shù)繞一圈回不到原點時你還會感謝現(xiàn)在鋪下的這個概念基礎(chǔ)。3. 手把手做三次延拓幾何級數(shù)、對數(shù)函數(shù)、Gamma 函數(shù)理論說了這么多不親手算一次總是隔著一層。這一節(jié)選三個有代表性的例子難度遞進覆蓋了“簡單級數(shù)延拓”“多值函數(shù)延拓”“積分表示延拓”三種典型場景。3.1 實操前先記住兩條判斷法則在進入例子之前我先給兩條很實用的經(jīng)驗法則。這不算嚴謹定理但能幫你少走很多彎路。第一條如果你在某個局部區(qū)域能找到另一個已知函數(shù)比如有理函數(shù)、特殊函數(shù)、積分式和當前函數(shù)完全相等那么直接把這個已知函數(shù)“移”到更大區(qū)域去用是合法的前提是兩邊在重疊區(qū)域沒有任何分歧。唯一性定理保證了只要重疊部分相等結(jié)果就不會錯。第二條如果找不到閉式只能老老實實做圓盤鏈。但每前進一步都要檢查新級數(shù)的收斂半徑確認新圓盤覆蓋到了舊圓盤之外的區(qū)域。如果新圓盤反而縮水了那說明這個圓心選得不好換個更合適的位置再來。另外記一個常用結(jié)論把 (1/(1-z)) 在任意非奇點 (a) 處展開的級數(shù)是 (\sum_{k\ge0}(z-a)^k/(1-a)^{k1})收斂半徑是 (|1-a|)。這個公式在后面的第一個例子里會反復用到。3.2 例子一幾何級數(shù)的“越界”全過程回到最初的級數(shù) (f(z)1zz^2\cdots)它在 (|z|1) 內(nèi)收斂?,F(xiàn)在我想求 (z-1.2) 處的值。注意這個點距離原點 1.2原始級數(shù)在這里絕對發(fā)散直接套級數(shù)公式是錯的。但如果用延拓的思維一切就合理了。第一步把函數(shù)寫成收斂半徑內(nèi)的形式 (f(z)1/(1-z))。第二步找一個離目標點足夠近、但又還在已知圓盤內(nèi)的新圓心。剛才用過的 (a-\frac12) 正好合適因為 (-1.2) 到 (-0.5) 的距離只有 0.7遠小于新級數(shù)收斂半徑 1.5。于是把 (a-\frac12) 帶入展開公式[ f(z)\sum_{k0}^{\infty}\left(\frac{2}{3}\right)^{k1}\left(z\frac12\right)^k ]現(xiàn)在代入 (z-1.2)[ z\frac12-0.7 ]公比為[ \frac{2}{3}\times(-0.7)-\frac{7}{15} ]它的絕對值小于 1所以新級數(shù)收斂。算出來的值等于[ \sum_{k0}^{\infty}\frac23\left(-\frac{7}{15}\right)^k \frac{2/3}{17/15} \frac{2/3}{22/15} \frac{5}{11} ]另一方面直接算 (1/(1-(-1.2))1/2.25/11)結(jié)果完全一致。這個過程相當于原來的級數(shù)在 (-1.2) 處“查無此定義”但通過換圓心我們借道 (-0.5) 這個中轉(zhuǎn)站悄悄把函數(shù)值延伸了過去。如果你覺得這個例子有點簡單因為我們已經(jīng)提前知道閉式 (1/(1-z))那你可以換個角度理解這個例子的價值不在于算出答案而在于展示了“級數(shù)換圓心”的具體算術(shù)過程。要知道對于大部分沒有閉式的函數(shù)比如微分方程的解、特殊函數(shù)、隱式確定的函數(shù)你能依賴的恰恰就是這種“換圓心重展開”的笨辦法。練習幾何級數(shù)是為了把鏈條展開的肌肉記憶建立起來。3.3 例子二對數(shù)函數(shù)繞一圈竟然回不到原來的值如果說幾何級數(shù)的延拓是“順利走出國門”那么對數(shù)函數(shù)的延拓就是一堂“邊境沖突”課??紤]對數(shù)函數(shù)的主支 (\log z)其中規(guī)定在正實軸上取實數(shù)值即 (\log 10)。我們在 (z1) 附近做泰勒展開[ \log z\sum_{n1}^{\infty}\frac{(-1)^{n-1}}{n}(z-1)^n ]這個展開的收斂半徑是 1。為什么剛好是 1因為離圓心 1 最近的障礙是原點 (z0)而對數(shù)函數(shù)在原點有本性奇點一般的“支點”行為繞不過去。所以這個展開式在 (|z-1|1) 內(nèi)有效圓盤邊界剛好切到原點?,F(xiàn)在做一件很有挑釁意味的事沿著以原點為中心、半徑為 1 的單位圓走一圈。具體來說讓 (z(t)e^{it})從 (t0) 開始慢慢走到 (t2\pi)。在整個路徑上我們不一定能直接用最開始的泰勒級數(shù)因為走到 (zi)、(z-1) 這些點時(z-1) 的模已經(jīng)超過 1 了。我們需要在每個局部重新展開、把圓盤鏈一環(huán)一環(huán)接上去。這件事可以實際操作但更重要的是看清結(jié)果。如果每一步都要求 (\log z) 連續(xù)變化那么 (\log e^{it}) 的虛部就必須等于 (t)而不是主值約定里的 ((-\pi,\pi])。于是從 (t0) 出發(fā)走完一整圈回到 (z1) 時函數(shù)值是[ \log 12\pi i2\pi i ]出發(fā)之前明明是 0走了一圈回來變成了 (2\pi i)同一個點 (z1)同一個函數(shù)卻因為走的路不同得到了不同的值。這是不是說解析延拓的唯一性定理出問題了并不是。唯一性定理要求延拓所覆蓋的區(qū)域不能有“洞”。單位圓盤去掉原點以后區(qū)域不是單連通的對數(shù)函數(shù)在這個帶洞區(qū)域上繞行一周多值性就不可避免地暴露出來了。為了處理這種現(xiàn)象數(shù)學上引入了“黎曼面”的概念把每一圈延拓得到的不同函數(shù)值放在不同的“層”上同一個 (z) 在不同層對應(yīng)不同值。而在日常處理中更簡單的做法是在復平面上畫一條割線通常取負實軸強行規(guī)定函數(shù)不允許穿過割線這樣區(qū)域內(nèi)就變成單連通的對數(shù)也恢復成單值函數(shù)。對數(shù)函數(shù)的延拓揭示了一個非常重要的道理解析延拓的結(jié)果未必是一個單值函數(shù)它可能是一個多值函數(shù)在不同分支之間的連續(xù)流動。這個認知會幫你避開后續(xù)學習中很多的混亂。3.4 例子三Gamma 函數(shù)和 Zeta 函數(shù)教科書里的“名場面”如果說前兩個例子還停留在復變函數(shù)教材的入門章節(jié)那 Gamma 函數(shù)和 Zeta 函數(shù)的延拓就是把這項技術(shù)用到真正硬核對象上的經(jīng)典示范。先看 Gamma 函數(shù)。它最常見的定義是積分[ \Gamma(s)\int_0^{\infty}e^{-t}t^{s-1},dt ]這個積分在 (\operatorname{Re}(s)0) 時收斂。注意這里已經(jīng)把參數(shù) (s) 當作復數(shù)了而不是像概率論里那樣只考慮正實數(shù)。為什么要求實部大于 0因為在 (t\to 0) 時(t^{s-1}) 這一項會產(chǎn)生可積性問題只有 (\operatorname{Re}(s)0)積分在原點附近才不發(fā)散?,F(xiàn)在要把它延拓到整個復平面。一種干凈的寫法是把積分拆成兩段[ \Gamma(s)\int_0^{1}e^{-t}t^{s-1},dt\int_1^{\infty}e^{-t}t^{s-1},dt ]第二段積分在任意復數(shù) (s) 下都沒問題因為 (e^{-t}) 在無窮遠處指數(shù)衰減壓得住任何冪次 (t^{s-1})。真正的麻煩全在第一段。把 (e^{-t}) 展開成冪級數(shù)[ e^{-t}\sum_{n0}^{\infty}\frac{(-1)^n}{n!}t^n ]于是第一段積分變成[ \int_0^{1}\sum_{n0}^{\infty}\frac{(-1)^n}{n!}t^{sn-1},dt \sum_{n0}^{\infty}\frac{(-1)^n}{n!(sn)} ]看到這個級數(shù)延拓就完成了一大半。右邊每一項在 (s-n) 處有一個一階極點在其他地方都是解析的整個級數(shù)在去掉非正整數(shù)點后局部一致收斂因此它定義了一個亞純函數(shù)。于是 Gamma 函數(shù)就從“只對 (\operatorname{Re}(s)0) 有定義的積分”變成了“在整個復平面上除了 (s0,-1,-2,\dots) 這些極點外都有定義的亞純函數(shù)”。這是一個非常漂亮的延拓極點位置直接從級數(shù)中暴露出來不需要額外背誦。再來看黎曼 Zeta 函數(shù)。它的經(jīng)典定義是 Dirichlet 級數(shù)[ \zeta(s)\sum_{n1}^{\infty}\frac{1}{n^s} ]這個級數(shù)只在 (\operatorname{Re}(s)1) 時絕對收斂。要把它延拓到整個復平面比 Gamma 函數(shù)更考驗技巧。最常用的方法之一是利用圍道積分。取一條從正實軸上的 (\infty) 出發(fā)、繞原點