中多元线性方程组_Gr?bner basis与多元多项式方程组

本文介绍了Gröbner基的概念,作为高斯消元法和辗转相除法的推广,用于解决多元多项式方程组。通过定义理想和偏序,阐述了如何构造Gröbner基,并给出了多个示例展示其在解方程组中的应用。Gröbner基与代数簇、代数基本定理和方程解的维度密切相关,对于理解和求解复杂方程组具有重要意义。

整理资料的时候发现一年前交换代数课上最后的期末报告,感觉还是一个很有意思的话题。于是整理于此,与大家分享讨论下。

文章结构如下:

  1. 介绍引入Gröbner basis的动机:高斯消元法的推广,辗转相除法的推广,多元多项式方程组的求解。
  2. Gröbner basis的定义,一些例子
  3. 与多元多项式方程组一些基本定理和应用,包括代数基本定理的推广,多元多项式方程组的求解。

介绍

考虑以下几个算法:

1、求两个一元多项式的最大公约数的Euclid's algorithm

2、求解线性方程组的Gaussian elimination

3、整数线性规划

这些算法都有一个共同的特征,输入一些多项式

,输出一些满足某些特征的多项式
。比如在求最大公约数的算法中,输入时两个多项式
,输出是他们的最大公约数。在求线性方程组中,输入是多元一次多项式

输出的基础解系也是一些多元一次多项式

于是我们会想是否可以从中抽象处一些特征,将其推广到更广的领域。比如多元多项式方程组。这个推广的结果就是Gröbner basis。

定义

理想:

是一个多项式集合,其生成的理想为集合元素的线性组合,组合系数也是多项式
其中
是在域K上的多项式环。

偏序:我们需要一个对单项式

之间的排列的规则。为了简单起见,我们采用字典序,即
大的单项式大,如果一样则比较
。于是我们有
,

有了单项式的排列规则后,我们可以把多项式按照其组成的单项式从大到小排列。比如

这样排列下的首项被称为leading term, 记为 lt(p)。

首项的单项式leading monomial记为 lm(p),

首项的系数 leading coefficient记为 lc(p)。

在上面的多项式中

有了这些记号后,我们就可以实施多元Euclid's algorithm。给定两个多项式

,如果f的某个单项式是g的首项的单项式的倍数,那么我们就可以通过相减把这项从f中消掉。对于一元多项式来说,只要f的次数大于g的次数,我们一定可以进行这样的操作。然后消除后剩下的部分就是f除以g的余数。比如

那么

很自然我们可以考虑f“除以”多个g的情况,假设I是一个多项式的集合,那么f除以

的结果是
,其中
。我们可以把里面的h看作多元除法的余数。

接下来一个问题是,为了简化这个取余数的计算,我们想是否能找到一个更加简单的多项式集合G来代替

进行计算同时能达到和
一样的效果。其中最简洁的G就是
Gröbner basisG是包含
的最小理想的生成集,且G对这个最小理想里面每一个元素做多元除法,结果均为0。

例子1:一元多项式集合的Gröbner basis就是其最大公约数。

例子2:考虑多项式集合

,其Gröbner basis可以通过以下的Mathematica命令得到
In[1]:= GroebnerBasis[{x^2 - y, x ^3 - x}, {x, y}]
Out[1]= {-y + y^2, -x + x y, x^2 - y}

接下来我们将会看到Gröbner basis包含了我们需要的所有信息,而且我们可以轻松地利用Gröbner basis集合中多项式个数对方程解的情况进行判断。

定理及应用

多元多项式方程组(代数簇/Algebraic variety)

记F是多项式集合,f是其中的元素,f=0构成了多元多项式方程组,其解为

。如G是F的Gröbner basis,我们有

Hilbert's Nullstellensatz

多元多项式方程组无解,即

当且仅当

例子3:比如方程

无解,因为其Gröbner basis仅包含1。
In[3]:= GroebnerBasis[{x^2 + x*y - 10, x ^3 + x^2*y - 25, 
  x^4 + x*y^3 - 70}, {x, y}]

Out[3]= {1}

而方程

有Gröbner basis为

,所以解为
。这个例子中,Gröbner basis将一个复杂的非线性方程化简为了一次线性方程组。
In[19]:= GroebnerBasis[{x^2 + x*y - 10, x ^3 + x^2*y - 20, 
  x^4 + x*y^3 - 70}, {x, y}]

Out[19]= {-3 + y, -2 + x}

standard monomial为不在首项生成的理想里面的单项式。

例子4:比如由

生成的理想
里面的元素为
,其中f是多项式。于是
不在这个理想里面。他们被称为standard monomial。

代数基本定理:

多元多项式方程组解的个数

等于standard monomial的个数。

例子5考虑一元多项式方程。如果方程的次数为n,那么standard monomial就是从1到

,一共n个,于是n次方程有n个解。

例子6对于线性方程组来说,standard monomial就是零空间对应的变量。比如

, standard monomial是y,同时注意到方程的解是

显然,对于复杂的方程来说,找standard monomial是困难的。我们可以求出其Gröbner basis然后再找Gröbner basis的standard monomial。

例子7

方程

的Gröbner basis为

In[21]:= GroebnerBasis[{x^2 z - y, x^2 + x *y - y*z, 
  x*z^2 + x*z - x}, {x, y}]

Out[21]= {-y + y z + y z^2, y^2 - y z, -x + x z + x z^2, y + x y, 
 x^2 - y - y z}

可以看到z的任何次方都不在Gröbner basis中各个多项式首项

产生的理想中。所以该方程有无穷个解。

解的维度

从几何角度看,我们可以把多元多项式方程组的解看作空间中几个曲面的交线。有些时候交线集合是一个点,有时是一个曲线,有时是一个曲面。如果是一个点情况,我们称解集是0维的,如果是曲线,那么就是1维,依此类推。

然后我们有结论,解集的维度和没有出现在standard monomial集合中变量的数量相等。比如上面这个例子6中变量x不在standard monomial集合中,所以解集是1维的(一条线)。

最后

Gröbner basis在图论和整数规划中也有很多的应用,但在这里就不展开介绍了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值