§29-6  分部積分與化約成 Riemann 積分

被積函數與 integrator 的地位是對稱的嗎?把兩者互換之後,兩個積分之間會差些什麼?而如果 integrator 剛好有連續的導數,這個積分能不能整個換回熟悉的 Riemann 積分?

兩個位置互換,以及回到 Riemann 積分

一杯咖啡今年從 40 元漲到 55 元,中間調過幾次價;而你每個月喝幾杯,也一路在變。年底要結算今年總共花了多少,帳有兩種記法。第一種按杯數記:每多喝一杯,就把當時的單價乘上去。第二種按價格記:每調一次價,就把從那一刻起還會喝掉的杯數乘上調幅。

兩本帳算的是同一段時間的同一件事,可是逐項比對完全對不起來——第一本的每一項是「單價乘上杯數的增量」,第二本的每一項是「杯數乘上單價的增量」。真正好用的是它們合起來的關係:把兩本帳的總額相加,中間的項成對消掉,只剩下年末的「單價乘杯數」減去年初的「單價乘杯數」。哪一本帳都不比另一本基本,差的只是兩端的那一筆。

這個現象在本節的積分裡原封不動地成立,而且還多說了一句:只要其中一種記法算得出來,另一種就一定也算得出來。本篇先把這件事證出來,再回頭處理另一個問題——決定權重的那個函數若本身夠平滑,這個積分能不能整個換回熟悉的 Riemann 積分。

29.7  INTEGRATION BY PARTS
Integrability of f with respect to g on [a, b] holds exactly when g is integrable with respect to f there, and the two integrals then satisfy ∫ f dg + ∫ g df = f(b)g(b) − f(a)g(a).
這條把被積函數與 integrator 兩個位置的地位講平了:一個可積,另一個就跟著可積,而且兩個積分加起來只剩兩端的邊界值。請留意它不是說兩個積分相等——它們一般差得很遠,被釘住的是總和。回頭看 §29-1 的 29.1(Riemann–Stieltjes 和是「代表值乘上該段權重」的總和),S(P; f, g) 與 S(P; g, f) 是兩串長得完全不像的數,所以這個對稱性不是記號上的巧合,需要證。沒有這條對稱性,「哪個當被積函數」就會是一個實質的選擇;有了它,兩者只是同一件事的兩種寫法。此外它還是一台免費的可積性製造機:手上只要有一個可積的組合,把兩個位置對調就白得一個新的可積組合,而右邊的邊界值連積分值都替你算好了。
正例:在 J = [0, 2] 上取 f(x) = x + 1,g 由 0 ≤ x < 1 時 g(x) = 0、1 ≤ x ≤ 2 時 g(x) = 1 給出。g 在 1 右連續而 f 連續,由 §29-3 的內點跳躍定理(integrator 在跳躍點右連續時,被積函數左連續就可積,積分值是它在跳躍點的值)得 ∫ f dg = f(1) = 2。29.7 於是斷定 g 對 f 也可積,而且 ∫ g df = f(2)g(2) − f(0)g(0) − 2 = 3 − 0 − 2 = 1。直接算也對得上:f 的增量就是區間長度,所以 ∫ g df 是那個階梯函數的 Riemann 積分,等於它在 [1, 2] 上那塊高 1 寬 1 的面積。反例:兩個積分不會自動相等——同一組 f 與 g 給出 ∫ f dg = 2 而 ∫ g df = 1,差了一倍。被邊界值釘住的是它們的和,不是各自的值。
f(b)g(b) − f(a)g(a) 整條的長度 ∫ f dg ∫ g df 這一段多,另一段就少

這張圖在說 29.7 承諾了什麼、又沒承諾什麼:整條長條的長度是邊界值 f(b)g(b) − f(a)g(a),它由兩端的四個數字算出來,跟切法無關。兩個積分是這條長條的兩段,所以它們的和被釘死,各自的長短卻完全自由——切點畫在哪裡是 f 與 g 的事。圖上看不出「一個可積就保證另一個可積」,那是證明要交的東西。

PROOF

照本節的通用前提,f 與 g 都在 J = [a, b] 上有界。結論是一個「若且唯若」加上一個等式,而兩個方向的論證完全對稱——把 f 與 g 的角色對調,同一段文字就是另一個方向——所以以下只證「f 對 g 可積推出 g 對 f 可積,並給出等式」。手上的工具只有兩件:§29-2 的 29.2(g-可積的定義:給定 ε 就交得出一個分割,它的每一個加細上的每一個和都離積分值不到 ε)與 §29-1 的 29.1(和的寫法)。先用一個退化情形檢查等式的形狀:g 恆等於常數 c 時,∫ f dg = 0(§29-2 例 2:常數 integrator 讓每一項的增量都是零),而 S(P; g, f) = Σ c[f(xₖ) − f(xₖ₋₁)] 逐項相消得 c[f(b) − f(a)],與 f(b)g(b) − f(a)g(a) 相同,等式成立。

