從利滾利到指數

正指數

   人字拖從我這借了高利貸,年利率是 100%,借 1 元錢,第二年要還我 2 元。 過了半年,他中了彩票,發了財,打算提前還錢。由於只借了半年, 那麼利率應該折半,他應該還我 1.5 元。可我尋思著,他這是發了橫財, 得好好撈他一筆,好好發揚高利貸利滾利的精神。如果我按季度結算利息, 每個季度,應該是 25% 的利率。第一個季度,本息合計 (1+25%)×1=1.25 (1 + 25\%) \times 1元 = 1.25元 。 這筆錢將作爲第二季度的本金。第二個季度過後應還的本息爲 (1+25%)×1.25=1.5625 (1 + 25\%) \times 1.25元 = 1.5625元 。 很棒,這下,他得多還 0.0625 元。 還不夠,如果我一個月一個月計算利息,是不是能赚更多呢? 第一個月的本息,應該是 (1+100%12)×1 (1 + \frac{100\%}{12}) \times 1元 , 而後續每個月,都以上一個月的本息作爲本金計算。六個月以後,應當是 (1+100%12)6×11.6165 (1 + \frac{100\%}{12})^6 \times 1元 \approx 1.6165元 。 若是每天計算一次,我能得到 (1+100%366)366×12×11.6476 (1 + \frac{100\%}{366})^{366 \times \frac{1}{2}} \times 1元 \approx 1.6476元 (那年是閏年)。 計算得越密集,利滾利就發揮得越充分,我能得到的收益就越高。 如果一年中計算 n 次,半年後,我能得到的本息爲 (1+100%n)n×12×1 (1 + \frac{100\%}{n})^{n \times \frac{1}{2}} \times 1元 。 如果 n 趨向 ∞,則達到無限利滾利。 limn(1+100%n)n×12×1=e12×11.6487 \lim\limits_{n\rarr\infty}(1 + \frac{100\%}{n})^{n \times \frac{1}{2}} \times 1元 = e^\frac{1}{2} \times 1元 \approx 1.6487元 。 我們將問題一般化,一年的增長週期替換爲 T ,而經歷的時間不再是半年,而是任意時間。 limn(1+100%n)n×tT=etT \lim\limits_{n\rarr\infty}(1 + \frac{100\%}{n})^{n \times \frac{t}{T}} = e^\frac{t}{T} 。 這便是指數增長,是一種越來越快,無法控制的增長。因此,可不要隨便去借高利貸。 據說人字拖和人賭棋,輸了一棋盤的麥子,這輩子都沒法還清了。

   現實世界中,“利滾利”的現象比比皆是。細菌的分裂,人口的增長(資源充足的情況下)…… 以細菌分裂爲例,在微觀的層面上,它們是離散的一分爲二,二分爲四。到了宏觀層面, 由於分裂的頻率很快,就化爲了連續的指數增長。凡是自由增長的事物,都會滿足指數規律。

負指數

   另一方面,增長率有時也會是負數,比如粒子的衰變。假設有一試管的某種粒子,共 N 個。 這種粒子的壽命爲 T。那麼,和我借給人字拖的高利貸相反,T 時間後, 粒子的數量似乎應該減少 100%。然而,粒子和行爲和宏觀物體不同,可不會等到壽命終了才開始衰變。 它們的行爲依據概率,每一個時刻,都有衰變的可能性。 而大自然總是將利滾利發揮到極致。經過時間 t 以後,粒子的數量爲: limn(1+100%n)n×tT×N=etT×N \lim\limits_{n\rarr\infty}(1 + \frac{-100\%}{n})^{n \times \frac{t}{T}} \times N = e^\frac{-t}{T} \times N 這便是指數衰減,迅速衰減,卻又連綿不絕。即便粒子的壽命 T 是有限的, 我這一試管粒子,卻能永遠有一部分存在下去,真正的日取其半,萬世不絕。

   我們發現自然界中,許多事物的增長還是衰減,都滿足指數規律。 爲什麼大自然會偏愛指數呢?讓我們找找這其中的共同點: 不論是細菌的分裂,還是粒子的衰變,都是內源性的。其增長或衰減的緣由,都來自其本身。 而那些外源性的增長和衰減,比如自由落體的速度增長,冰在陽光下融化等等。他們都不符合指數規律。 內源性的增長/衰減,若增長率/衰減率保持恆定的話,增長/衰減應該正比於當前的基數。 這便是指數,一種基於當前數量的,最簡單純粹的改變。

