JOVANA
Explore Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

用一個函數的零點來分解它

一個多項式是它所有根上的 (z - 根) 之乘積——那麼一個全純函數能不能照樣只憑它的零點重新組裝起來?幾乎可以,而「幾乎」與「可以」之間那道誠實的縫隙,正是整套分解理論之所以名副其實的緣由。

我們想保留的那個多項式之夢

從一件你自最早的階梯起就信賴的事開始。代數基本定理說:一個 n 次多項式恰有 n 個根(按重數計算),而由此便推出我們人人喜愛的分解:p(z) = c (z - a_1)(z - a_2) ... (z - a_n),其中各 a_k 是根,c 是首項常數。多項式不過就是它的根重新組裝而成。知道 p 在哪裡為零——以及它在每一點消失得多麼厲害——就把 p 完全釘死了,只差那一個整體的伸縮。這有多乾淨,怎麼強調都不為過:零點就是那個函數。

本篇之夢——其實是整個階梯之夢——是要把那幅圖像對遠比多項式狂野的函數也保持鮮活。看看 sin(pi z)。它是整函數(在整個平面上全純),而你恰好知道它的零點:它在每個整數處消失,z = 0、+-1、+-2、+-3 等等,每個都是單零點。於是一個滿懷希望的人寫下多項式食譜似乎要求的東西:sin(pi z) 應當是某個常數乘以「對所有整數 k 取 (z - k)」的乘積。若這行得通,我們就把一個超越函數從它的零點分解出來了,恰如分解多項式一般——而且能從中讀出深刻的恆等式。問題是,這個天真的乘積並不收斂,而學會究竟該如何補救它,正是事情的核心。

零點究竟是什麼

在用零點分解之前,我們得先精確地說清楚:對一個全純函數而言,零點是什麼——而在這裡複分析遠比實變數的世界剛硬。從你已經見過的零點理論:若一個全純函數 f 不恆為零,那麼在任何使 f(a) = 0 的點 a 附近,它的泰勒級數從某個最低冪開始,f(z) = c_m (z - a)^m + c_(m+1) (z - a)^(m+1) + ...,其中 c_m 非零。那個整數 m 就是零點的階:它正是多項式裡重數的概念,如今套用到任何解析函數上。單零點有 m = 1,二重零點有 m = 2,依此類推。

天真的乘積,以及它為何失敗

於是這裡是最自然的第一次嘗試。把我們函數的零點 a_1、a_2、a_3、... 列出來(每個依其階數重複),並對因子 (1 - z/a_k) 作無窮乘積,每個因子在對應的 a_k 處消失。為什麼是 (1 - z/a_k) 而不是 (z - a_k)?因為上一篇我們學到,一個無窮乘積要收斂,它的因子必須趨於 1 而非 0——所以我們把每個因子正規化,使它在 z = 0 處等於 1。因子 (1 - z/a_k) 仍恰好在 z = a_k 處消失,這正是我們對它的全部要求,而它在 z = 0 時等於 1,給了乘積一線生機。

現在是誠實的清算。由第一篇你知道收斂判準:乘積 (1 + u_k) 收斂,正好當 |u_k| 之和收斂時。這裡 u_k = -z/a_k,所以問題是 |z/a_k| = |z| 乘以 1/|a_k| 之和是否收斂。對 sin(pi z) 而言零點是整數,所以我們是在問:對所有非零整數取 1/|k| 之和是否收斂——而它正是調和級數,眾所周知地發散。對 (1 - z/k) 取的天真乘積並不收斂。這個夢,照字面去理解時,破了。這不是一個可以揮手帶過的技術細節;它正是整個階梯其餘部分為之而存在、要去克服的那個確切障礙。

naive guess :  sin(pi z)  ?=  C * PROD_k (1 - z/k)      [k over all nonzero integers]

convergence needs :  SUM_k |z/k|  =  |z| * SUM_k 1/|k|   to converge
                     but  SUM 1/|k|  is the harmonic series  =  DIVERGES

so the bare product fails -- the factors go to 1 too slowly
sin(pi z) 的天真零點乘積發散,因為整數太稠密:sum 1/|k| 爆掉了。

補救:一個不挪動零點的收斂因子