證明計畫 · 由所求想起
所求有兩件:g 對 f 可積,而且兩個積分的和是邊界值。把可積的定義代進去,所求就變成一句話:以 g 為被積函數的每一個和,都要靠近「邊界值減去 ∫ f dg」。
第一步:把前提兌現成工具——由 f 對 g 可積拿到一個見證分割。
第二步:任取它的一個加細,寫下以 g 為被積函數的和。
第三步:把這個分割的分割點與中間點全部併在一起,排成一個更細的分割。
第四步:在和裡把「兩個函數在同一個分割點的值相乘」這種項加進來又減掉,逐項重新編組。
第五步:加進來的那一堆兩兩相消只剩兩端,正是邊界值;剩下的那兩串恰好併成一個以 f 為被積函數的和,而它的中間點就是原來的分割點。
第六步:新分割是見證分割的加細,第一步的估計套得上去;ε 任意小,可積與等式一起到手。

Proof.  Suppose that f is integrable with respect to g. Let ε > 0. By 29.2 there is a partition Pε of [a, b] such that
  |S(R; f, g) − ∫ f dg| < ε
holds for every refinement R of Pε and every Riemann-Stieltjes sum belonging to R.
這一步的所求:把「可積」這個前提換成一個拿得來估計的具體物件。29.2 的 g-可積定義(存在一個實數 I,使每個 ε 都配得到一個分割 Pε,讓 Pε 的每一個加細上的每一個 Riemann–Stieltjes 和都離 I 不到 ε)給出的正是這個東西。兩個「每一個」都要記牢:對加細是每一個,對中間點的挑法也是每一個——下面第三步造出來的那個分割是臨時拼出來的,中間點也是特別指定的,能套得上估計全靠這兩個「每一個」。另外 Pε 可以依賴 ε,這是定義允許的,所以以下整段論證都活在同一個固定的 ε 底下。
Let P = (x₀, ⋯, xₙ) be a refinement of Pε and consider a Riemann-Stieltjes sum in which g is the integrand and f the integrator,
  S(P; g, f) = Σₖ₌₁ⁿ g(ξₖ)[f(xₖ) − f(xₖ₋₁)],
where xₖ₋₁ ≤ ξₖ ≤ xₖ. This is the quantity to be estimated.
這一步的所求:把「要估的東西」原原本本寫出來。兩個位置在這裡對調了:g 現在提供代表值 g(ξₖ),f 現在提供每一段的權重 f(xₖ) − f(xₖ₋₁)——與第一步那個和的角色恰好相反,而且它們的項一個都對不起來。取一組具體數字看清楚。設 [a, b] = [0, 1]、n = 2、P = (0, ½, 1),中間點取 ξ₁ = ¼、ξ₂ = ¾,那麼
  S(P; g, f) = g(¼)[f(½) − f(0)] + g(¾)[f(1) − f(½)]。
下圖畫的就是這條數線:藍色的是分割點,紅色的是中間點。要留意 P 是任取的加細、中間點也是任挑的,最後的結論必須對所有這樣的選擇同時成立。
現在 g 是被積函數,f 只負責權重 x₀ x₁ x₂ ξ₁ ξ₂ 分割點 中間點 兩種點目前地位不同

這張圖把證明第二步要估的那個和畫成一條數線:藍色刻度是分割 P 的分割點,紅色圓點是任意挑出來的中間點。此刻兩種點的地位截然不同——分割點決定每一段的權重從哪裡量到哪裡,中間點只提供代表值。下一步要做的事,就是把這個分工整個拆掉。

Form a new partition Q = (y₀, y₁, ⋯, y₂ₙ) of [a, b] by promoting every ξₖ to the rank of a partition point alongside the xₖ, so that
  y₂ₖ = xₖ  and  y₂ₖ₋₁ = ξₖ.
Every partition point of P occurs among those of Q, hence P ≤ Q. Since P refines Pε, so does Q.
這一步的所求:一個更細的分割,好讓第一步那個估計有地方可以套。做法只有一個動作——把中間點也當成分割點,與原來的分割點交錯排成一列,偶數號位置留給原來的分割點、奇數號位置留給原來的中間點。緊接著用上一步那組數字算一次:P = (0, ½, 1)、ξ₁ = ¼、ξ₂ = ¾ 時
  Q = (0, ¼, ½, ¾, 1),