虛指數

   指數增長和指數衰減,增長率分別爲正數和負數,分別是向着實數軸的兩個方向變化。 在數學上,除了實數軸,還有虛數方向。設有一種虛數增長,增長週期爲 T 增長率爲 i100%。 limn(1+i100%n)n×tT=cos(tT)+isin(tT)=etT \lim\limits_{n\rarr\infty}(1 + \frac{i100\%}{n})^{n \times \frac{t}{T}} = \cos(\frac{t}{T}) + i\sin(\frac{t}{T}) = e^\frac{-t}{T} 隨着 t 的增長,其結果繞着複平面的單位圓轉。這便是虛指數。 爲什麼虛指數會表現爲旋轉呢?我們思考指數的現實意義:它表示一種恆定增長率的均勻改變, 每一刻的增長與當前基數成正比,與歷史無關,也與其它因素無關。 而在起點時刻,若基數爲 1。正數的增長率使得基數越來越大,向着數軸正方向; 負數的增長率使得基數越來越小,向着數軸的負方向; 同理,虛數的增長率,應該是垂直於實數軸的方向。 實指數,即實數增長率的情況下,增長量與基數是同一方向(幅角相同)。 因此貢獻了模長的增減,產生利滾利效果。而虛數的增長率,使得增長量總是垂直於基數。 我們知道垂直方向的加速,不會改變速度大小,只會改變速度的方向。 同樣,虛數的增長率不會改變基數的模,只會改變其幅角。 因此,虛指數,表現爲轉圈。理解了這一點,相信讀者對歐拉公式會有原理性的認識。 eiθ=cos(θ)+isin(θ) ,θR e^{i\theta} = \cos(\theta) + i\sin(\theta) \,, \quad \theta \in \reals

指數的冪級數展開

   通過泰勒展開,我們得到指數函數的的冪級數: ex=n=0xnn!=1+x+x22+x36 ...xR e^x = \sum_{n=0}^\infty \frac{x^n}{n!} = 1 + x + \frac{x^2}{2} + \frac{x^3}{6} \, ... \quad x \in \reals

   函數的級數展開,是一種類似矢量的坐標分解的數學方法。區別在於函數世界的“坐標系”是無窮多維的。 而不同的展開方法,相當於採用不同的“坐標系”。常用的“坐標系”有:泰勒-洛朗“坐標系”,傅里葉“坐標系” 等(此處爲筆者自造的稱呼,並非公認叫法)。 冪級數展開,即筆者所謂“泰勒-洛朗坐標系”下的分解,本質上是將函數某一點的變化趨勢進行分解。 不同的項,表徵了不同階的變化趨勢。若級數收斂,我們可以只取前 n 項,來一定精度地模擬原函數。 這在數值計算中十分有用。

複指數

   此外,由於冪函數的解析性。我們可以利用冪級數展開,將實函數的定義延拓到複數域。 比如對於指數函數和三角函數,利用冪級數延拓到複數域爲: ez=n=0znn! ,zC e^z = \sum_{n=0}^\infty \frac{z^n}{n!} \,, \quad z \in \Complex 當 z 爲純虛數時,可表示爲 z=iθ z = i\theta 代入上式得: eiθ=n=0inθnn! ,θR e^{i\theta} = \sum_{n=0}^\infty \frac{i^n \theta^n}{n!} \,, \quad \theta \in \reals 我們令 k=n2 k = \frac{n}{2} 使實部和虛部分離,得: eiθ=k=0i2kθ2k(2k)!+k=0ii2kθ2k+1(2k+1)!=k=0(1)kθ2k(2k)!+ik=0(1)kθ2k+1(2k+1)! \begin{aligned} e^{i\theta} &= \sum_{k=0}^\infty \frac{i^{2k} \theta^{2k}}{(2k)!} + \sum_{k=0}^\infty \frac{ii^{2k} \theta^{2k+1}}{(2k+1)!} \\ &= \sum_{k=0}^\infty \frac{(-1)^k \theta^{2k}}{(2k)!} + i\sum_{k=0}^\infty \frac{(-1)^k \theta^{2k+1}}{(2k+1)!} \end{aligned} 實部和虛部分別是 cos 與 sin 的冪級數,歐拉公式得證。

   同樣的方法,我們也能得到普通複數的指數運算公式: ea+ib=ea(cos(b)+isin(b)) e^{a+ib} = e^a(\cos(b)+i\sin(b))

