跳至內容

計算機代數系統

維基百科,自由的百科全書

這是本頁的一個歷史版本,由WikitanvirBot留言 | 貢獻2011年1月14日 (五) 17:57 (r2.7.1) (機器人 新增: fa:جبر محاسباتی編輯。這可能和目前版本存在著巨大的差異。

計算機代數系統(英文:Computer Algebra System,簡稱 CAS)是進行符號運算的軟體。這種系統的要件是數學表示式的符號運算。

表示式的類別

表示式的例子包括:

  • 多變元多項式
  • 標準函數(三角函數指數函數等等)
  • 特殊函數(Γ函數、Bessel函數等等)
  • 由各種表示式合成的函數
  • 表示式的導函數積分、和與積
  • 以表示式為係數的級數
  • 表示式構成的矩陣

符號運算

以下是幾種典型的符號運算:

  • 表示式的簡化
  • 對表示式求值
  • 表示式的變形:展開、積、冪次、部份分式表法、將三角函數表為指數函數等等。
  • 對單變元或多變元的微分。
  • 帶條件或不帶條件的整體最佳化。
  • 部份或完整的因式分解
  • 求解線性方程組或一些非線性方程式。
  • 某類微分方程或差分方程的符號解。
  • 求某些函數的極限值。
  • 一些函數的定積分或不定基分,包括多變元的情形。
  • 泰勒展開式羅朗展開式與 Puiseux 展開式
  • 某些函數的無窮級數展開式。
  • 對某些級數求和。
  • 矩陣運算。
  • 數學式的顯示,通常藉著 TeX 之類的系統達成。

其它功能

通常計算機代數系統還能進行一些數值運算:

  • 函數的確切求值。
  • 高精度求值,例如計算 到小數點後 位。
  • 線性代數的數值運算。
  • 描繪二維或三維的函數圖形。

在數值運算方面,計算機代數系統的速度通常較 MatlabGNU OctaveC語言中以同等方式實作的程式慢。這是因為計算機系統幾乎總是對符號表示式運算,故不能充分利用CPU的既有指令。

許多計算機代數系統內建高階程式語言,以供使用者擴充功能,或設置個人的操作模式。

歷史

馬丁紐斯·韋爾特曼 (Martinus J. G. Veltman) 是這個領域的先驅,他首先考慮了在高能物理中的應用。他在1963年設計的第一個程式叫 Schoonship (荷蘭文,意指「乾淨的船」)。

最早受到歡迎的系統是 Reduce、Derive 與 Macsyma,現在仍然可取得。Macsyma 的一個GNU通用公共許可證發行的版本叫作 Maxima,現在仍有維護。市場的龍頭為 MapleMathematica,兩者被數學家、科學家及工程師們廣泛採用,此外還有 MuPADMathCad

另有一些系統著眼於特定的應用領域,這些系統通常在學院中被設計、發展及維護,例如交換代數系統 Macaulay 2 或數論系統 PARI/GP。

幾種計算機代數系統

文獻