计算机代数系统(英语:computer algebra system,缩写作:CAS)是进行符号运算的软件。这种系统的要件是数学表示式的符号运算。
表示式的例子包括:
以下是几种典型的符号运算:
通常计算机代数系统还能进行一些数值运算:
在数值运算方面,计算机代数系统的速度通常较Matlab、GNU Octave或C语言中以同等方式实现的程序慢。这是因为计算机系统几乎总是对符号表示式运算,故不能充分利用CPU的既有指令。
许多计算机代数系统内置高级编程语言,以供用户扩展,或设置个人的操作模式。
马丁纽斯·韦尔特曼(Martinus J. G. Veltman) 是这个领域的先驱,他首先考虑了在高能物理中的应用。他在1963年设计的第一个程序叫(荷兰文,意指“干净的船”)。
最早受到欢迎的系统是Reduce、Derive与Macsyma,现在仍然可获取。Macsyma的一个GNU通用公共许可证发行的版本叫作Maxima,现在仍有维护。市场的龙头为Maple与Mathematica,两者被数学家、科学家及工程师们广泛采用,此外还有MuPAD与MathCad。
另有一些系统着眼于特定的应用领域,这些系统通常在学院中被设计、发展及维护,例如交换代数系统Macaulay 2或数论系统PARI/GP。
下面是一些在线可用的计算机代数系统的列表: