计算机代数系统
计算机代数系统(英语:computer algebra system,缩写作:CAS)是进行符号运算的软件。这种系统的要件是数学表示式的符号运算。
表示式的类别
编辑表示式的例子包括:
符号运算
编辑以下是几种典型的符号运算:
其它功能
编辑通常计算机代数系统还能进行一些数值运算:
- 函数的确切求值。
- 高精度求值,例如计算 到小数点后 位。
- 线性代数的数值运算。
- 描绘二维或三维的函数图形。
在数值运算方面,计算机代数系统的速度通常较Matlab、GNU Octave或C语言中以同等方式实现的程序慢。这是因为计算机系统几乎总是对符号表示式运算,故不能充分利用CPU的既有指令。
许多计算机代数系统内置高级编程语言,以供用户扩展,或设置个人的操作模式。
历史
编辑马丁纽斯·韦尔特曼(Martinus J. G. Veltman) 是这个领域的先驱,他首先考虑了在高能物理中的应用。他在1963年设计的第一个程序叫Schoonship(荷兰文,意指“干净的船”)。
最早受到欢迎的系统是Reduce、Derive与Macsyma,现在仍然可获取。Macsyma的一个GNU通用公共许可证发行的版本叫作Maxima,现在仍有维护。市场的龙头为Maple与Mathematica,两者被数学家、科学家及工程师们广泛采用,此外还有MuPAD与MathCad。
另有一些系统着眼于特定的应用领域,这些系统通常在学院中被设计、发展及维护,例如交换代数系统Macaulay 2或数论系统PARI/GP。
当前流行计算机代数系统
编辑参考文献
编辑引用
编辑来源
编辑- Richard J. Fateman. Essays in algebraic simplification. Technical report MIT-LCS-TR-095, 1972.
外部链接
编辑下面是一些在线可用的计算机代数系统的列表:
- https://web.archive.org/web/20110718004430/http://directory.google.com/Top/Science/Math/Algebra/Software/
- http://www.cs.ru.nl/~freek/digimath/xindex.html (页面存档备份,存于互联网档案馆)
- 开放目录项目中的“Math Software”
- http://www.mat.univie.ac.at/~slc/divers/software.html (页面存档备份,存于互联网档案馆)
- Use Maxima in a web browser (页面存档备份,存于互联网档案馆) without downloading any software
- http://orms.mfo.de/about (页面存档备份,存于互联网档案馆)
- Rosetta Translations: a collection of synonyms for various operations in the computer algebra systems (页面存档备份,存于互联网档案馆)