若只清楚數學推導,而不瞭解原理,令人迷惑。反之只瞭解過原理,而沒有數學推導,則無異於紙上談兵,終等於零。 上一節我們從原理上理解了什麼是虛指數,這一節則在數學上證明之。兩者結合,才能既透徹,又鞏固。 當然,這並不代表達到了完美理解。在複指數的各種應用中,還會有更多的領悟。

矩陣指數

   冪級數不但能將函數的定義域延拓到複數域,還能擴展到更多的系統中。 只要這個系統中能定義整數次冪和加法兩個運算,例如矩陣。 矩陣的指數運算定義如下: eA=n=0Ann! e^\bold{A} = \sum_{n=0}^\infty \frac{\bold{A}^n}{n!} 這種運算有什麼意義呢?讓我們看一個例子。

   我們知道矩陣可以理解爲線性變換。例如空間中的旋轉、斜切、縮放、反射、投影等變換,皆可用矩陣表示。 就拿平面上角度爲 θ 的旋轉而言,可用如下的變換矩陣表示: [cos(θ)sin(θ)sin(θ)cos(θ)] \begin{bmatrix} \cos(\theta) & \sin(\theta) \\ -\sin(\theta) & \cos(\theta) \end{bmatrix} 事實上,我們可用一個更簡潔的矩陣--生成元矩陣表示這個旋轉: [0θθ0] \begin{bmatrix} 0 & \theta \\ -\theta & 0 \end{bmatrix} 通過指數,我們可由生成元得到變換矩陣: e[0θθ0]=[cos(θ)sin(θ)sin(θ)cos(θ)] e^{ \begin{bmatrix} 0 & \theta \\ -\theta & 0 \end{bmatrix} } = \begin{bmatrix} \cos(\theta) & \sin(\theta) \\ -\sin(\theta) & \cos(\theta) \end{bmatrix} 我們用 Θ \bold{\Theta} 表示旋轉生成元,有: Θ=[0θθ0]eΘ=[cos(θ)sin(θ)sin(θ)cos(θ)] \bold{\Theta} = \begin{bmatrix} 0 & \theta \\ -\theta & 0 \end{bmatrix} \\ e^\bold{\Theta} = \begin{bmatrix} \cos(\theta) & \sin(\theta) \\ -\sin(\theta) & \cos(\theta) \end{bmatrix}

當然,這個關係適用於任何線性變換,並不限於旋轉。爲了方便,我們僅以旋轉爲例進行說明。 生成元矩陣有一個很好的特性,直接以角度表示矩陣,便於角度的相加,在多維的情況下,便於處理。

