多項式的加減運算就只是同類項合併而已,Maxima「自然」就會做。 例如
(x^3+x^2-x-1)+(x^3/3-3*x^2+3*x-1/2);便得到
3 4 x 2 3 ---- - 2 x + 2 x - - 3 2
至於多項式的乘法,Maxima 也許會因為想要維持多項式的「最簡」表達式而不予處理。 例如
(x-1)*(x+1);就只得到
(x - 1) (x + 1)不要怪罪於電腦軟體,它並不知道你的意圖是「乘開來」。 只要用指令 expand 叫它展開相乘的多項式就行了:
expand((x-1)*(x+1));就會得到如願的結果
2 x - 1
多項式的除法,就像正整數的除法,應該會得到商式和餘式。 其指令是 divide,例如 (x3-1)÷(x+1) 的除法就寫
divide(x^3-1, x+1);得到兩項回應
2 [x - x + 1, - 2]意思是說 (x3-1)÷(x+1) 的商是 x2-x+1,餘是 -2。
事實上,divide 指令也可以用來做正整數的除法,例如
divide(100,7);得到 100÷7 的商 14 和餘數 2。
我們都知道,當餘式是 0 的時候,稱為整除,而除式就是被除式的一個「因式」。 例如 (x3-1)÷(x-1) 就應該是整除。 而整除的情況也就是「因式分解」:將一個多項式「分解」成除式與商式的乘積。 這種運算,可以用 factor 達成。例如
factor(x^3-1);得到兩個因式
2 (x - 1) (x + x + 1)而讀者可能已經猜到了,其實 factor 可以用來做正整數的質因數分解,例如
factor(209);得到兩個因數
11 19但是
factor(109);就只得到同一個數 109,即表示 109 本身是質數。
習題