首发于Liu言杂记
多项式也有CRT么?

多项式也有CRT么?

在“中国剩余定理(CRT )”中有人问及,我就简单写一下。


首先,我不想在这篇文章中着急引入“环”和“域”的概念;也不想严格定义“多项式”——我希望这只是做为一篇入门的科普文章

其次,我们假定讨论的一元多项式的系数都是有理数

事实上,只要多项式的系数取自的集合可以做“加减乘除(不能除以0)”就可以了。
更严谨的说法是,系数取自一个域(field)。

例如: f(x)=2 + 3 x + 3 x^2 + x^3g(x)=2 + 3 x - x^2 + x^3 + x^4 都是有理数系数的多项式。


下面要做一个(不严谨但是方便的)技术处理,就是若存在非零有理数 k 使得 k\times f_1(x)=f_2(x) ,那么就认为多项式 f_1(x)f_2(x) 是不涉及同余式时是“相同的”。

例如 x^2+\frac{1}{3}x+\frac{5}{6}3x^2+x+\frac{5}{2}6x^2+2x+5 都认为是“相同的”多项式。


在整数的世界里有“带余除法”,例如: 15\div2=7\dots115\div3=5\dots015\div(-4)=(-3)\dots3(-15)\div2=(-8)\dots1 等等,这里的“余数”都是大于或等于0、小于除数的绝对值的。

类似地,有理数系数的多项式之间也可以做带余除法,例如:

(2 + 3 x - x^2 + x^3 + x^4) \div (2 + 3 x + 3 x^2 + x^3)=(-2+x)\dots(6+7x+2x^2) ,换言之 (2 + 3 x - x^2 + x^3 + x^4)=(2 + 3 x + 3 x^2 + x^3)\times(-2+x)+(6+7x+2x^2)

(2 + 3 x + 3 x^2 + x^3) \div (6+7x+2x^2)=(-\frac{1}{4}+\frac{1}{2}x)\dots(\frac{7}{2}+\frac{7}{4}x) ,也即 (2 + 3 x + 3 x^2 + x^3) = (6+7x+2x^2)\times(-\frac{1}{4}+\frac{1}{2}x)+(\frac{7}{2}+\frac{7}{4}x)

(6+7x+2x^2) \div (2+x)=(3+2x)\dots0,表明 (6+7x+2x^2) = (2+x)\times(3+2x)

可以表示为: f(x)=q(x)\times g(x)+r(x)

这里的“” 不是一个数了,而是一个多项式 r(x) ,余多项式 r(x) 的要求是:或者为零、或者次数低于除多项式 g(x)


在此基础上,有理数系数的多项式之间也可以定义“整除”、“因式”、“倍式”、“模”和“同余”。

例如由 (6+7x+2x^2) = (2+x)\times(3+2x) ,我们

  • (6+7x+2x^2) 可以被 (2+x) 整除、或称 (2+x) 可以整除 (6+7x+2x^2) ,记作 (2+x)|(6+7x+2x^2)
  • (6+7x+2x^2) (2+x) 的倍式;
  • (2+x)(6+7x+2x^2) 的因式;
  • (6+7x+2x^2) (2+x) 与0同余,记作 (6+7x+2x^2) \equiv 0\pmod {2+x}

而由于 (2 + 3 x - x^2 + x^3 + x^4) \div (2 + 3 x + 3 x^2 + x^3)=(-2+x)\dots(6+7x+2x^2) ,可知 (2 + 3 x - x^2 + x^3 + x^4) 不能被 (2 + 3 x + 3 x^2 + x^3) 整除、 (2 + 3 x - x^2 + x^3 + x^4) (6+7x+2x^2) (2 + 3 x + 3 x^2 + x^3) 同余,记作 (2 + 3 x - x^2 + x^3 + x^4) \equiv(6+7x+2x^2)\pmod{2 + 3 x + 3 x^2 + x^3}


于是呢,类似于“素数”,我们也可以定义“不可约多项式”——在“相同”的意义下,如果多项式的因子只有自身和1,就称之为是一个不可约多项式

例如,在有理数系数的多项式内, 1+x+x^2 就是一个不可约多项式,而 1+2x+x^2=(1+x)(1+x) 则不是。

注意:多项式是否“可约”是跟系数的取决范围相关的!

