因式與零點:乘法結構如何揭示方程的根
設想你正在規劃一塊長方形展區:周長必須是二十公尺,面積必須是二十一平方公尺。兩條相鄰的邊應該各多長?
這是用來理解數學的假想情境,不是歷史事件。
周長是二十公尺,表示兩條相鄰邊的長度相加是十公尺。如果其中一邊長 公尺,另一邊就是 公尺。面積條件於是成為:
這裡的 是以公尺計算的邊長數值。兩邊都必須大於零,因此還有:
你可以先試。一公尺配九公尺,面積是九平方公尺;二公尺配八公尺,面積是十六平方公尺;三公尺配七公尺,正好得到二十一平方公尺。
問題似乎已經解決了。但還有一件事沒有交代:除了三和七,真的沒有其他數值能符合條件嗎?
試出答案,和確定答案已經找全,是兩件不同的事。只試整數,不能自行排除分數或小數;多試幾次,也不會自動成為「其他可能都不存在」的證明。
因式分解的重要性,就出現在這裡。它不只是提供另一種寫法,還能在適當條件下,把「哪些數符合要求」轉成幾個可以分別處理、又不遺漏可能性的簡單條件。
一、前人早已會求解,差別在於怎樣組織問題
不能因為今天用因式分解解這道題,就以為在這套表示方式成熟以前,人們只能反覆猜測。
九世紀的花拉子米已經以文字整理方程的類型與算法。他的代數著作在開頭提到遺產分配、交易、土地測量等用途。這提醒我們:在今天的符號出現以前,人們早已需要由已知的數量關係,反求尚不知道的數量。Maths History
他的書中也有一個用今天符號可以寫成下面這樣的問題:
這與展區問題是同一個數量關係。不過,這裡的 、次方與等號是現代轉寫,不是說九世紀原書就使用這套記號。
他的算法是:取十的一半,得到五;把五平方,得到二十五;減去二十一,剩下四;取四的平方根,得到二。接著,用五減二得到三,也可以用五加二得到七。原書的文字敘述明確包含這兩種可能,並另有幾何論證。哈佛數學系
用今天的代數來理解這個算法,可以把關係改寫成:
為什麼可以這樣改寫?把 展開,得到的是 ,比左邊原來的式子多四。因此,原式等於零,就相當於這個平方等於四。
這是在找「與五相差二」的數,所以得到三或七。以上是我們用現代符號說明算法的數學理由,不是把現代推導冒充原書的書寫方式。
因此,歷史上的差別不能說成「以前只能猜,後來才會證明」。前人已經有能求解、能論證,也能重複處理同類問題的方法。
真正值得比較的,是這些方法怎樣組織問題。
花拉子米把平方、未知量的若干倍與普通數,依它們位於等式兩側的不同組合,分成不同類型處理。他也會用文字敘述含未知量的乘法與化簡,不能把沒有今日符號,說成不能操作這些數量關係。Maths History
從今天的表示方式回看,這套分類有一項明確成本:需要先辨認問題屬於哪一類,再追蹤相應的算法;閱讀幾何論證時,也要追蹤各條線段與各塊面積的關係。這不表示舊方法無效,而是它將推理安排在另一種形式裡。
我們接下來要看的,是另一種安排:把等式整理成一個式子等於零,再研究這個式子由哪些相乘的部分組成。
要理解它,先不必增加很多公式,只需要把熟悉的分配律反過來看。
二、因式分解,是把相加的結果看成相乘的組成
你知道:
由左往右,是把乘法展開;由右往左,則是看出 和 都含有共同的因數三,把它們合寫成一個乘積。
兩種寫法的外觀不同,代表的數量卻相同。不是只有某個 代入時相同,而是每個實數 代入時都相同。
這種對所有允許數值都成立的相等,叫作恆等。
對本文討論的非零多項式而言,如果它能恆等地寫成兩個多項式相乘,那麼這兩個相乘的部分都是它的因式。因式可以是數,也可以是含有 的整個式子。
本文的因式分解以整係數二次式為主,分解結果允許有理數係數,也就是允許整數或分數作係數。這與「求解時允許 取哪些數」是兩個不同問題;求解時,我們仍在實數範圍考慮,再依情境加上限制。
例如:
右邊確實乘得回左邊,所以二也是 的因式。不能因為括號裡出現分數,就否認這個關係。但是,二是常數,不是「一次因式」;題目若指定找一次因式,才需要把常數排除在那一次的作答範圍之外。
現在回到展區問題會出現的式子:
要把它寫成兩個一次式相乘,為什麼會想到三和七?
先把兩個準備尋找的固定數記作 和 。分配律告訴我們:
要讓這個結果成為 ,就必須同時符合:
三和七符合這兩個條件。一和二十一雖然相乘也是二十一,相加卻是二十二,不能使用。
於是我們提出:
但「看起來像」還不夠,必須回乘:
分配律確實把我們帶回原式,這個分解才得到確認。
你可能注意到:找三和七時,我們仍然用了嘗試。沒錯,因式分解並沒有保證尋找因式的過程一定輕鬆。這裡增加的能力是:找到候選以後,可以先用恆等式確認結構,再用這個結構推論全部的解,而不只是保留一次成功的試算。
還要分清楚「寫成乘積」與「完成因式分解」。
最外層的運算必須是乘法,但這還不一定表示已經完成。完成分解時,其中的非常數因式,在允許的係數範圍內,應該不能再分成更低次的多項式相乘。
例如:
雖然已寫成乘積,括號裡的二次式卻還能繼續分解,所以還沒有完成。繼續寫成:
就已經分成常數與一次因式。也可以把二乘進其中一個括號,寫成:
這兩種都是完成的分解。把 再寫成 ,並沒有把一次因式降成更低次的非常數因式,因此不需要把常數擺放的位置當成唯一標準。
不過,到目前為止,我們仍然沒有在求 。
因式分解是在證明兩種表示恆等。無論 是三、七、零或其他實數, 與 都給出相同的結果。
求解是下一個問題:哪些 ,會讓這個共同的結果恰好等於零?
三、零,讓一個整體條件拆成完整的分支
展區面積明明是二十一,為什麼接下來要研究零?
因為「計算出的面積等於目標面積」,也可以說成「兩者的差等於零」:
展開左邊:
因此,原來的面積條件等價於:
等於零的是目標面積與計算結果的差,不是展區面積。
不過,只把式子整理成等於零,還不能逐項求解。加減的各項可以互相抵銷。例如代入 ,會得到:
三項都不是零,總和仍然可以是零。所以,不能從這個和式等於零,推論其中某一項必須等於零。
乘法卻有不同的性質。
在實數範圍內,如果:
那麼至少有一個因數等於零。
理由並不需要只靠背誦。如果 ,條件已經符合;如果 ,我們才可以把等式兩邊同除以 ,得到:
反過來,只要 或 有一個是零,乘積也一定是零。因此:
這就是零乘積性質。
這裡的「或」表示至少一個成立,也容許兩個都成立;不是要求兩個必須同時成立。
現在把分解結果接回展區問題:
符號 表示前後條件可以互相推出。這一連串改寫沒有刪掉原本可能成立的數,也沒有加入原本不成立的數。
當 ,第一個因式是零,第二個因式是 ,乘積為零。
當 ,第二個因式是零,第一個因式是 ,乘積也為零。
而任何既不是三、也不是七的實數,都會使兩個因式同時非零,乘積不可能為零。
這才是我們能排除其他答案的理由,而不是因為已經試到了兩個看起來合適的數。
使多項式的值等於零的輸入數,稱為它的零點;放在對應的方程中,也就是方程的根或解。
在這裡, 是因式,三才是零點。名稱裡的「零」,指的是代入後得到的結果,不是要求 本身等於零。
四、找出根,還要知道它回答了什麼問題
代數推理找出了三和七,但展區問題還有尺寸條件。
代入 ,另一邊是 ,面積為 。
代入 ,另一邊是 ,面積為 。
兩種代入的周長都是:
而三和七也都符合:
因此,兩個根都符合我們原先給 的意義。
但這不是兩種不同大小的展區,而是同一對邊長的兩種命名方式。你可以把三公尺那一邊叫作 ,也可以把七公尺那一邊叫作 。只有原題事先規定 代表較短邊時,才應只取 。
這裡完成了三種不同的檢查。
回乘,是確認分解前後恆等;代回原題,是確認列出的答案符合條件;零乘積與前後可逆的推理,則是確認沒有其他解。
三者不能互相取代。尤其是「代回後正確」,只能證明列出的答案成立,不能單獨證明沒有漏掉答案。
還有一件事值得留意:展區真正的兩條邊是 與 ,不是 與 。
後面這兩個因式,是面積差整理後的代數組成。它們可以是零,也可以是負數,不能因此把它們當成展區的實際邊長。
五、這套推理不能省掉的條件
零乘積性質的力量,來自一個非常明確的前提:完整的乘積等於零。
暫時離開展區,考慮另一個在實數範圍內求解的方程:
這一次,不能令 或 。只要有一個因式是零,乘積就會變成零,反而不可能等於二十一。
所以,非零乘積不只是「不能推出有零因子」;它還告訴我們,每個因子的值都必須非零。
要解這個新方程,需要重新整理:
最後的乘積才等於零,因此可以使用零乘積性質。
回代新方程:當 ,左邊是 ;當 ,左邊是 。兩個都成立。
這不是先前的展區方程,也沒有沿用展區的 限制。兩道題雖然出現相同的括號,要求的乘積卻不同,答案自然不同。
這個例子也揭示另一個風險。如果看到:
就立刻把兩邊的 約掉,寫成 ,便會漏掉 。
除以一個數以前,必須知道它不是零。此處的 正是未知量,不能先假定它非零。可以先分成「」與「」兩種情況,再在後一種情況除以 ;不能一開始就把第一種情況刪掉。
此外,「有兩個因式」也不代表一定有兩個不同答案。例如:
兩個分支都給出 ,所以只有一個不同的解。零乘積性質要求我們找出使因式為零的數,不是照括號的數量湊答案。
選讀:不能在指定範圍分解,不等於沒有實數解
以下這個例子供已學過平方根的讀者閱讀。
方程:
沒有整數解,但 與 的平方都是二,所以它有這兩個實數解。
更精確地說, 不能分成兩個有理係數的一次式。因為有理係數的一次方程,其解會是有理數;若這個二次式能如此分解,零乘積性質就會給出有理數解,與這裡的兩個解都是無理數不符。
因此,允許哪些係數來分解,與在哪一種數的範圍內求解,不能混成同一件事。
「我目前找不到分解方法」與「已經證明沒有解」,更是不同的判斷。因式分解提供了一條有力量的求解途徑,卻不保證每個方程都能用眼前熟悉的形式輕鬆拆開。
六、當根可以被寫進結構裡
現在,我們可以更準確地理解:因式與根的連結,在知識發展中增加了什麼。
一六三七年出版的《幾何學》,提供了一個可核實的歷史節點。笛卡兒在書中說明,可以用字母表示線段及其運算關係,不必每一步都把相關線段實際畫出來。這不是說幾何圖形失去價值,而是讓一些推理不必一直依附於具體作圖。Maths History
到了第三卷,他把對應二與三的兩個一次條件,連接到一個二次方程。用今天的乘積記號重寫,就是:
令這個乘積等於零,就得到以二、三為根的方程。這個具體例子可以在原著的電子重排本中找到,不是我們替一幅古代圖形補上的假想故事。Project Gutenberg
它呈現的能力很清楚:根不只可以是計算到最後得到的結果,也可以反過來成為構成方程的條件。
知道希望哪些數使結果為零,就能把相應的一次因式相乘,組成方程;面對一個能夠分解的方程,也能沿著相反方向,把求解工作交給較簡單的因式。
這不應被寫成因式分解或零乘積性質的唯一發明日期,也不是說更早的人從未研究過方程的結構。這裡值得把握的是一種可以往返的操作:
再配合「乘積等於零」,相乘的組成就能轉成求根的分支。
相較於前面已經有效的分類算法,這不是讓人類第一次算出三或七,也不是第一次提出一般方法;它讓我們能夠直接從式子的組成研究答案,並在不同表示之間來回檢查。
這個機制今天仍然在使用。電腦代數系統 SymPy 的官方文件,把因式分解列為揭示多項式根的一種途徑,同時明確區分:分解後的式子不是根的清單,求根結果也不同於數值近似。SymPy 文檔
這是古今共享的數學機制,不是「某一本古書直接造成某套軟體」的歷史因果主張。能夠明確表達、檢查並重複執行的代數操作,既可以由人完成,也可以成為程式的一部分。
對現在的你而言,重要的也不只是比計算工具更快找到答案,而是知道答案根據什麼成立。
回到展區:你知道為什麼要把面積條件改寫成差為零;知道為什麼分解後可以分別求解;知道三和七不是兩塊不同大小的展區;也知道「代回成立」與「答案已經找全」,需要不同的理由。
若周長、面積或形狀改了,就必須重新建立條件,不能只沿用上一題的根。
因式與零點之間最重要的連結,正在於此:把「整體何時等於零」改寫成「哪些相乘的部分可以等於零」,再完整保留每一個可能的分支。
同一個式子,數值沒有改變;改變的是答案如何被組織,以及我們憑什麼相信自己已經把它看完整。