也就是 y₀ = 0、y₁ = ¼、y₂ = ½、y₃ = ¾、y₄ = 1:原本 2 段變成 4 段,點數由 n + 1 = 3 個變成 2n + 1 = 5 個,而原來的三個點一個也沒挪動——這正是加細的意思(§29-1 的分割與加細:只准加點、不准挪點)。退化情形要想過:中間點允許取在子區間的端點上,這時 Q 裡會出現重複的點,例如 ξ₁ = 0 就給出 Q = (0, 0, ½, ¾, 1)。分割的定義只要求 a = y₀ ≤ y₁ ≤ ⋯ ≤ y₂ₙ = b,重複是合法的,而那個長度為零的子區間在任何和裡貢獻的增量都是零,後面每一步照樣成立。P ≤ Q 且 Pε ≤ P 給出 Pε ≤ Q,因為「Q 含有 P 的每個點、P 含有 Pε 的每個點」直接推出「Q 含有 Pε 的每個點」。
把中間點也算成分割點 x₀ x₁ x₂ ξ₁ ξ₂ 併起來 y₀ y₁ y₂ y₃ y₄ 五個點全是分割點

這張圖在說證明第三步造出了什麼:上面那條線是原來的分割與它的中間點,下面那條把五個點一視同仁地全部當成分割點,重新編號成 y₀ 到 y₄。紅色的點升格成了分割點,這是全篇最關鍵的一個動作——原來的分工被拆掉之後,同一批點就能拿去組一個以 f 為被積函數的和。下面兩條線的刻度位置完全沒有挪動,所以新分割確實是舊分割的加細。

Add and subtract the products f(y₂ₖ)g(y₂ₖ), k = 0, 1, ⋯, n, and regroup. Term by term,
  g(ξₖ)[f(xₖ) − f(xₖ₋₁)]
  = [f(xₖ)g(xₖ) − f(xₖ₋₁)g(xₖ₋₁)]
  − f(xₖ₋₁)[g(ξₖ) − g(xₖ₋₁)] − f(xₖ)[g(xₖ) − g(ξₖ)],
as one checks by expanding the right-hand side.
這一步的所求:把要估的和拆成兩塊認得出來的東西。做法是加一項再減一項——把 f 與 g 在同一個分割點的乘積 f(xₖ)g(xₖ) 加進來又減掉,值當然不變,可是重新編組之後每一項的形狀就變了。這裡不必整串一起看,逐項核對就夠:把 pline 那個等式的右邊展開,得 f(xₖ)g(xₖ) − f(xₖ₋₁)g(xₖ₋₁) − f(xₖ)g(xₖ) + f(xₖ)g(ξₖ) − f(xₖ₋₁)g(ξₖ) + f(xₖ₋₁)g(xₖ₋₁),其中 f(xₖ)g(xₖ) 與 f(xₖ₋₁)g(xₖ₋₁) 各自一加一減相消,剩下 g(ξₖ)f(xₖ) − g(ξₖ)f(xₖ₋₁),正是左邊。用前面那組數字驗一次,取 k = 1(x₀ = 0、ξ₁ = ¼、x₁ = ½)、f(x) = x、g(x) = x²:左邊是 1/16 × (½ − 0) = 1/32;右邊是 (½ × ¼ − 0) − 0 × (1/16 − 0) − ½ × (¼ − 1/16) = ⅛ − 0 − 3/32 = 1/32,兩邊相同。加進來的那一項是「相鄰兩個分割點上的乘積相減」,這種形狀累加起來會兩兩相消,下一步就靠它。
把相鄰兩個節點的乘積相減 相消 (fg)(a) (fg)(b) (fg)(x₁) 只剩兩端的乘積

這張圖在證第四步加進來的那一堆項為什麼幾乎全部消失:每一段貢獻的是「右端的乘積減去左端的乘積」,於是中間每個節點都被加一次、又被減一次。圖上打叉的那個節點就是被消掉的內部節點,走完整條線只剩最左與最右兩個節點的乘積——那正是等式右邊的邊界值 f(b)g(b) − f(a)g(a)。

Summing over k, the first bracket telescopes to f(b)g(b) − f(a)g(a). The two remaining sums together form a Riemann-Stieltjes sum belonging to Q: on [y₂ₖ₋₂, y₂ₖ₋₁] take the intermediate point y₂ₖ₋₂ = xₖ₋₁, and on [y₂ₖ₋₁, y₂ₖ] take y₂ₖ = xₖ. Hence
  S(P; g, f) = f(b)g(b) − f(a)g(a) − S(Q; f, g).
