1

Buchberger 的算法需要计算 S 对(更多信息参见 Cox 等人 2008 年第 3 版的 Ideals, Varities and Algorithm 的第 83 页)

S(f,g)=LCM(LT(f),LT(g))/LT(f) *f - LCM(LT(f),LT(g))/LT(g) * g

其中 LCM 是最小公倍数(相当于书上符号中的 x^\gamma),LT 是前导项。

如何在 Macaulay2 中或以其他方式计算 S 对?

示例:按分级字典顺序排列的 S 对,g1=x^2-y 和 g2=x^3-z,其中 S(g1,g2)=xz-xy。

在此处输入图像描述

4

1 回答 1

1

Macaulay2 的 S 对命令作为定义的函数

在此处输入图像描述

以及文本中的代码以便于复制

Spair = (g1,g2) -> lcm(leadTerm(g1),leadTerm(g2))/leadTerm(g1)*g1-lcm(leadTerm(g1),leadTerm(g2))/leadTerm(g2)*g2;

它可以Spair(polynomial1, polynomial2)计算多项式1和多项式2的S对多项式。

相比之下,Spairs 的替代方法显然可以通过本书 (1) 的定理 9 根据 syzygies 和生成器推导出来

S * G = \sum_{i=1}^t h_i g_i \rightarrow_G 0

其中映射是模 G,S 对在某种程度上与 syzygies 和生成器方面的表达式相关,下面是一些示例。也许 syz 和 gb 对计算 S-pairs 很有用。

就 Gröbner 基和 s​​yzygies 而言,S 对与生成集的关系

  • “现在让我们看看十六个最小生成器中的第一个 syzygies(或最小 S-pairs [1, §2.9])。”Ideals, Varieties and Macaulay 2 , p9)

  • “矩阵对包含 J 的生成器之间的所有 S 对,对应于 M 的最小第一个 syzygies”此处第 195 页)

参考

(1) Cox 等人的理想、变量和算法(2008 年,第 3 版)

于 2016-02-21T13:29:48.200 回答