各式聯立方程組的程序性解法 (1):麥克勞林與卡丹諾(Different Procedural Resolutions of Linear Equations: Maclaurin’s and Cardano’s Works)

Print Friendly

各式聯立方程組的程序性解法 (1):麥克勞林與卡丹諾
(Different Procedural Resolutions of Linear Equations: Maclaurin’s and Cardano’s Works)

國立臺南第一高級中學數學科林倉億老師

摘要:本文介紹麥克勞林在其《代數學》中所呈現的二元、三元一次聯立方程組的解公式,它們等價於克拉瑪公式。另外還介紹了卡丹諾在《大技術》中相當於二元一次聯立方程組的程序性解法。

麥克勞林的公式

麥克勞林 (Colin Maclaurin, 1698~1746)在27歲的時候獲得牛頓 (Newton)的推薦擔任愛丁堡大學數學教授一職,將一生都奉獻給了故鄉蘇格蘭。在他死後兩年 (1748年)才出版的著作《代數學》(Treatise of Algebra)中,也有今日所謂的「克拉瑪公式」,他利用解方程式的方式,得出下列的公式:

$$\left\{ \begin{array}{l} ax + by = c\\ dx + ey = f \end{array} \right.\Rightarrow \left\{ \begin{array}{l} x =\displaystyle \frac{{ce – bf}}{{ae – db}}\\ y =\displaystyle \frac{{af – dc}}{{ae – db}} \end{array} \right.$$

$$\left\{ \begin{array}{l} ax + by + cz = m\\ dx + ey + fz = n\\ gx + hy + kz = p \end{array} \right. \Rightarrow \left\{ \begin{array}{l} x =\displaystyle \frac{{ekm – bfm + bcn – bkn + bfp – cep}}{{aek – abf + dbc – dbk + gbf – gce}}\\ y =\displaystyle \frac{{afp – akn + dkm – dep + gcn – gfm}}{{aek – abf + dbc – dbk + gbf – gce}}\\ z =\displaystyle \frac{{aep – abn + dbm – dbp + gbn – gem}}{{aek – abf + dbc – dbk + gbf – gce}} \end{array} \right.$$

上述的公式與今日的「克拉瑪公式」(Cramer’s rule) 唯一的差別,就在於沒有用行列式來呈現而已。儘管麥克勞林在1729年的手稿中就已經寫出上述的公式,但在1748年的《代數學》一書中,麥克勞林仍是僅止於此,並未將公式推廣到四個未知數以上的聯立方程組。

雖說他在書中有提及可利用相同的方法寫出四個未知數的公式,但終究未訴諸文字。再者,麥克勞林都是透過實際解方程式得出公式的,除了公式之外,他並沒有指出公式之間是否有何一般性的通則。換句話說,即使麥克勞林曾經寫出過四個未知數的公式,但他仍無法指出五個以上的未知數公式長得什麼樣。

卡丹諾的〈論方法的規則〉

若僅是從解聯立方程組得到未知數的值來看,那16世紀的數學家卡丹諾 (Girolamo Cardano, 1501~1576)也曾經得出相關的成果。卡丹諾的名聲並不太好,有些人喜歡用賭徒來稱呼他,但他的著作《大技術》(Ars Magna)奠定了他在數學發展史中的地位。一般人提到《大技術》一書,總是著眼於其中的解三次方程式,而忽略了卡丹諾在這本書中的第29章〈論方法的規則〉(De regula Modi,英文翻譯為On the Rule of Method)中提出了相當於二元一次聯立方程組的解法。卡丹諾以一個例子來說明:

7呎長的綠色絲綢與3呎長的黑色絲綢要價72個硬幣,在相同價格下,2呎長的綠色絲綢與4呎長的黑色絲綢要價52個硬幣。我們想要知道它們個別的價格。

在正確地解出此題後,卡丹諾審視整個解題過程,然後得到了一般性的「規則」:

現在我得到了這個規則,我說:「將比較大的長度7呎,以及硬幣總數72,一同除以比較小的長度3,然後將所得的商乘以第二個情況中的長度,就是原來比較短的絲綢。然後從[乘以]長度的乘積中減去第二個情況中剩下的長度,再將剩下的差除價格52與[乘以價格的]乘積的差,就會得到第一個情況中比較長的價格。」

以今日的符號表示,若方程組為 $$\left\{ \begin{array}{l} {a_{1}}x + {b_{1}}y = {c_{1}}\\ {a_{2}}x + {b_{2}}y = {c_{2}} \end{array} \right.$$,依卡丹諾所給的「規則」,可得出 $$x =\displaystyle \frac{{\frac{{{c_{1}}}}{{{b_{1}}}} \times {b_{2}} – {c_{2}}}}{{\frac{{{a_{1}}}}{{{b_{1}}}} \times {b_{2}} – {a_{2}}}}$$。卡丹諾所謂的「規則」,意義上比較相近於今日所用「算則」(algorithm)一詞, 也就是說,他寫出的並非解的公式,而是告訴讀者依照他所給定的計算步驟,一步一步算下去,最後就能得出未知數的值。

然而,讀者或許會質疑,卡丹諾一席話跟今日認知的「算則」之間,兩者有著不小的落差,更甚者,卡丹諾看起來只是在談這個特例,而非一般化的解法。原因就出在卡丹諾所處的時代,符號代數並未發展完成,在少了符號的幫助之下,卡丹諾只好用特例的數值來表示一般化的情況,這在早期的數學中是很常見的情形。也正因如此,我們也就毋需大驚小怪他所寫出來的「規則」會長成這副德性了。

卡丹諾非常推崇這個「規則」,還稱呼它為「規則之母」!卡丹諾的推崇其實並不單單指「規則」本身,而是包括從一系列運算中抽象化出「規則」的過程,也就是說,讀者只要能掌握此抽象化過程,那麼,就能如卡丹諾在這一章開頭中所說的:「那麼你就會得到解決任何相似問題的『方法的規則』。」由於《大技術》一書流傳很廣,因此,卡丹諾對抽象化「規則」的追求,著實深深影響了後來符號代數的發展。

連結:各式聯立方程組的程序性解法 (2):中國的版本

參考資料:

  1. Chabert, Jean-Luc (Ed.) (1999). A History of Algorithms: From th Pebble to the Microchip. New York: Springer.
  2. Witmer, Y. Richard (translated) (2007). The Rules of Algebra (Ars Magna). New York: Dover.

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *


9 − = 6