麻煩究竟住在哪裡
上一篇指南留給我們一個不太舒服的事實:複對數是多值的,log z = ln|z| + i(arg z + 2 pi k) 對每個整數 k 皆成立。一整道垂直的答案值梯,彼此相隔 2 pi i,每一個都同樣合法。在能計算或求導之前,我們得釘住一個值;但首先應該問一個更銳利的問題:含混究竟從何而來?它並非均勻地散佈在整個平面上,而是高度集中的,而找出它的源頭正是馴服它的關鍵。
這裡有個你能在腦中進行的小實驗。站在 z = 1 處,可取 log 1 = 0,沿單位圓逆時針走一整圈,途中讓你的 log 值保持連續。模的部分 ln|z| 全程停在 ln 1 = 0——半徑從不改變。但輻角穩定攀升:在角度 theta 處你的值是 i theta。等你回到 z = 1 時,theta 已從 0 掃到 2 pi,於是 log 悄悄爬到了 2 pi i,而非回到 0。安靜地繞一圈,值就滑到了梯子的下一階。
現在把那個圈縮小。沿半徑 0.001 的小圓繞原點,或沿半徑一百萬的大圓繞——都沒有差別。任何環繞 z = 0 的圈都迫使輻角增加 2 pi、值跳變 2 pi i。任何不包圍原點的圈,都讓值安然回家。所以對數的全部缺陷,都繞著一個單獨的點旋轉,那就是原點,而這個點有個名字。
分支點:不可移動的樞軸
分支點正是這種特殊的點:你無法用一個小圈環繞它,而函數的值在你繞回來時不發生改變。它是多值性繞之旋轉的樞軸。對 log z 而言,唯一的有限分支點是 z = 0。判定的標準正是這種無法返回的現象:沿著環繞該點的閉圈走一圈,若連續追蹤的值落在與出發處不同的地方,你就繞過了一個分支點。
分支點帶有一個階,記錄要繞幾圈才能回家。平方根 sqrt(z) 在 0 處也有分支點,但繞一圈會翻轉它的符號、繞兩圈才還原其值——只有兩個分支,所以它是二階的分支點。對數更為極端:無論繞多少圈(任何有限次)都不會回到起始值,因為每繞一圈就永遠再添一個 2 pi i。這就是為何對數有時被稱為無窮階的分支點,也是它的值梯有無窮多階的結構性原因。
在精確的意義下,對數在無窮遠處也有一個分支點——沿一個大到包住一切的圓繞行,在黎曼球面上,等同於繞著無窮遠點繞行。對於具有數個有限分支點的函數,每個位置都各自重要。例如 sqrt(z^2 - 1) = sqrt((z - 1)(z + 1)) 在 z = 1 與 z = -1 處有分支點,而知道它們落在何處,是決定如何把它們圍起來的第一步。
支割線:拉起簾幕
解法美妙地直接。唯一破壞單值性的,是環繞分支點的圈——那就乾脆讓這種圈不可能存在。支割線是一條我們從平面上刪去的曲線,自分支點伸出,使得剩下區域內沒有任何路徑能繞著那個點轉圈。圈被禁止之後,一個連續的 log 單值便能存活在剩餘的區域上,永不自相矛盾。
想像那個切開的平面:取整個平面,去掉負實軸,即一條從 0 直直伸向負無窮的射線。現在試著繞原點畫一個圈——你做不到,因為每一個這樣的圈都得穿越那條被刪去的射線,而那條射線已不在那裡供人穿越。繞圈成了不可能之後,主輻角 Arg z 便能在從 -pi 到 pi 的半開範圍內,跨越整個切開的平面連續地選取,而對數也就在其上成為一個貨真價實的單值全純函數。
當一個函數有兩個有限分支點時,你有一個巧妙的額外選項。對 sqrt((z - 1)(z + 1)),你可以從 z = 1 與 z = -1 各畫一條向外的射線,但你也可以只切連接它們的有限線段,從 -1 到 1。這之所以可行,原因微妙而值得細品:同時包圍兩個分支點的圈會兩次拾起符號翻轉,而兩次翻轉相消,所以這樣的圈不造成矛盾。只切兩點之間,便擋住了只包圍單一分支點的圈——那些真正破壞單值性的圈——同時放過無害的大圈。
主分支:約定的預設
去掉一條割線,讓一個單值對數能存活在剩餘區域上,但這仍未說明該選哪個值——你還必須承諾採用對輻角的某一連續選取。在某個區域上對 log 所作的任何這樣一致、連續、單值的選取,都稱為對數的一個分支。這樣的分支有無窮多個,而在同一連通區域上,任兩個分支相差一個常數 2 pi i k。沒有哪一個比其他更正確;它們是同一棟樓的不同樓層。
從這個無窮的家族中,我們冊立一個預設,好讓符號 Log z 指稱某個確定的數。主對數以大寫的 L 書寫,是沿負實軸切開、並把輻角取在從 -pi(不含)到 pi(含)範圍內的那個分支:Log z = ln|z| + i Arg z。例如 Log 1 = 0、Log i = i pi/2、Log(-1) = i pi(我們取上端點 +pi),而 Log(1 + i) = (1/2) ln 2 + i pi/4。在正實軸上,Log z 退化為普通的實 ln,所以它確實延拓了你早已熟悉的對數。
Log z = ln|z| + i Arg z, with -pi < Arg z <= pi Log( 1 ) = 0 Log( i ) = i pi/2 Log(-1 ) = i pi (upper endpoint kept) Log(-i ) = -i pi/2 (NOT 3 pi i / 2) Log(1 + i) = (1/2) ln 2 + i pi/4 derivative: d/dz Log z = 1/z on the slit plane
割線上的傷疤,以及修復它的曲面
單值性並非免費。代價是一道受控的跨越割線的跳變:從一側與從另一側趨近割線上的點,會得到兩個不同的極限。這道跳變,是我們所壓制的多值性留下的可見傷疤;而一旦你知道它在那裡,便很容易讀出來。
- 固定割線上的一點,比方負實點 z = -2,此處 |z| = 2,故 Log 的實部全程為 ln 2。
- 從負軸正上方(上半平面)趨近:輻角趨向 +pi,故 Log 趨向 ln 2 + i pi。
- 從正下方(下半平面)趨近:輻角趨向 -pi,故 Log 趨向 ln 2 - i pi。
- 相減:兩個邊界值恰好相差 2 pi i——這是指數函數的週期,也是各分支之間的間距。實部 ln|z| 跨越割線時連續,只有輻角跳變。
這道跳變遠非麻煩,而是你日後會揮舞的工具。留數計算中的鎖孔圍道與啞鈴圍道刻意沿著割線的兩側行走;因為被積函數在兩側相差一個已知因子,兩段直線部分無法相消,而它們的差正是計算像 x^(a-1) / (1 + x) 從 0 到無窮的積分這類問題的關鍵。整套技巧都仰賴精確知道這個不連續,所以紀律很簡單:絕不讓圍道意外穿越割線,而當你刻意沿著它行走時,要把跳變算進去。
還有一個更優美、絲毫不丟棄任何資訊的解法。與其切開平面,不如想像把無窮多份切開的平面疊起來,把每一份的上緣黏到下一份的下緣,就像停車場裡一道無盡的螺旋坡道。在這個對數的黎曼曲面上,繞原點一圈會把你平滑地抬升到上一層樓——恰好就是你所獲得的那個 2 pi i——而對數也就成為一個處處沒有跳變的、單一而誠實的函數。割線與主分支是實用而壓平的圖像;螺旋曲面則是它們所逼近的整體真相。
為何這對下游的一切都至關重要
人們很容易把支割線歸入記帳瑣事而略過,但它們其實是承重的。一切建立在對數之上的東西,都繼承了它的分支點、支割線,以及選取分支的需求——尤以複數冪為甚,那正是下一篇指南的主題。一旦你寫下 z^a = e^(a log z),你就在重用對數,所以 z^a 因同樣的理由是多值的,而在你承諾了一個分支與一條割線之前,無法乾淨地計算它。
在離開之前說一句誠實的提醒。那些誘人的實變數恆等式並未原封不動地存活下來:Log(ab) = Log a + Log b 可能相差 2 pi i 的整數倍。一個乾淨的反例是 Log((-1)(-1)) = Log 1 = 0,而 Log(-1) + Log(-1) = i pi + i pi = 2 pi i。主對數雖是單值,卻不是同態——加法律只在相差 2 pi i 的意義下成立,正是這份不確定性開啟了整個故事。尊重割線、盯緊那個 2 pi i,多值的世界便不只變得可用,而是真正威力十足。