補救之道是一招漂亮的巧計,它也為整個下一篇鋪好了路。注意問題關乎收斂的快慢——因子 (1 - z/a_k) 把它真正的本份做得完美無瑕(它在 a_k 處、且只在那裡消失)。所以我們獲准把每個因子乘上任何完全沒有零點的東西,因為那不可能改變乘積在何處消失;它只改變因子趨於 1 的速度。而最自然的、可拿來相乘的無零點之物就是指數,因為 e^(任何東西) 永不為零。構想是給 (1 - z/a_k) 附上一個量身打造的因子 e^(p_k(z)),指數裡是一個多項式,選得讓那合併後的因子奔向 1 的速度快到足以收斂。

為什麼指數型的修正能加速收斂?因為對數。因子 (1 - w) 在 w 小時接近 1,而 log(1 - w) = -w - w^2/2 - w^3/3 - ...。領頭的 -w 正是先前置我們於死地的那一項(它給出了 z/a_k 的調和級數和)。若我們把 (1 - z/a_k) 乘上 e^(z/a_k),指數的對數加回 +z/a_k 並消掉那領頭項,留下一個合併因子,其對數從小得多的 -w^2/2 開始——而對整數取 |z/a_k|^2 之和就是 sum 1/k^2,它收斂。我們沒有挪動任何一個零點;我們只消掉了對數裡那慢吞吞的部分。在指數裡再多添幾項 (z/a_k + (z/a_k)^2/2 + ...),你就消掉更多領頭項,買到任何零點序列所能要求的足夠收斂。

什麼被釘死了,什麼仍是自由的

一旦修正過的乘積收斂,它就是一個貨真價實的整函數,其零點恰是指定的清單 a_1、a_2、... 並帶有指定的階數——這一部分如今釘死了。但值得誠實地說清楚:零點把多少東西釘死,又把多少留作自由,因為多項式的情形會誤導人。對一個多項式而言,零點加上一個常數 c 就決定了一切。對一個整函數而言,零點並不把函數決定到只差一個常數。兩個有著相同零點的整函數可以相差任何一個無零點的整函數——而這種東西遠比常數多得多。具體地說,任何無零點的整函數都是 e^(g(z)),其中 g 是某個整函數,這由單連通域上整對數的存在性而來。

這正是為什麼我們 sin(pi z) 的故事不會以一個常數收場,而會多出一個因子。第三篇所證的真正恆等式是 sin(pi z) = pi z 乘以「對 k >= 1 取 (1 - z^2/k^2)」的乘積——把 +k 與 -k 配成一對成為 (1 - z^2/k^2),本身就是那收斂把戲的化身,因為配對消掉了那惱人的一次項。注意領頭的 pi z 攜帶了原點處的單零點與整體的尺度,而那無零點的包裹在這裡恰好是平凡的。把那條公式拿到比方說 z = 1/2 去讀,它就坍縮成令人震撼的、求 pi/2 的沃利斯乘積——這是第一道滋味,讓你嚐到:用零點分解不是記帳,而是一台發現恆等式的機器。

這把你帶往何處

退一步看這道弧線。代數基本定理給了多項式一個完美的分解;我們要求把它對所有全純函數保留下來;天真的零點乘積發散了;而解藥是一個無零點的指數修正,它在不擾動零點的前提下買到收斂。那一個構想——初等因子——就是前方一切的種子。第三篇,魏爾斯特拉斯分解定理,證明你總能成功:給定平面上任何一個沒有聚點的點序列(與任意階數),都存在一個整函數恰以那些點為零點,由初等因子配上一份對每個 p 都乾淨的食譜建造而成。

而那份對稱實在太美,不說不行。若你能指定一個函數的零點,你也能指定它的極點——除過去就是了。那就是第四篇的米塔-列夫勒定理,它指定的不是零點而是主部,在你高興的任何地方造出極點的函數;而取一次對數導數,會把對零點的乘積變成對零點的求和,那正是第五篇裡 cot 與 csc 的部分分式展開。所以這單單一個補救——保住零點,用一個指數來付賬——悄悄地撐起了整個階梯。多項式之夢活了下來;它只是花了一個巧妙的因子作為代價。