显著加快多项式运算速度
几乎任何代数计算最终都会以某种方式涉及多项式。多项式从一开始就是Mathematica 和Wolfram语言中优化的部分。事实上,在超过四分之一个世纪的时间里,我们对它们进行的基本操作几乎不需要更新。但是现在在版本13.2中——由于新的算法和新的数据结构,以及使用现代计算机硬件的新方法——我们正在更新一些核心多项式运算,并使它们大大加快。顺便说一下,我们也得到了一些新的多项式函数。
这是两个多项式的乘积,展开:

像这样的分解多项式几乎是即时的,并且从版本1 开始就一直如此:

但是现在让我们把它做得更大:

展开多项式中有999 项:

分解这不是一个简单的计算,在版本13.1 中大约需要19 秒:

但是现在,在版本13.2 中,同样的计算需要0.3 秒,快了近60 倍:

很少有任何东西能提高60倍。但这是其中一种情况,事实上,对于更大的多项式,该比率将进一步稳步增加。但这仅仅是只与晦涩的大多项式有关的东西吗?嗯,没有。尤其是因为事实证明,大多项式出现在各种重要地方的“引擎盖下”。例如,看似无害的物体

可以作为代数数进行操作,但多项式最小:

除了分解之外,版本13.2还显著提高了多项式结果、GCD、判别式等的效率。所有这些都使得对多项式线性代数的变革性更新成为可能,即对元素为(单变量)多项式的矩阵的操作。
下面是一个多项式矩阵:

这是矩阵的力量:

而这个的决定因素:

在13.1 版中,这看起来并不那么好;结果未展开,如下所示:

在版本13.2 中,大小和速度都得到了显著改进。这是一个更大的案例- 在 13.1中计算需要一个多小时,结果的叶子数量惊人地达到178 亿


多项式线性代数在“幕后”用于许多领域,特别是在处理线性微分方程、差分方程及其符号解时。在13.2版本中,不仅多项式MatrixPower和Det,而且LinearSolve,Inverse,RowReduce,MatrixRank和NullSpace都得到了显着的加速。
除了显著的速度改进之外,版本13.2 还增加了一个多项式功能,我碰巧已经等待了30 多年:有限域上的多元多项式分解:

事实上,查看我们的档案,我发现许多请求至少可以追溯到1990 年——来自相当多的人——要求这种能力,尽管1991 年的内部说明很有魅力地指出:

是的,没错。但是31 年后,在13.2 版中,它完成了!

审核编辑 :李倩
-
Wolfram
+关注
关注
0文章
16浏览量
7867 -
函数
+关注
关注
3文章
4406浏览量
66817 -
数据结构
+关注
关注
3文章
573浏览量
41362
原文标题:Wolfram语言与Mathematica 13.2 版本(4)
文章出处:【微信号:哲想软件,微信公众号:哲想软件】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
C语言和单片机C语言有什么差异
时空壶W4Pro:商务跨语言场景的高效沟通解决方案
求助,关于NanoEdge AI Studio生成的库交叉编译器版本疑问求解
匠芯创发布新版GUI开发工具 新增多国语言设置等功能
【版本控制教程】如何使用Unreal Engine 5 + UE源代码控制(Perforce P4)
新品 | Module LLM Kit,离线大语言模型推理模块套装
【北京迅为】itop-3568 开发板openharmony鸿蒙烧写及测试-第2章OpenHarmony v3.2-Beta4版本测试

Wolfram语言与Mathematica 13.2 版本(4)
评论