M4GB

M4GB。一种有效的Gröbner基算法。本文介绍了一种计算Grobner基的新算法M4GB。与Faugere算法F4一样,它是Buchberger算法的一个扩展,它描述了:如何存储已经计算(尾部)的基多项式的约化倍数,以防止在约化步骤中的冗余工作;以及如何利用有效的线性代数进行约简。与F4相比,它消除了可约单项式处理中的进一步冗余工作。此外,我们的算法没有将多个关键对的约简转化为某个大矩阵的行约简,而是更加自然地描述了该算法,并且在逐个处理关键对时是有效的。这一特性意味着通常M4GB处理的关键对比F4少,并且减少了与F4观察到的一系列问题的规则性程度有关的时间和数据复杂性“阶梯”。为了实现高效率,M4GB专门设计成只对尾约化多项式进行运算,即除前导项外的所有项都不可约的多项式。这使得它可以在计算项多项式乘法时直接执行完全归约,其中所有的计算都是在不可约单项式上的系数向量上完成的。我们已经实现了一个新算法的版本,为稠密超定义多项式系统量身打造,作为概念证明,并公开了我们的源代码。我们将我们的实现与FGBlib、Magma和OpenF4在各种密集的Fukuoka MQ挑战问题上的实现进行了比较,我们能够在合理的时间和内存内计算这些问题。我们观察到M4GB在所有这些实现中使用最少的CPU时间和最少的内存来解决这些MQ问题,这通常是一个重要因素。在福冈MQ挑战赛中,V型和VI型的初始挑战有16个方程,这些方程是根据使用Magma进行的一个多月的外推计算运行时间选择的。M4GB让我们为这些Fukuoka MQ挑战创造了新的记录,打破了V型((mathbb{F}{2^8}))多达18个方程和类型VI((mathbb{F}{31}))多达19个方程,每一个都可以在我们的双Xeon系统上在11天内计算出来。