close

"韓信點兵多多益善" 有何奇特 ?  韓信手下可能祇有二十三名兵卒,竟然驚走漢高祖劉邦,可見算術的神奇莫測!」隱姜讚許道。

( 其實韓信點兵與孫濱記殺龐涓是同一系列的原理; 韓信以四面楚歌散項羽的十萬大軍也都是"點兵"的心理戰,平常人難想此計謀 ! )

「天象周期循環不息,比如說,月的盈虧現象,五星(當時知道的辰星、太白、熒惑、鎮星、歲星,也就是現在水星、金星、火星、土星、木星)運行現象,日夜循環現象,四季輪替現象等等。
  凡是周期現象都孕含剩數的道理。普通計時用的月份、日期、時辰都是運用剩數觀念。剩數觀念源遠流長,以後一定蔚為大宗。可是那要等到天下太平民物鼎盛的時代了。
  到那時算術才能蓬勃發展,剩數的精深觀念,才能得到闡揚啊!那才真正夠得上『神鬼不測之機』。」

大家只知,孫子點妃成軍用兵如神,但不知《孫子算經》的點兵數,也非常博大精深且非常實用; 車糧是死的,但兵是活的,偏偏灶可以騙,草木可以皆兵 !

所以戰鬥短時間內可以用號令,指揮軍隊去收集情報,就知道兵數有多重要多實用的 !

在漢末三國時代,有名東山隱者  結廬於深山,逃避戰亂、專心著述。

一日,雨過天晴,陽光普照,東山隱者捧著剛寫成的《孫子算經》欣喜地坐在青山下,凝神遐想。 布衣荊釵的東山隱姜提著一籃蕨薇,涉溪而來。
「夫子大功告成了罷?!」隱姜問道。
「大功告成了。但願這本《孫子算經》能流傳後世。自從《周髀算經》、《九章算術》問世以後,這幾百年民間傳誦發揚的算術道理,從來沒有人整理編輯。
 希望這本書能在這方面盡些力氣。隱姜,你說我為什麼偽托孫子?」隱者問道。
「喲!幾十年來,難道我還不明白你的心思嗎?自從東漢以後,重名不重實,又加上戰亂,只有清談玄理、陰謀詭詐的人才算高明。何況你雖遊遍天下,可是一不交結巨公顯宦,又不到處吹噓隱者之名,一輩子也成不了名動天下的「大隱(?)」所以,如果你不偽托孫子,那麼這本書一定湮沒失傳,幾百年來多少人的心血也會成空。此其一。」

「其二呢?」隱者點頭微笑問道。
「那更容易。還不是介子推老夫子的那句話「貪天之功,以為己力」,孔丘老夫子的那句「述而不作」。必須積累無數人力與 時間去摸索與探測,才能逐漸了解及發現真理。總括大成者,怎 能攘為己有,作此盜名欺世之事。」
「真吾妻也!真吾妻也!」隱者哈哈大笑。「數百年來流傳的韓信點兵問題,在這本書裡,也有一個較好的解法了。」
「那太好了,就請你指點吧。」隱姜說。 隱者與隱姜坐在青山下,出神遙想千年萬載後的中國。

「韓信點兵」的重要數學問題。當洋人了解中國人在十幾世紀前的貢獻,一致歡喜讚嘆,而把這個問題的解法命名為「中國剩餘定理」(Chinese Remainder Theorem) 以紀念中國人的偉大貢獻。現代中國人追思《孫子算經》的無名作者,而把這個定理命名為「孫子定理」。孫子定理──或者中國剩餘定理──成為近代代數,數論以及代數幾何中最重要的定理之一,它的光芒四射,照耀了無數角落。

故事講完了,現在讓我們一起研究一下孫子定理──或者中國剩餘定理。

「原題是『三數剩二,五數剩三,七數剩二』。現在我們先求『三數剩一,五數不剩,七數不剩』的解答。
  我們可以從三十五的倍數中,找『三數剩一』的數目,譬如說,七十就是一個解答 。再求『三數不剩,五數剩一,七數不剩』的解答。在二十一的倍數中,二十一本身就是一解。另外求『三數不剩,五數不剩,七數剩一』的解答。
  在十五的倍數中,十五本身適合『七數剩一』。七十,二十一,十五這三個數是解答這個問題的關鍵。這類數目可以定名為『用數』。
   把這三個用數分別乘剩數,二,三,二,然後相加。七十乘二得一百四十,二十一乘三得六十三,十五乘二得三十。一百四十,六十三,三十,三數相加得二百三十三。這就是原題的一個解答。
   另外用三乘五再乘七得一百零五,二百三十三加減一百零五的倍數就可以得到所有解答了。所以算出二十三,一百二十八等等都是解答。」