例如同样是多项式 1+x+x^2 ,在有理数系数的多项式范围内是不可约的;但是在实数系数的多项式世界里面是可约的, (1+x+x^2)=\left( x-\frac{-1+\sqrt{-3}}{2} \right)\left( x -\frac{-1-\sqrt{-3}}{2}\right)


接下来,就可以定义两个有理数系数 f(x),g(x) 的多项式的“最大公因式GCD(f(x),g(x)) 了——所有公因式中次数最高者。

仍然可以采用“欧几里得算法(辗转相除法)”来计算,例如:

(2 + 3 x - x^2 + x^3 + x^4)(2 + 3 x + 3 x^2 + x^3) 最大公因式是 (2+x)

由此也可以定义有理数系数的多项式之间的“互素”。


那么,也就有有理数系数的多项式的裴蜀(Bezout)等式贝祖等式(参看“凑邮资问题”):

对于不全为0的有理数系数的多项式 f(x), g(x)d(x) ,方程 s(x)f(x)+t(x)g(x)=d(x) 存在有理数系数的多项式解 s(x)t(x) 当且仅当GCD(f(x), g(x))|d(x)

例如:

\left( 6 - 5x + 2x^2 \right)\left( 2 + 3 x + 3 x^2 + x^3 \right)+(1-2x)\left( 2 + 3 x - x^2 + x^3 + x^4 \right)=7(2+x)


下面就该讨论“模的逆”了:存在有理数系数的多项式 F(x) 使得 F(x)f(x)\equiv 1\pmod{g(x)} 当且仅当 F(x)g(x) 互素。此时称 F(x)f(x)g(x) 的逆多项式,记作 F(x)=\left[ \left( f(x) \right)^{-1} \right]_{g(x)}

例如 f(x)=(1+x+x^2)g(x)=(1+x-x^2+x^3) 互素,于是存在多项式 F(x)=(6-5x+x^2 ) ,使得 (1 + x + x^2)(6 - 5 x + 2 x^2) + (1 - 2 x)(1 + x - x^2 + x^3)=7 ,即得 (1 + x + x^2)(6 - 5 x + 2 x^2) \equiv1\pmod{(1+x-x^2+x^3)} 。称 F(x)/7=\frac{1}{7}(6-5x+x^2 )f(x)=(1+x+x^2)g(x)=(1+x-x^2+x^3) 的逆多项式。


剩下的事情就和“中国剩余定理(CRT )”中所讲的基本相同了:

假设有理数系数的多项式 m_1(x),m_2(x), ... ,m_n(x) 两两互素,则对于任意的有理数系数的多项式 a_1(x),a_2(x), ... ,a_n(x) ,方程组

\begin{equation} \begin{cases} f(x)\equiv a_1(x)\pmod {m_1(x)}\\ f(x)\equiv a_2(x)\pmod {m_2(x)}\\ \cdots \\ f(x)\equiv a_n(x)\pmod {m_n(x)}\\ \end{cases} \end{equation}

都存在有理数系数的多项式解,且若A(x),B(x) 都满足该方程组,则必有 A(x)\equiv B(x)\pmod {N(x)} ,其中 N(x)=\prod_{i=1}^{n}{m_i(x)}

具体而言, f(x)\equiv\sum_{i=1}^{n}{a_i(x)\times\frac{N(x)}{m_i(x)}\times\left[ \left( \frac{N(x)}{m_i(x)} \right)^{-1} \right]_{m_i(x)}}\pmod {N(x)}

——这就是中国剩余定理(Chinese remainder theorem, CRT)的有理数系数的多项式版本。

例如:

\begin{equation} \begin{cases} f(x)\equiv 1-x\pmod {1+x+x^2}\\ f(x)\equiv 2\pmod {1+x^2}\\ \end{cases} \end{equation}

可得 \left[ \left( 1+x^2 \right)^{-1} \right]_{1+x+x^2}=(1+x)\left[ \left( 1+x+x^2 \right)^{-1} \right]_{1+x^2}=(-x)

于是 f(x)\equiv (1-x)(1+x^2)(1+x)+2(1+x+x^2)(-x)\equiv 1 - 2 x - 2 x^2 - 2 x^3 - x^4 \pmod {(1+x^2)(1+x+x^2)}

发布于 2018-11-07 15:02