這一步的所求:把上一步剩下的兩串認成一個合法的和。合法與否只有一個檢查點——每個中間點都必須落在自己的子區間裡。Q 的第 2k − 1 段是 [xₖ₋₁, ξₖ],指定的中間點是 xₖ₋₁,它是這段的左端,合法;第 2k 段是 [ξₖ, xₖ],指定的中間點是 xₖ,是這段的右端,也合法。兩件事都靠 xₖ₋₁ ≤ ξₖ ≤ xₖ。到這裡角色徹底互換了:P 的中間點成了 Q 的分割點,P 的分割點成了 Q 的中間點。拿 n = 2 的那組數字整個展開一次,取 f(x) = x、g(x) = x²、P = (0, ½, 1)、ξ₁ = ¼、ξ₂ = ¾。Q = (0, ¼, ½, ¾, 1) 的四段依序配到中間點 0、½、½、1(第二、三段共用 x₁ = ½,它同時是第二段的右端與第三段的左端),於是
  S(Q; f, g) = 0 × 1/16 + ½ × (¼ − 1/16)
  + ½ × (9/16 − ¼) + 1 × (1 − 9/16) = 11/16。
另一邊 S(P; g, f) = 1/16 × ½ + 9/16 × ½ = 5/16。兩者相加是 5/16 + 11/16 = 1,而邊界值 f(1)g(1) − f(0)g(0) = 1 × 1 − 0 × 0 = 1,逐項算出來的數字與 pline 那個等式吻合。
Because Q refines Pε, the estimate of the first step applies to S(Q; f, g). Therefore
  |S(P; g, f) − [f(b)g(b) − f(a)g(a) − ∫ f dg]|
  = |S(Q; f, g) − ∫ f dg| < ε.
Since P was an arbitrary refinement of Pε and its intermediate points were arbitrary, 29.2 shows that g is integrable with respect to f and that ∫ g df = f(b)g(b) − f(a)g(a) − ∫ f dg.
這一步的所求:收尾——把估計套上去,再逐條核對 29.2 的定義。第一個等號來自上一步那個等式:兩邊同時減去 f(b)g(b) − f(a)g(a) − ∫ f dg 之後,左邊的絕對值裡剩下的恰好是 ∫ f dg − S(Q; f, g),取絕對值後與 |S(Q; f, g) − ∫ f dg| 相同。不等號則是第一步的估計,用得上是因為第三步已經核過 Q 是 Pε 的加細。最後回頭對照 29.2 的量詞順序:給定的 ε 配到的分割就是 Pε(它是為 f 對 g 可積而交出來的,這裡直接借用),而「Pε 的每一個加細 P、每一種中間點的挑法」都已經涵蓋——因為整段論證裡 P 與 ξₖ 從頭到尾是任取的。於是 g 對 f 可積,積分值就是括號裡那個數。
把 f 與 g 的角色對調,上面每一行原封不動就是反方向的證明,所以兩種可積性互為充要。移項之後 ∫ f dg + ∫ g df = f(b)g(b) − f(a)g(a)。∎

難的一段過去了:中間點升格成分割點、分割點降格成中間點,一個和就翻成了另一個和。趁著換題目之前起來動一動——站直、把雙手往上伸展十秒,再走幾步倒杯水,回來看比較輕鬆的第二條定理。

29.8  THEOREM
Assume that g′ exists throughout J and is continuous there, and that f is g-integrable. Then f·g′ admits a Riemann integral and ∫ f dg = ∫ f g′ dx.
這條是一張回程票:只要 integrator 的導數存在而且連續,整個 Riemann–Stieltjes 積分就換得回 Riemann 積分,換法是把 g′ 併進被積函數裡。直觀上很好理解——g 在一小段上的增量約等於 g′ 乘上那一段的長度,於是「用 g 的增量當權重」與「用長度當權重、但把 g′ 乘進代表值」講的是同一件事。可是「約等於」不能當證明用,把它變成證明需要兩件工具:§27-3 的 27.6 均值定理(連續且內部可微的函數,兩端的值差等於中間某一點的導數乘上區間長度)負責把「約等於」換成「恰好等於」,代價是換到一個位置不明的新點;§23-2 的 23.3 均勻連續定理(compact 區間上的連續函數必定均勻連續)負責讓那個新點造成的誤差對所有子區間一致地小。結論同時斷言了兩件事:右邊那個 Riemann 積分存在,以及兩者相等——存在性不是附送的,是要證的。
正例:g(x) = 3x + 1 於任何 J。g′ 恆為 3,存在且連續,所以只要 f 對 g 可積就有 ∫ f dg = ∫ 3f dx = 3∫ f dx。這個答案另有一條路可以核對:g = 3·(x) + 1·(常數函數),由 §29-5 的 29.5(b)(積分對 integrator 是線性的)得 ∫ f dg = 3∫ f dx + 1 × 0 = 3∫ f dx,其中常數 integrator 那一項為零。兩條路同一個答案。反例:前提中的「g′ 在整個 J 上存在」不能省。取 J = [0, 2]、f ≡ 1,g 在 [0, 1) 上取 0、在 [1, 2] 上取 1。g′ 在 1 以外處處存在且等於 0,右邊那個積分於是為 0;可是左邊由 §29-3 的內點跳躍定理給出 ∫ f dg = f(1) = 1。單單一個點沒有導數,等式就整個垮掉——那一點正是全部的積分值所在。
PROOF