「這樣說來,終於求得『韓信點兵問題』的公式了。

數學的發展和數字的寫法以及公式的表達法有密切的關係。中國古代盛行代數,是受了中國優良的記數法的影響。到了近代,由於人類發明 =,-,+,×,$\div$,以及用抽象符號 x,y,a,b 代表數字,使得代數成為易懂的數學。對於「剩餘」這個概念,我們也要引進一種符號來幫助了解,記憶。

首先「三數剩二」是什麼意思呢?那不過說某一個數 x 被 3 除剩餘 2;換句話,x-2 被3整除。我們用下式表示「三數剩二」

 \begin{displaymath}
x \equiv 2 \pmod{3}
\end{displaymath}

 定義1: 已知 a-bm 整除,我們說「ab 對模 m 同餘」。用下式(同餘式)表示。 
\begin{displaymath}
a \equiv b \pmod{m}
\end{displaymath}

反之, \begin{displaymath}
a\not\equiv b \pmod{m}
\end{displaymath}

表示「a,b 對模 m 不同餘」;換句話 a-b 不是 m 的倍數。

例1:  $25 \equiv -3 \pmod{7}$
例2:  $a \equiv 1 \pmod{2}$ 表示 a 是一個奇數。
例3:  $a \equiv 0 \pmod{2}$ 表示 a 是一個偶數。
例4: 「物不知其數,三三數之剩二,五五數之剩三,七七數之剩二」可用同餘式表示如下。 
\begin{eqnarray*}
x & \equiv & 2 \pmod{3} \\
x & \equiv & 3 \pmod{5} \\
x & \equiv & 2 \pmod{7}
\end{eqnarray*} 

「韓信點兵問題」就是求一組同餘式的公解。「$\equiv$」與等式「=」有同樣的運算法則,那就是說:

定理1: 已知  $a\equiv b \pmod{m}$$c\equiv d \pmod{m}$,那麼, $ac \equiv bd \pmod{m}$$a+c \equiv b+d \pmod{m}$$a-c\equiv b-d \pmod{m}$$-a \equiv -b \pmod{m}$$a \equiv a \pmod{m}$

證明: 我們先證  $a+c \equiv b+d \pmod{m}$,讀者可以仿照我們的證法,去證明其餘公式。

根據「$\equiv$」的定義,我們知道 a-b = smc-d = tm 所以

(a+c) - (b+d) = (a-b)+(c-d) = sm+tm = (s+t)m

 那就是說, $a+c \equiv b+d \pmod{m}$ 證完。

在推演孫子定理(中國剩餘定理)的過程中,我們須要一個應用兩數互質(兩數的最大公約數是1)的定理,那就是:

定理2: 已知 m,n 適合下式, am+bn=1,那麼 m,n 互質,反過來說,如果 m,n 互質,我們可以找到 a,b,使得 
am+bn=1

證明: 因為 m,n 的最大公約數可以整除 am+bn,而 am+bn=1,所以 m,n 的最大公約數是1,換句話, m,n 互質。反過來說,如果己知 m,n 互質,讀者可以應用輾轉相除法,求得 a,b 使得 am+bn=1,證完。

應用定理2,我們可以解答漂母數布匹的問題了,那就是下面的定理3:

定理3: 己知 m,n 互質,那麼下列一組同餘式: 
\begin{eqnarray*}
x & \equiv & 1 \pmod{m} \\
x & \equiv & 0 \pmod{n}
\end{eqnarray*}

有公解。

證明: 根據定理2,我們可以找到 a,b 使得 am+bn=1,所以 bn=1-am,那麼 $bn = 1-am \equiv 1 \pmod{m}$$bn \equiv 0 \pmod{n}$,換句話,bn 是我們所求的一組公解,證完。

 系1: 己知 m1m2m1m3,… m1mt 都互質,那麼下列一組同餘式 
\begin{eqnarray*}
x & \equiv & 1 \pmod{m_1} \\
x & \equiv & 0 \pmod{m_2} \\
& \vdots & \\
x & \equiv & 0 \pmod{m_t}
\end{eqnarray*}

有公解。

證明: 根據已知條件,我們推論 m1 與  $m_2m_3\cdots m_t$ 互質。在應用定理3,我們知道 
\begin{eqnarray*}
x & \equiv & 1 \pmod{m_1} \\
x & \equiv & 0 \pmod{m_2m_3 \cdots m_t}
\end{eqnarray*}
 有公解。
