计算机代数软件,用于最小化一组多项式中的运算次数

2024-02-06

我有多项式系统,相当简单的多项式表达式,但相当长 优化我的手牌。表达式按集合分组,在给定的集合中,多个变量中有共同的术语。

我想知道是否有一个计算机代数系统,例如 Mathematica、Matlab 或 sympy,可以优化多个具有常用项的多项式,以最大程度地减少运算次数。如果这样的系统能够最大限度地减少中间项的数量以减少寄存器的数量,那就太好了。

如果这样的系统不存在,我将使用 Python 符号代数 Sympy 自己做一个。如果您正在开发此类软件包或有兴趣开发或使用此类软件包,请告诉我。

这是一个虚构的例子

x0 = ((t - q*A)*x + B)*y
y0 = ((t - q*A)*y + B)*z
z0 = ((t - q*A)*z + B)*x

所以你显然可以分解 (t - qA) 项。现在,如果您使用常见术语的各种组合来使术语数量非常大,那么手动完成就变得很困难。我的方程涉及多达 40 个项,集合的大小约为 20 个。希望有帮助

谢谢


Is sympy http://code.google.com/p/sympy/你在找什么?我确实相信它支持多项式,尽管我不知道它是否支持您可能想要的所有功能(不过,调整它以添加您认为它可能缺少的功能必须比从头开始编写自己的功能更容易;-) 。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

计算机代数软件,用于最小化一组多项式中的运算次数 的相关文章

随机推荐