Magma是一款由悉尼大学数学与统计学系计算代数学小组开发的功能强大的代数计算程序包,该软件专门解决代数系统中的数论、代数几何和代数组合学的计算问题。
软件简介
它提供了用户自定义或直接利用诸如群,环,域,模块,代数,计划,曲线,图表,设计,编码和其他许多代数系统进行计算的一个数学环境。Magma的内核实现了代数系统五大分支结构的定义和相关操作,即群论,环论,域论,模论和代数理论,这也是其计算功能非常强大的原因所在。当然,也有很多人将Magma软件中提供的编程语言称为Magma。Magma软件是一款收费软件,主要分为Institution Version(机构版)和Student Version(学生版),目前最新版本为V2.28-3。
软件特点
下面是Magma软件的一些主要特色:
1、明确的定义:用户在计算的过程中需要明确的定义所使用的代数系统,因为后续的所有计算对象都是基于这些已定义系统的。
2、高度的集成:在Magma软件中的每个代数系统都采用了相似的类
构造函数,这种统一的定义方式使得Magma软件能综合利用各种各样的代数系统,并利用它们进行各种运算。
3、关系:这是Magma软件提供的一种特殊机制,用它来管理系统生成的各种代数结构之间的“关系”。
4、丰富的资料:Magma提供了非常丰富的示例和相关算法,它里面包含了如对P^n+(-)1的因式分解,P是一个素数,模方程,强正则图,极大子群的单群,积分格,K3的表面等许多常用的代数问题及代码。
5、优异的性能:Magma在算法和实现上都有非常优异的表现,它对很多计算从硬件上进行了 优化。
软件使用
Magma软件采用命令行的形式,在安装好之后,你可以直接输入Magma来运行软件。
Magma软件要求在每行命令结束的时候输入‘;’然后回车来表示该命令已输入完毕,可以进行计算。当运算结束或软件等待输入时,它会在每行的左侧显示如下提示符:
>
例如,当计算4+2时,你可以在提示符后输入‘print 4+2;’,然后回车,由于Magma是一种交互式语言,它就会立即进行计算,你的屏幕便会显示:
>print 4+2;
6
(切记:Magma语言的每行以‘;’为结束标志,绝不可漏写)
其实,像上面的这种计算,print也可以不写,你直接输入
>4+2;
6
Magma同样会计算出正确结果。
另外,Magma软件提供了丰富的参考文档和在线帮助(见参考资料),使用Magma需要有扎实的数学基础,特别是代数学,只有这样,才能真正发挥Magma的威力。