顯然上面那組同餘式的公解就是 
\begin{eqnarray*}
x & \equiv & 1 \pmod{m_1} \\
x & \equiv & 0 \pmod{m_2} \\
& \vdots & \\
x & \equiv & 0 \pmod{m_t}
\end{eqnarray*}

 的公解,證完。

 
定理4: 己知 m1,m2,…,mt 兩兩互質,並且求出 a1 是  $x \equiv 1 \pmod{m_1}$$x \equiv 0 \pmod{m_2}$,…, $x \equiv 0 \pmod{m_t}$ 的一個公解,a2 是  $x \equiv 0 \pmod{m_1}$$x \equiv 1 \pmod{m_2}$$x \equiv 0 \pmod{m_3}$,…, $x \equiv 0 \pmod{m_t}$ 的一個公解,以此類推,求出 a3,…,at。那  $n_1a_1 + n_2a_2 + \cdots + n_ta_t$ 就是下列一組同餘式  
\begin{eqnarray*}
x & \equiv & n_1 \pmod{m_1} \\
x & \equiv & n_2 \pmod{m_2} \\
& \vdots & \\
x & \equiv & n_t \pmod{m_t}
\end{eqnarray*}

 的一個公解。

 證明: 我們先證明  $x \equiv n_1 \pmod{m_1}$,讀者可以仿照我們的證法,去證明其餘同餘式。

根據己知條件,我們知道  $a_2\equiv 0 \pmod{m_1}$,  $a_3 \equiv 0 \pmod{m_1}$, …, $a_t \equiv 0 \pmod{m_1}$,應用定理1,我們得出  $n_2a_2 + n_3a_3 + \cdots + n_ta_t \equiv 0 \pmod{m_1}$,並且已知  $a_1 \equiv 1 \pmod{m_1}$,所以應用定理1,我們得出  $n_1 a_1 \equiv n_1 \pmod{m_1}$,再應用一次定理1,我們證明

 \begin{displaymath}
n_1a_1+n_2a_2+\cdots +n_ta_t \equiv n_1 \pmod{m_1}
\end{displaymath}

 證完。

上面的定理4事實上就是孫子算經裡的解法。 a1, a2,…,at 也就是孫子算經裡面提到的「用數」。定理4再加上下面的定理5就合成了數論中的孫子定理。

 
定理5: 己知 m1,m2,…,mt 兩兩互質。並且求出 a,b 是下列一組同餘式  
\begin{eqnarray*}
x & \equiv & n_1 \pmod{m_1} \\
x & \equiv & n_2 \pmod{m_2} \\
& \vdots & \\
x & \equiv & n_t \pmod{m_t}
\end{eqnarray*}

 的兩個公解。那麼 a-b 一定是  $m_1m_2\cdots m_t$ 的倍數。反過來說, $a\pm cm_1m_2\cdots m_t$ 也是那一組同餘式的公解。

 證明: 因為  $a\equiv n_1 \pmod{m_1}$$b \equiv n_1 \pmod{m_1}$,應用定理1,我們得到  $a-b \equiv n_1-n_1 \equiv 0 \pmod{m_1}$,換句話,a-bm1 整除。同樣道理 m2,…,mt 都可以整除 a-b。根據已知條件,m1,m2,…,mt 兩兩互質,所以 a-b 一定被  $m_1m_2\cdots m_t$ 整除,那就是說,a-b 是  $m_1m_2\cdots m_t$ 的倍數。反過來說,應用定理1, $a\pm cm_1m_2\cdots m_t$ 自然也是一個公解。證完。

上面所談的都是數論的內容。如果我們把上面的定義,定理,系以及證明中的整數  m,n,a,b,m1,n1,…,等等都換成一元多項式 m(x), n(x), a(x), b(x), m1(x), n1(x), … 等等。我們就得到方程式論中的孫子定理了。

例如定理3可以改寫成:

定理3: 已知 m(x), n(x) 互質,那麼下列一組同餘式, 
\begin{eqnarray*}
x & \equiv & 1 \pmod{m(x)} \\
x & \equiv & 0 \pmod{n(x)}
\end{eqnarray*}

有公解。

在許多抽象數學的領域中,也有孫子定理。不過,因為牽涉的入門知識太多,這兒也就一言表過不提了。

關於孫子定理,現代數學家已有廣泛透徹的研究。讀者如果有興趣,可以參看一點數論及近代代數的書籍。這篇淺文的主要目的,也就是引起讀者對數學的興趣而已。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 創易分享 的頭像
    創易分享

    創易分享

    創易分享 發表在 痞客邦 留言(1) 人氣()