前提有兩條:g′ 在 J = [a, b] 上處處存在且連續,f 對 g 可積;照本節的通用前提,f 在 J 上有界。工具三件:§27-3 的 27.6 均值定理、§23-2 的 23.3 均勻連續定理,以及 §17-3 的 17.7 的 uniform norm ‖f‖(|f| 在 J 上的 sup,f 有界時它是一個實數)。兩件事先講清楚。其一,J 的兩個端點上談導數指的是單側的差商極限,本讀本的導數定義本來就允許在區間端點問導數,所以 g′(a) 與 g′(b) 都有意義,而 23.3 要的正是 g′ 在整個 compact 區間 J(含兩端)上連續。其二,‖f‖ 可以是 0,那時 f 恆為零、兩邊的積分都是零,結論自明;下面的估計式在 ‖f‖ = 0 時照樣成立,不必另外分情形。

證明計畫 · 由所求想起
所求是「以 f·g′ 為被積函數的 Riemann 和會逼近 ∫ f dg」——有了它,右邊的積分存在與兩邊相等就一次到手。
第一步:g′ 在 compact 區間上連續,於是均勻連續,這給出一個對所有子區間通用的細度門檻。
第二步:兩種和用同一組中間點寫出來,逐項相減。
第三步:均值定理把 g 在一段上的增量換成導數乘上長度,代價是換到一個位置不明的新點,只知道它與中間點同在那一段裡。
第四步:同一段裡的兩點導數值相差不到 ε,於是每一項被 ε 乘上 f 的上界再乘該段長度壓住。
第五步:各段加起來,長度總和是 b − a。
第六步:其中一種和已知逼近 ∫ f dg,兩種和又靠得夠近,於是另一種和也逼近它。

Proof.  Since J is a compact interval and g′ is continuous on it, 23.3 shows that g′ is uniformly continuous on J. Let ε > 0 and choose δ > 0 such that |g′(u) − g′(v)| < ε whenever u, v ∈ J satisfy |u − v| < δ. Let Pδ be a partition of J all of whose subintervals are shorter than δ. Because refining a partition only shortens subintervals, every refinement of Pδ has the same property.
這一步的所求:一個門檻,讓「同一段裡的兩點,g′ 的值差不多」這句話對每一段同時成立。均勻連續是這裡的關鍵:逐點連續給的 δ 隨點而變,而分割有很多段、每一段都要一個 δ,逐點連續給不出一個對所有子區間通用的門檻——23.3 均勻連續定理(compact 區間上的連續函數必定均勻連續)補的正是這一格,而它要的前提 J compact 由 J = [a, b] 直接給出。取到 δ 之後就能挑出 Pδ,例如把 J 等分成 m 段而 m 大到 (b − a)/m < δ。最後那句「加細只會讓子區間更短」是整個安排能成立的理由:29.2 要求對每一個加細都成立,而細度這個性質確實被加細繼承——加細只准加點,加了點只會把一段切得更短。
Let P = (x₀, ⋯, xₙ) be a refinement of Pδ with intermediate points ξₖ, and form both S(P; f, g) and the Riemann sum S(P; f g′) from the same points ξₖ. Their difference is a sum of n terms of the form
  f(ξₖ)[g(xₖ) − g(xₖ₋₁)] − f(ξₖ)g′(ξₖ)(xₖ − xₖ₋₁).
這一步的所求:把兩個要比較的和擺在同一張紙上,並且讓它們逐項對得起來。兩個和必須用同一組中間點,否則相減之後 f(ξₖ) 提不出來,整個估計就沒得做——這與 §29-5 的 29.5(雙線性)證明裡的要求是同一件事。記號說明一句:S(P; f g′) 指的是以乘積函數 f·g′ 為被積函數、以 g(x) = x 為 integrator 的和,也就是 §29-1 的 29.1 裡說的 Riemann 和 Σ f(ξₖ)g′(ξₖ)(xₖ − xₖ₋₁)。逐項相減後每一項都提得出公因式 f(ξₖ),剩下的中括號裡是「g 的真實增量」與「g′ 在代表點的值乘上長度」的差——這個差正是要壓小的東西。
Apply 27.6 to g on [xₖ₋₁, xₖ]: it is continuous there and differentiable at each interior point, so some ηₖ with xₖ₋₁ < ηₖ < xₖ satisfies g(xₖ) − g(xₖ₋₁) = g′(ηₖ)(xₖ − xₖ₋₁). Hence the k-th term equals
  f(ξₖ)[g′(ηₖ) − g′(ξₖ)](xₖ − xₖ₋₁).
