尽管抽象代数附加组件对于Mathematica来说是一个很好的包,但是没有什么能比GAP更好,至少不适用于群论。几年前,当我看着Sage的时候,我发现据说它与Mma有一个接口,但当我仔细观察它时,它变得有点原始(但是可操作)。我知道埃因霍温技术大学(OpenMath)在一个集成/连接主要数学工具的平台上已经完成了工作,我甚至开始研究它。但那项工作迷失了。现在问我的问题:
GAP和Mathematica之间是否存在,是否有人愿意分享GAP和Mathematica之间的界面?
答案 0 :(得分:6)
GAP FAQ似乎对此非常悲观:
8.1:我可以从其他程序调用GAP函数吗?
答案简短。从本质上讲,更充分地解释一下 GAP系统的所有代数功能都写在了 GAP语言等需要GAP解释器才能运行。口译员 是用C语言编写的,但不能与其他代码快乐地共存 同样的过程有很多原因,所以没有明智的方法 将GAP链接到C,Java或其他程序作为子例程库。
但是有一些希望:
您可以做什么是在子进程中运行GAP并与之通信 它使用管道,伪ttys,UNIX FIFO或一些类似的设备。我们 已经在许多项目中成功完成了这项工作,你可以 如果您想去,请联系支持列表以获取更详细的建议 走这条路。
<强>更新强>
常见问题解答现在也是:
最近,一些SAGE开发人员已经生成了libGAP,它允许将整个GAP系统嵌入为C库。一个人仍然不能自己嵌入单独的函数,并且第一次调用libGAP仍然需要调用完整的GAP启动序列。
或者,有许多方法可以将GAP作为服务器进程运行,并从C ++程序中调用它。请参阅GAP方面的SCSCP包。有几个C和C ++库实现了客户端。
答案 1 :(得分:4)