摘要訊息 : 了解代數的起源和代數中兩個經典問題.
0. 前言
如果說電腦科學中哪一門數學分支被用得最多, 我想很多人第一時間想起的就是代數學. 遊戲程式設計, 圖形學及圖形處理和深度學習中, 充斥著大量的矩陣計算. 矩陣這個概念, 便是來自於代數學. 因此, 代數學知識對很多人來說不可或缺.
1. 簡談代數
代數從何而來? 粗略地說, 代數起源於運算藝術, 即用字母來替代數字進行計算. 代數的思想和方法已經滲透到了數學各個分支的理論和應用中. 根據 "重要的不是數學對象, 而是它們之間的關係" 這一原則, 代數被定義為對各種集合的元素施行代數運算的數學分支之一. 代數本身起源於初等運算. 但反過來, 基於代數學的基本思想, 許多所謂高等運算, 即數論中的許多定理和結論得到了最自然的證明.
2. 經典問題
我們在這裡介紹兩個和代數學相關的經典問題, 一個是方程式的根式解問題, 另一個是通信編碼問題. 其實, 在物理學和化學中, 還有一些經典問題是和代數學相關, 但是這和 Jonny'Blog 無關.
2.1 方程式的根式解問題
我們已經知道二次方程式 ax^{2} + bx + c = 0 (a \neq 0) 的解可以表示為 \displaystyle {x = \frac {-b \pm \sqrt {b^{2} - 4ac}}{2a}}. 三次方程式 x^{3} + ax^{2} + bx + c = 0 中, 若用 x - \frac {a}{3} 來替換 x, 便可以得到 \displaystyle {\left ( x - \frac {a}{3} \right )^{3} + a \left ( x - \frac {a}{3} \right )^{2} + b \left ( x - \frac {a}{3} \right ) + c = 0}. 簡化之後, 可以得到形如 x^{3} + px + q = 0 的方程式, 則該方程式的根 x_{1}, x_{2} 和 x_{3} 可以這樣來表示 : 若令 \displaystyle {D = -4p^{3} - 27q^{3}, \varepsilon = \frac {-1 + \sqrt {-3}}{2}}, 再令 \displaystyle {u = \sqrt[3]{-\frac {27}{2}q + \frac {3}{2}\sqrt {-3D}}, v = \sqrt[3]{-\frac {27}{2}q - \frac {3}{2}\sqrt {-3D}}}, 且 u 和 v 滿足 uv = -3p, 則有 \displaystyle {x_{1} = \frac {1}{3}(u + v), x_{2} = \frac {1}{3}(\varepsilon^{2}u + \varepsilon v), x_{3} = \frac {1}{3}(\varepsilon u + \varepsilon^{2}v)}. 我們通過觀察 x, x_{1}, x_{2} 和 x_{3} 可以發現, 字母 a, b, c, p 和 q 可以是任意實數, 例如有理數. 因此, a, b, c, p 和 q 成為了代替數字的字母係屬, 即代數 (algebra).
不過, 已經有人嚴格地證明了方程式 \displaystyle {x^{n} + a_{1}x^{n - 1} + a_{2}x^{n - 2} + ... + a_{n - 1}x + a_{n} = 0}, 當 n > 4 時不存在根式解.
對於任意 n 次多項式方程式, Galois 給出了是否可根式求解的判定法則, 同時也給出了一個分裂體和由該體的自同構組成的有限集合 (基數不超過 n!), 現在我們稱之為體 (原多項式) 的 Galois 群. 這裡, 我們僅根據內在的性質, 區分出一些特殊的群, 稱之為可解群. 其結論為 n 次有理係數方程可用根式求解, 若且唯若它對應的 Galois 群是可解群. 例如對於五次方程式 \displaystyle {x^{5} - ax - 1 = 0}, 它對應的 Galois 群 G_{a} 以某種複雜的方式依賴於 a. 其中, a 是整數. 當 a = 0 時, G_{0} 是 4 階循環群 (根據循環群的定義, 循環群必定可解), 從而 x^{5} - 1 = 0 是可根式求解的. 當 a = 1 時, G_{1} 與 120 階對稱群 S_{5} 有相同的結構. 而 S_{5} 被證明是一個不可解群, 從而方程式 x^{5} - x - 1 = 0 無法用根式求解.
2.2 通信編碼問題
在地面上或者太空中建立自動通信系統時, 被用作基本信息單位的通常是一個有序序列 \displaystyle {\boldsymbol {\alpha} = (a_{1}, a_{2}, ..., a_{n})}. 其中, n 為序列長度, a_{i} \in \left \{ 0, 1 \right \} (i = 1, 2, ..., n). 因為模二的加法和乘法運算在電腦上很容易實現, 而 0 和 1 可以用電子信號很方便地傳送. 但是在傳送的過程中, 大氣放電和宇宙噪音等干擾可能會將 \boldsymbol {\alpha} 中部分 1 變為 0 或者 0 變成 1. 於是 \boldsymbol {\alpha} 必須足夠長並且採用專門的編碼系統. 一般來說, 我們從序列的全部集合 S 中挑選出由傳輸碼構成的子集 S_{0}, 以便當被干擾的部分不是太多的時候, 我們可以將被干擾的 \boldsymbol {\alpha}' 還原成 \boldsymbol {\alpha}. 這樣, 便有了糾錯碼.
自創文章, 原著 : Jonny. 如若閣下需要轉發, 在已經授權的情況下請註明本文出處 :