如果能把一个实系数多项式
表示成一些实系数多项式的平方和,那显然
一定是半正定或正定的多项式。但是反过来如果已知实系数多项式
是正定的或半正定的,却不一定能将他表示成一些实系数多项式的平方和。一个著名的反例可见 [1]。在什么条件下能将一个正定的或半正定的实系数多项式
表示成一些实系数多项式的平方和以及如何实现这种表示就是著名的Hilbert第17问题。有关文献可见 [1] [2] [3] [4]。
对
,已经知道有一个更强的结果如下:
定理0:一个实系数的一元非负多项式必可表为两个一元实系数多项式的平方和,见 [1] [5] [6],但是以上定理的证明是存在性的,需要用到方程式的根,因此只能得出近似的表达式。对于一元和多元的非负多项式,也已经有人给出了将其表为多项式平方和的算法和程序,见 [7] [8] [9],但是一般都比较繁,适用于计算机计算。作者在 [10] 中曾对四次非负多项式给出了一个利用多项式系数的判据,本文则给出了一个把六次正定多项式表为平方和的不依赖于上述文献中算法和程序的独立算法,利用此算法也可证明一个六次多项式的正定性。
定理1 (算法1):
设
是一个多项式,又设
是两个有理数
,
,
,
,
如果
,
,则
是有理系数多项式的平方和。
证明:设可把多项式
表示成下面形式的平方和
则对照两边的系数可得
(1)
(2)
(3)
(4)
(5)
(6)
设
是两个有理数,我们用下面的程序逐步算出
,令
(7)
则从(2)式可以解出q,
(8)
再从(3)式可以解出r,
(9)
再从(5)式解出
(10)
这时如果
(11)
(12)
则
便被表示成了有理系数多项式的平方和。
注1:我们可首先求出
的近似根,
,其中
分别是
的共轭复根,那么
便可把
近似地表示成
的形式,因此我们然后可取
,
的精确度充分高的有理近似值作为
。但有时会可能取的
近似值精度已经非常高了(例如在例1中,你取到小数点后40位),条件(11)、(12)仍不能满足,这时就要考虑使用定理2。
注2:本定理的意义在于注1中的平方和表达式是近似的,而利用本定理得出的平方和表达式是精确的,因此是一种理论上可实现的严格证明六次多项式正定性的算法。
例1:考虑多项式
显然
是正定的。且有
取
,
.
那么,可以逐步算出
,
,
因此根据定理1,我们便有
由此顺便得出
分解成平方和的方式不是唯一的(这里指本质上不是唯一的,而不是像
这样平凡的方式。)。
注3:本例中的
的近似值并不是用注1中的方法得出的,而是根据作者的实验找到的,如果按照注1中的方法,即使把
的近似值的精度取到小数点后40位,条件(11)、(12)仍不能满足。
在上面的例子中
的精度都取得相当高,这是因为如果误差
稍微大一点,就会使条件(11),(12)无法满足,下面我们给出一个改进的方法,可以允许
的误差稍微大一点。
定理2 (算法2):设
是一个适当小的正数,对
首先考虑多项式
然后对多项式
应用定理1,算出
,如果
则
是一些系数为有理数的多项式的平方和。
证明与定理1类似。
例2:考虑多项式
取
,先考虑多项式
对它有
因此我们可取
,
,
然后逐步算出
因此根据定理2就有
是有理系数多项式的平方和。
在这个例子中,对
的精度要求只需要四位小数(从第五位小数四舍五入得出)。
注4:本文的方法不适用于系数中含有参数的多项式,也不适用于可以取到0值的非负多项式。本文作者在 [11] 中研究了一个这类多项式,给出了它的非负条件
其中
。
作者得出了下面的公式
其中
因此当
时
是非负的,其当且仅当
时,
有三个不同的二重根。