我在 Windows 10 上运行 SageMath 8.9。我想运行以下代码:
gap.eval('LoadPackage("grape")')
gap.eval("n := 5")
gap.eval("grp := Group([ (1,2,3,4,5), (1,2,4,3) ])")
gap.eval("Der := []; for x in grp do if NrMovedPoints(x)=n then AddSet(Der,x); fi; od;")
gap.eval("Cay := CayleyGraph(grp, Der)")
这会引发 RuntimeError。当我运行时:
from sage.features.gap import GapPackage
GapPackage("grape", spkg="gap_packages").is_present()
它表示“葡萄”不可用。所以我想安装它;但是,通过一些在线搜索,我遇到了以下命令:
sage -i gap_packages
但这不起作用,因为 'sage' 没有添加到 PATH 中(而且我不知道该怎么做)。
现在我独立于 Sage 安装了 GAP 4.10.2,它确实安装了“葡萄”。如果我无法将grape安装到sage中,我该如何指导Sage查看另一个安装的GAP?我试过这个(从这里):
import sage.interfaces.gap
sage.interfaces.gap.gap_cmd = "/usr/local/bin/gap"
我将“/usr/local/bin/gap”更改为“C:/gap-4.10.2/bin/gap.bat”,这是我通常启动 GAP 的方式。那没起效。
注意:我已经阅读了这里的解决方案,但它对我不起作用(如上所述)。该用户似乎一直在运行 OSX,而我正在运行 Windows 10。此外,这个问题已经有 7 年历史了,也许该方法已经过时了。其他在线方法(例如在此处找到)似乎已过时。我找不到任何最近的东西(关于 Windows 上的 Sage 版本 8.9)。
对此的任何帮助将不胜感激!