這一步的所求:把上一步中括號裡那個「真實增量」換成一個 g′ 說得上話的量。27.6 均值定理(閉區間上連續、內部可微的函數,兩端的值差等於中間某一點的導數乘上區間長度)做的正是這件事,前提由「g′ 在 J 上處處存在」直接滿足,而可微蘊涵連續。代價是引進一個新的點 ηₖ,它的位置我們永遠不知道,只知道它落在第 k 段裡——而這一點就夠了。緊接著用一組數字算一次:取 g(x) = x²、第 1 段是 [0, ½]、中間點 ξ₁ = 0。g 的真實增量是 ¼ − 0 = ¼,而 g′(η₁) × ½ = 2η₁ × ½ = η₁,所以 η₁ = ¼,恰好是這一段的中點,確實落在 (0, ½) 裡。這一項於是成為 f(0)[g′(¼) − g′(0)] × ½ = f(0) × ½ × ½。請注意 ηₖ 與 ξₖ 一般不是同一點(這個例子裡一個是 ¼、一個是 0),它們的距離正是誤差的來源。順帶把退化情形收掉:某一段的兩個端點重合時它的長度為零,均值定理套不上,可是那一項本身就是零,直接略過即可。
弦的斜率等於某一點的切線斜率 g 弦 切線 xₖ₋₁ ξₖ ηₖ xₖ 兩點同在一段裡

這張圖在說證明第三步換到了什麼:g 在一小段上的真實增量就是弦的高度差,而均值定理保證段內有一點的切線與弦平行,於是那一點的導數乘上段長恰好等於增量。藍點 ηₖ 是均值定理交出來的,位置不由我們挑;紅點 ξₖ 是我們自己挑的代表點——兩者一般不同,而它們的導數值差多少,就是這一段的誤差有多大。

Both ηₖ and ξₖ lie in [xₖ₋₁, xₖ], whose length is less than δ, so |g′(ηₖ) − g′(ξₖ)| < ε; and |f(ξₖ)| ≤ ‖f‖. Summing the n terms and using Σ (xₖ − xₖ₋₁) = b − a,
  |S(P; f, g) − S(P; f g′)| ≤ ε‖f‖(b − a).
這一步的所求:把每一項的估計加起來,變成一個對整個和的估計。三個因子各由一件事負責。第一個因子 |f(ξₖ)|:17.7 的 uniform norm(|f| 在整段區間上的 sup)就是為此而設,‖f‖ 是一個與 k 無關的常數,這正是「f 有界」這個通用前提在本篇的用處。第二個因子 |g′(ηₖ) − g′(ξₖ)|:ηₖ 與 ξₖ 同在第 k 段裡,而 P 是 Pδ 的加細所以每一段都短於 δ,於是兩點的距離小於 δ,第一步那個門檻就派上用場。第三個因子是段長,它們相加起來剛好是 b − a——這是這裡唯一用到「各段拼成整段」的地方,屬於例行的簿記。三者相乘再對 k 加總(三角不等式),就得到 pline 那一行。右邊那個上界裡沒有 n、沒有 P、也沒有中間點,它對每一個加細與每一種挑法都一樣,這正是下一步要的東西。
同一段裡兩點的 g′ 差不到 ε g′ < ε ξₖ ηₖ 每一段都短於 δ

這張圖在說證明第四步的估計為什麼對每一段都成立:下面的數線被切成好幾段,每一段都短於 δ;藍色那一段裡住著兩個點,一個是自己挑的代表點、一個是均值定理交出來的。上方 g′ 的曲線在這一段上的高度變化被那個紅色的小括弧框住,而框子的高度不到 ε——關鍵是同一個 δ 對每一段都管用,這正是均勻連續買到的東西。

Now let σ > 0 be given. Run the preceding steps with ε replaced by σ/(2(‖f‖ + 1)(b − a)), obtaining a partition Pδ, and let Pσ be a partition witnessing |S(P; f, g) − ∫ f dg| < σ/2 for all refinements. If P refines both, then
  |S(P; f g′) − ∫ f dg| < σ/2 + σ/2 = σ.
