论拓展中国剩余定理

版权声明:文章纯属版主手敲,请同学们尊重版主的知识产权。 https://blog.csdn.net/GGN_2015/article/details/79143275

Expended Chinese remainder theorem

中国剩余定理:

i{1,2,..n}pi是质数,有:

xa1modp1

xa2modp2

xanmodpn

等价于

xa1M1M11+a2M2M12+...+anMnM1nmodM

其中:

M=p1p2...pn

Mi=M/pi

M1iMi0modpi

在此不对中国剩余定理进行证明,因为证明很显然。

拓展中国剩余定理:

对于任意的整数p1p2,有:

xa1modp1

xa2modp2

在有解的情况下等价于:

xa1+p1a2a1dInv(p1d,p2d)modp1p2d

其中:

d=gcd(p1,p2)

Inv(a,b)表示在模b意义下a的逆元。

证明这个定理:

xa1modp1等价于x=a1+p1k1(口头上可以这样说:x能表示成 a1k1p1的形式。)

xa2modp2等价于x=a2+p2k2(口头上可以这样说:x能表示成 a2k2p2的形式。)

(上式中的k1,k2均为整数)

那么我们就有对于所有可行的k1,k2,满足:a1+p1k1=a2+p2k2

变化一下形式:p1k1=(a2a1)+p2k2

gcd(p1,p2)=d,说明d|(a2a1)。(p1k1p2k2=(a2a1),所以(a2a1)一定是d的倍数。)

这个时候,如果d(a2a1)说明该方程组无解,否则有解。

把d这个因此除掉:p1dk1a2a1d+p2dk2

这个式子还能说明:p1dk1a2a1dmodp2d

两边同时乘以(p1d)1:

k1a2a1d(p1d)1modp2d

k1=a2a1dInv(p1d,p2d)+tp2d,现在我们可以把k1带回原式了。

x=a1+(a2a1dInv(p1d,p2d)+tp2d)p1=a1+p1a2a1dInv(p1d,p2d)+p1p2dt

所以:

x=a1+p1a2a1dInv(p1d,p2d)modp1p2d

得证。

主要思想:

证明的正确性仍然是依照中国剩余定理,证明的思路就是把参数k1用含有常数的模方程表示出来,然后再带回原式。

阅读更多

没有更多推荐了,返回首页