擴展--黎曼曲率的理解

   黎曼曲率,更是與旋轉生成元密切相關。爲了由淺入深,我們先從曲面上的高斯曲率說起。 我們知道球面是彎曲的,而圓柱面和圓錐面是平直的(可以攤平),而越小的球面,越彎曲(難以鋪平)。 那麼怎麼定義彎曲程度呢?我們注意一個現象:矢量(或任何事物)在平面上平移,無論經過什麼樣的路線, 只要平移回原點,總是和原來重合的。但球面就不是這樣。假設一隻螃蟹開車從赤道上的一點向北出發, 筆直前行,經過北極點後繼續向前,直至又到達赤道爲止。此時它下車步行,橫著穿過半個赤道走回原點。 這隻螃蟹一直在平移,從未旋轉。但平移回原點後,方向竟然與開始時相反了。這便是曲面彎曲的內在特徵。 如果仔細分析,我們會發現平移一週回到原點後,若是球面的話,偏差的角度與我們走過的路圍成的面積成正比。 自然而然地,我們把偏差角度除以面積當作表徵彎曲程度的量,即高斯曲率。反過來說,球面上平移一週的偏差角度, 就等於路徑圍成的面積乘以高斯曲率。均勻彎曲的球面用乘法即可,而一般的曲面,我們就使用面積分。 曲面上平移一週的偏差角度,就等於高斯曲率在路徑圍成的區域內的面積分: Δθ=SKdS \Delta \theta = \oiint_{S}K dS 其中 K 爲高斯曲率。高斯曲率,本質上是環路平移偏差角度的環路面密度。 而環路面密度,本質上就是旋度。

   可是,高斯曲率只能在曲面上定義,無法向高維推廣。原因是我們使用標量角度來表示旋轉。 而三維及以上維度空間中的旋轉,是有不同方向的,不能只用一個標量表示。 我們知道,旋轉,是面上的行爲。要有旋轉,至少得有兩個維度。旋轉時,每個點總是沿着某個面運動。 (繞著某條軸轉動的說法,只適用於三維空間,不具有普適性。在二維空間中,是繞著某個點而非軸轉; 而四維空間中,是繞著某個平面轉。而沿着平面轉動的說法,適用於任何維度的空間。) 因此我們需要一個二維的,有方向的量,一個相當於“二階矢量”的事物。關於這種量,我們以後再展開討論。 這裏,我們直接搬出答案:這樣的“二階矢量”有三種,而適合旋轉的,是其中一種--反對稱矩陣。 回顧上一小節,我們發現旋轉生成元,便是一個反對稱矩陣。旋轉生成元,相當於有方向的角度。我們可稱之爲有向角。 用之表示旋轉,即可拓展到高維。我們使用旋轉生成元代替角度,高斯曲率就升級成爲黎曼曲率。上面的積分式改寫爲: ΔΘ=SRdS \Delta \bold{\Theta} = \oiint_{S}\bold{R} dS 其中 R 爲黎曼曲率。黎曼曲率,本質上是環路平移偏差有向角的環路面密度,即平移偏差有向角旋度。

矩陣的可交換積

   矩陣的乘法,通常是不可交換的。這不難理解,矩陣對應線性變換。 假設我們有一塊金磚,平放在一臺液壓機上。我們先把金磚豎起來,再壓扁;和先將金轉壓扁,再豎起來, 順序不同,結果是不一樣的。 但是,通過矩陣的指數和對數(爲指數的逆運算,也可通過冪級數定義),我們可以定義一種可交換積: AB=eln(A)+ln(B) \bold{A} \boxtimes \bold{B} = e^{ ln(\bold{A}) + ln(\bold{B}) } 由於加法是可交換的,顯然,這種乘法是可交換的。與普通積所表示的線性變換先後進行不同, 表示兩個線性變換同時進行。以剛纔的金塊爲例子,可交換積表示將金塊勻速轉動豎起的過程中, 液壓機也在勻速下壓,最後是在兩個方向上都有所壓扁,並有所傾斜(斜方向也有所壓扁)的狀態。

總結

  • 指數是恆定增長率的均勻改變,可以是正方向--利滾利,負方向--衰減,虛方向--旋轉。 自然界中,凡是自發的增長或衰減都滿足指數規律
  • 冪級數是對函數的一種“矢量分解”,表徵某一點的各階變化趨勢。在數值計算方面上非常有用, 更能將函數推廣到實數以外的領域,如複數域、矩陣。
  • 指數推廣到複數域,有歐拉公式,關聯了指數和三角函數。
  • 指數推廣到矩陣,有變換和生成元的關係。其中旋轉生成元,可以理解爲有方向的角,是理解黎曼曲率的關鍵。
  • 通過矩陣指數和對數,還可以定義矩陣的可交換積。兩個矩陣的可交換積相當於兩個線性變換同時進行。