這一步的所求:把兩個估計併起來,湊出 29.2 對「f·g′ 是 Riemann 可積」所要求的形狀。做法是三角不等式:S(P; f g′) 先跳到 S(P; f, g),再跳到 ∫ f dg,第一段由上一步壓在 σ/2 以內,第二段由 f 對 g 可積這個前提壓在 σ/2 以內。分母寫成 ‖f‖ + 1 而不是 ‖f‖ 是為了免去 ‖f‖ = 0 時除以零的麻煩,屬於例行的邊界簿記;b − a > 0 則由 a < b 保證。兩個分割都要照顧,所以取它們的共同加細——把兩邊的分割點併起來即可,這是 §29-1 的分割與加細裡就辦好的事。最後這句話涵蓋了兩個結論:不等式對 Pσ 與 Pδ 的每一個共同加細、每一種中間點的挑法都成立,依 29.2 這既說明右邊那個 Riemann 積分存在,也說明它的值就是 ∫ f dg。
於是乘積 f·g′ 是 Riemann 可積的,而且 ∫ f dg = ∫ f g′ dx。∎
例 1最大整數函數當 integrator:積分就是整數點上的取值和
階梯 integrator 的定理已經備好,可是一直只用在一兩個跳躍點上。如果跳躍點排成一整列,寫出來的積分會長什麼樣子?
  1. 先把函數講清楚。對每個實數 x,把不超過 x 的最大整數記作 [x],例如 [3.7] = 3、[4] = 4、[−2.5] = −3。在 J = [0, 5] 上它的樣子是:在 [0, 1) 上取 0、在 [1, 2) 上取 1,依此類推,而在 x = 5 取 5。每個整數上跳 1,其餘地方是常數;而且它在每個整數 j 上右連續——[j] = j 與右邊那一段的值相同,左邊那一段的值卻是 j − 1。
  2. 把它拆開。定義 uⱼ 為「x < j 時取 0、x ≥ j 時取 1」,則在 J 上
    [x] = u₁(x) + u₂(x) + u₃(x) + u₄(x) + u₅(x)。
    核對一下:x = 2.5 時前兩個取 1、後三個取 0,和是 2 = [2.5];x = 5 時五個都取 1,和是 5。
  3. 處理 j = 1, 2, 3, 4。每個這樣的 uⱼ 恰好是 §29-3 內點跳躍定理的 (b) 那個版本:integrator 在跳躍點右連續。該定理說可積的充要條件是 f 在 j 左連續,而積分值是 f(j)。方向記牢:integrator 從哪一側連續,就要求被積函數從另一側連續,兩者永遠相反。f 若在 j 連續,兩側都成立,當然涵蓋左側。
  4. 處理 j = 5。它落在右端點上,前一條定理管的是內點,所以直接算。u₅ 只在 x = 5 取 1,其餘為 0,所以任何分割 P = (x₀, ⋯, xₙ) 的和只剩最後一段長度為正的那一項,值是 f(ξₙ),其中 ξₙ 落在那一段裡。設 f 在 5 左連續,給定 ε > 0 取對應的 δ(不妨設 δ < 1,否則把它縮小),並取見證分割 (0, 5 − δ/2, 5);它的任何加細的最後一段都躲在 [5 − δ/2, 5] 裡,於是 |f(ξₙ) − f(5)| < ε。所以 ∫₀⁵ f du₅ = f(5)——這是左端點跳躍那條定理的鏡像。
  5. 合起來。由 §29-5 的 29.5(b)(f 對數個 integrator 各自可積時,也對它們的線性組合可積,積分值照著相加),f 在 1, 2, 3, 4, 5 都連續時
    ∫₀⁵ f d[x] = f(1) + f(2) + f(3) + f(4) + f(5)。
  6. 再加一層。取 g(x) = x + [x]。只要 f 同時是 Riemann 可積的,29.5(b) 就給出
    ∫₀⁵ f dg = ∫₀⁵ f dx + Σ f(j),j 由 1 到 5。
    同一個被積函數,一半的份量按長度計、一半按整數點計。
一個積分符號寫出來的東西,值是一個有限和。這是本節那句「連續地累積與一格一格地相加,被同一個定義收在一起」最直接的兌現——不需要新的理論,只要把權重從長度換成 [x] 的增量,求和就自己冒出來了。最後一步更進一步:一個 integrator 可以把兩種計量方式疊在一起,而積分照樣算得出來。
每個整數上跳 1,其餘是常數 0 1 2 3 4 5 五次跳躍,每次跳一格

這張圖在說例 1 的積分為什麼會塌成一個有限和:[x] 在每一段上是常數,增量為零,所以那些段對任何和都沒有貢獻;只有五次跳躍各貢獻一個增量 1,配上被積函數在該點的值。實心圓畫在每一段的左端、空心圓畫在右端,這就是「在整數上右連續」的意思——而它決定了被積函數需要的是左連續。

例 2同一個積分算兩次:化約與分部積分互相對帳
本篇兩條定理都是把積分換一種寫法。同一個積分若兩條路都走得通,答案當然該一樣——可是真的動手算,會發現先要面對一個還沒解決的問題。
  1. 設定:在 J = [0, 1] 上取 f(x) = x、g(x) = x²,要算 ∫₀¹ x d(x²)。
  2. 先記一筆帳。29.8 的前提有兩條,第一條「g′ 存在且連續」馬上核得掉:由 §28-2 的有理冪定理(x > 0 與有理數 r 時 (xʳ)′ = r·xʳ⁻¹)得 g′(x) = 2x,它是連續的。第二條「f 對 g 可積」卻卡住了——到目前為止本節每一個可積的例子都是手動驗證出來的,而這一組不在其中。成批判定可積性的工具要等下一節才有,所以這裡明白地假設它成立,把這一筆掛在帳上。
  3. 第一條路:29.8。把 g′ 併進被積函數,
    ∫₀¹ x d(x²) = ∫₀¹ x · 2x dx = ∫₀¹ 2x² dx = ⅔。
    (最後那個 Riemann 積分的值用的是冪函數的積分公式,它與可積性掛在同一筆帳上,同樣先假設。)
  4. 第二條路:29.7 分部積分。兩個積分的和是邊界值,
    ∫₀¹ x d(x²) + ∫₀¹ x² dx = f(1)g(1) − f(0)g(0) = 1 × 1 − 0 × 0 = 1。
    而 ∫₀¹ x² dx = ⅓,於是 ∫₀¹ x d(x²) = 1 − ⅓ = ⅔。兩條路同一個答案。
  5. 順帶把帳目理乾淨。29.7 說的是「一邊可積若且唯若另一邊可積」,所以「x 對 x² 可積」與「x² 對 x 可積」是同一件事——兩步裡假設的其實是同一筆,不是兩筆。這也是分部積分最省事的用法:把一個陌生的可積性換成一個熟悉的。
兩條路互相對帳,正是 29.7 與 29.8 一起用的典型方式:一條把積分換成 Riemann 積分算出值,另一條用邊界值反推同一個值,答案吻合就等於兩邊的推導互相驗證。至於那筆掛著的可積性,它不是這個算式的瑕疵而是一個明確的待辦——先確定「若存在則值是多少」,再回頭確定「它確實存在」,這兩件事本來就可以分開做。
整個正方形的面積是 1 ∫ x d(x²) = ⅔ ∫ x² dx = ⅓ g = x² 0 1 1

這張圖在說例 2 的兩條路為什麼一定給同一個答案:正方形的面積是 f(1)g(1) − f(0)g(0) = 1,而拋物線把它切成兩塊。下面那塊是以長度為權重的積分 ∫ x² dx = ⅓,上面那塊是以 x² 的增量為權重的積分 ∫ x d(x²) = ⅔——29.7 說的正是這兩塊拼成整個正方形。要留意這張圖是在圖形好看的情形下讀出來的畫面,定理本身不需要 g 遞增或連續,證明走的是代數上的重新編組。

—— 第六階段到此結束 ——

本篇證了兩件事。其一是分部積分:把中間點升格成分割點、分割點降格成中間點,一個和就翻成了另一個和,於是兩個位置的可積性互為充要,兩個積分的和只剩兩端的邊界值。其二是化約:integrator 的導數存在且連續時,均值定理把增量換成導數乘長度,均勻連續讓誤差一致地小,整個積分就換回了 Riemann 積分。兩個例子分別兌現了兩端——一端把積分算成有限和,一端把積分算回熟悉的式子。本節到此收工:闔上螢幕站起來,肩膀往後轉幾圈,走去接杯水,讓眼睛看點遠的東西再回來。

順帶一則。分部積分最公道的地方,是它從不追究誰是被積函數、誰是 integrator——反正到最後兩邊都要一起結帳,而帳單早在兩個端點上就開好了。

下一幕預告

回頭看整節。我們把「切細了再加起來」寫成了一個禁得起檢驗的定義,證明了它逼近的那個數只有一個;找出了不必先猜答案就能判定可積的準則;確認了積分對被積函數與對 integrator 都是線性的,而且沿著區間切得開、接得回去;還發現兩個位置可以互換,必要時整個積分能換回 Riemann 積分。權重從長度鬆綁之後,連續地累積與一格一格地相加,就被同一個式子收在了一起。

可是有一件事一直沒做。到目前為止每一個「這個積分存在」的判斷,都是手動驗證出來的——階梯 integrator 那幾條是把跳躍點放進分割裡逐項數出來的,Thomae 那個例子是靠一個特別設計的分割硬估出來的,而例 2 乾脆先記了一筆帳。沒有一條定理能一口氣交出成批的可積函數。

下一節就補這一格。主角是單調遞增的 integrator:權重只增不減時,每一段上「代表值取得最大」與「取得最小」會給出一上一下兩個和,把它們夾在中間的所有和都跑不掉,於是可積與否就化約成「上面那一族的下界」與「下面那一族的上界」會不會碰在一起。有了這套工具,兩個成批的結論隨即出現:被積函數連續時積分一定存在,被積函數單調時也一樣——而「連續」這個條件正好結清本篇例 2 掛著的那筆帳,x 對 x² 的可積性到那時就不必再假設了。